diff --git a/hack/versions b/hack/versions index 20de8e11b..eba720f4a 100644 --- a/hack/versions +++ b/hack/versions @@ -2,4 +2,4 @@ RUNC_VERSION=e775f0fba3ea329b8b766451c892c41a3d49594d CNI_VERSION=v0.4.0 CONTAINERD_VERSION=938810e706bbcdbcb937ce63ba3e7c9ca329af64 CRITEST_VERSION=74bbd4e142f752f13c648d9dde23defed3e472a2 -KUBERNETES_VERSION=d779e9c9561b732adf06263c5424889e7564fdbd +KUBERNETES_VERSION=493ee8b28560c118cebd2165ba9ef0959cfa2bc3 diff --git a/vendor.conf b/vendor.conf index ad24750bb..10e87bddf 100644 --- a/vendor.conf +++ b/vendor.conf @@ -1,8 +1,6 @@ github.com/blang/semver v3.1.0 github.com/boltdb/bolt v1.3.0-58-ge9cf4fa github.com/containerd/containerd f79981c2dfe35c3bfcbdd2de9b682e8c3de904b2 -github.com/containerd/continuity 86cec1535a968310e7532819f699ff2830ed7463 -github.com/containerd/errdefs 546f045128093f82e92beadd08fa7fb4aa6cc4e0 github.com/containerd/fifo fbfb6a11ec671efbe94ad1c12c2e98773f19e1e6 github.com/containernetworking/cni v0.4.0 github.com/davecgh/go-spew v1.1.0 @@ -15,7 +13,6 @@ github.com/fsnotify/fsnotify 7d7316ed6e1ed2de075aab8dfc76de5d158d66e1 github.com/ghodss/yaml 73d445a93680fa1a78ae23a5839bad48f32ba1ee github.com/gogo/protobuf d2e1ade2d719b78fe5b061b4c18a9f7111b5bdc8 github.com/golang/glog 44145f04b68cf362d9c4df2182967c2275eaefed -github.com/golang/mock bd3c8e81be01eef76d4b503f5e687d2d1354d2d9 github.com/golang/protobuf 5a0f697c9ed9d68fef0116532c6e05cfeae00e55 github.com/google/gofuzz 44d81051d367757e1c7c6a5a86423ece9afcf63c github.com/go-openapi/jsonpointer 46af16f9f7b149af66e5d1bd010e3574dc06de98 @@ -49,7 +46,9 @@ google.golang.org/genproto d80a6e20e776b0b17a324d0ba1ab50a39c8e8944 google.golang.org/grpc v1.3.0 gopkg.in/inf.v0 3887ee99ecf07df5b447e9b00d9c0b2adaa9f3e4 gopkg.in/yaml.v2 53feefa2559fb8dfa8d81baad31be332c97d6c77 -k8s.io/apimachinery 47e2f36401b7a66b6d003f3df4b58f6769ccc34b -k8s.io/apiserver 9ae8a89e835edc63f714d0aadaa2101e74d1498d -k8s.io/client-go b131aa47b5c01ae1c6edf8445bc9d125f1f2d38f -k8s.io/kubernetes d779e9c9561b732adf06263c5424889e7564fdbd +k8s.io/api c0bcfdc3597be1a899c9f0b4e3d1b2e023b5148f +k8s.io/apimachinery dc1f89aff9a7509782bde3b68824c8043a3e58cc +k8s.io/apiserver 149fc2228647cea28b0670c240ec582e985e8eda +k8s.io/client-go 2103a0e46b61d837aca715a6da810783527a4974 +k8s.io/kubernetes 493ee8b28560c118cebd2165ba9ef0959cfa2bc3 +k8s.io/utils 1f5ba483856f60b34bb29864d4129a8065d1c83b diff --git a/vendor/k8s.io/api/LICENSE b/vendor/k8s.io/api/LICENSE new file mode 100644 index 000000000..d64569567 --- /dev/null +++ b/vendor/k8s.io/api/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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. diff --git a/vendor/k8s.io/api/README.md b/vendor/k8s.io/api/README.md new file mode 100644 index 000000000..967543a45 --- /dev/null +++ b/vendor/k8s.io/api/README.md @@ -0,0 +1 @@ +This repo is still in the experimental stage. Shortly it will contain the schema of the API that are served by the Kubernetes apiserver. diff --git a/vendor/k8s.io/client-go/pkg/api/v1/annotation_key_constants.go b/vendor/k8s.io/api/core/v1/annotation_key_constants.go similarity index 95% rename from vendor/k8s.io/client-go/pkg/api/v1/annotation_key_constants.go rename to vendor/k8s.io/api/core/v1/annotation_key_constants.go index bb4588554..6af9c6c2b 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/annotation_key_constants.go +++ b/vendor/k8s.io/api/core/v1/annotation_key_constants.go @@ -72,11 +72,6 @@ const ( // This annotation can be attached to node. ObjectTTLAnnotationKey string = "node.alpha.kubernetes.io/ttl" - // AffinityAnnotationKey represents the key of affinity data (json serialized) - // in the Annotations of a Pod. - // TODO: remove when alpha support for affinity is removed - AffinityAnnotationKey string = "scheduler.alpha.kubernetes.io/affinity" - // annotation key prefix used to identify non-convertible json paths. NonConvertibleAnnotationPrefix = "non-convertible.kubernetes.io" diff --git a/vendor/k8s.io/client-go/pkg/util/umask.go b/vendor/k8s.io/api/core/v1/doc.go similarity index 73% rename from vendor/k8s.io/client-go/pkg/util/umask.go rename to vendor/k8s.io/api/core/v1/doc.go index 35ccce50b..a31af9ea4 100644 --- a/vendor/k8s.io/client-go/pkg/util/umask.go +++ b/vendor/k8s.io/api/core/v1/doc.go @@ -1,7 +1,5 @@ -// +build !windows - /* -Copyright 2014 The Kubernetes Authors. +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. @@ -16,12 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ -package util +// +k8s:openapi-gen=true +// +k8s:deepcopy-gen=package,register -import ( - "syscall" -) - -func Umask(mask int) (old int, err error) { - return syscall.Umask(mask), nil -} +// Package v1 is the v1 version of the core API. +package v1 // import "k8s.io/api/core/v1" diff --git a/vendor/k8s.io/client-go/pkg/api/v1/generated.pb.go b/vendor/k8s.io/api/core/v1/generated.pb.go similarity index 92% rename from vendor/k8s.io/client-go/pkg/api/v1/generated.pb.go rename to vendor/k8s.io/api/core/v1/generated.pb.go index 13804ea9b..acbc4c2cc 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/generated.pb.go +++ b/vendor/k8s.io/api/core/v1/generated.pb.go @@ -15,14 +15,14 @@ limitations under the License. */ // Code generated by protoc-gen-gogo. -// source: k8s.io/kubernetes/pkg/api/v1/generated.proto +// source: k8s.io/kubernetes/vendor/k8s.io/api/core/v1/generated.proto // DO NOT EDIT! /* Package v1 is a generated protocol buffer package. It is generated from these files: - k8s.io/kubernetes/pkg/api/v1/generated.proto + k8s.io/kubernetes/vendor/k8s.io/api/core/v1/generated.proto It has these top-level messages: AWSElasticBlockStoreVolumeSource @@ -950,177 +950,177 @@ func (*WeightedPodAffinityTerm) Descriptor() ([]byte, []int) { } func init() { - proto.RegisterType((*AWSElasticBlockStoreVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.AWSElasticBlockStoreVolumeSource") - proto.RegisterType((*Affinity)(nil), "k8s.io.client-go.pkg.api.v1.Affinity") - proto.RegisterType((*AttachedVolume)(nil), "k8s.io.client-go.pkg.api.v1.AttachedVolume") - proto.RegisterType((*AvoidPods)(nil), "k8s.io.client-go.pkg.api.v1.AvoidPods") - proto.RegisterType((*AzureDiskVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.AzureDiskVolumeSource") - proto.RegisterType((*AzureFileVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.AzureFileVolumeSource") - proto.RegisterType((*Binding)(nil), "k8s.io.client-go.pkg.api.v1.Binding") - proto.RegisterType((*Capabilities)(nil), "k8s.io.client-go.pkg.api.v1.Capabilities") - proto.RegisterType((*CephFSVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.CephFSVolumeSource") - proto.RegisterType((*CinderVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.CinderVolumeSource") - proto.RegisterType((*ComponentCondition)(nil), "k8s.io.client-go.pkg.api.v1.ComponentCondition") - proto.RegisterType((*ComponentStatus)(nil), "k8s.io.client-go.pkg.api.v1.ComponentStatus") - proto.RegisterType((*ComponentStatusList)(nil), "k8s.io.client-go.pkg.api.v1.ComponentStatusList") - proto.RegisterType((*ConfigMap)(nil), "k8s.io.client-go.pkg.api.v1.ConfigMap") - proto.RegisterType((*ConfigMapEnvSource)(nil), "k8s.io.client-go.pkg.api.v1.ConfigMapEnvSource") - proto.RegisterType((*ConfigMapKeySelector)(nil), "k8s.io.client-go.pkg.api.v1.ConfigMapKeySelector") - proto.RegisterType((*ConfigMapList)(nil), "k8s.io.client-go.pkg.api.v1.ConfigMapList") - proto.RegisterType((*ConfigMapProjection)(nil), "k8s.io.client-go.pkg.api.v1.ConfigMapProjection") - proto.RegisterType((*ConfigMapVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.ConfigMapVolumeSource") - proto.RegisterType((*Container)(nil), "k8s.io.client-go.pkg.api.v1.Container") - proto.RegisterType((*ContainerImage)(nil), "k8s.io.client-go.pkg.api.v1.ContainerImage") - proto.RegisterType((*ContainerPort)(nil), "k8s.io.client-go.pkg.api.v1.ContainerPort") - proto.RegisterType((*ContainerState)(nil), "k8s.io.client-go.pkg.api.v1.ContainerState") - proto.RegisterType((*ContainerStateRunning)(nil), "k8s.io.client-go.pkg.api.v1.ContainerStateRunning") - proto.RegisterType((*ContainerStateTerminated)(nil), "k8s.io.client-go.pkg.api.v1.ContainerStateTerminated") - proto.RegisterType((*ContainerStateWaiting)(nil), "k8s.io.client-go.pkg.api.v1.ContainerStateWaiting") - proto.RegisterType((*ContainerStatus)(nil), "k8s.io.client-go.pkg.api.v1.ContainerStatus") - proto.RegisterType((*DaemonEndpoint)(nil), "k8s.io.client-go.pkg.api.v1.DaemonEndpoint") - proto.RegisterType((*DeleteOptions)(nil), "k8s.io.client-go.pkg.api.v1.DeleteOptions") - proto.RegisterType((*DownwardAPIProjection)(nil), "k8s.io.client-go.pkg.api.v1.DownwardAPIProjection") - proto.RegisterType((*DownwardAPIVolumeFile)(nil), "k8s.io.client-go.pkg.api.v1.DownwardAPIVolumeFile") - proto.RegisterType((*DownwardAPIVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.DownwardAPIVolumeSource") - proto.RegisterType((*EmptyDirVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.EmptyDirVolumeSource") - proto.RegisterType((*EndpointAddress)(nil), "k8s.io.client-go.pkg.api.v1.EndpointAddress") - proto.RegisterType((*EndpointPort)(nil), "k8s.io.client-go.pkg.api.v1.EndpointPort") - proto.RegisterType((*EndpointSubset)(nil), "k8s.io.client-go.pkg.api.v1.EndpointSubset") - proto.RegisterType((*Endpoints)(nil), "k8s.io.client-go.pkg.api.v1.Endpoints") - proto.RegisterType((*EndpointsList)(nil), "k8s.io.client-go.pkg.api.v1.EndpointsList") - proto.RegisterType((*EnvFromSource)(nil), "k8s.io.client-go.pkg.api.v1.EnvFromSource") - proto.RegisterType((*EnvVar)(nil), "k8s.io.client-go.pkg.api.v1.EnvVar") - proto.RegisterType((*EnvVarSource)(nil), "k8s.io.client-go.pkg.api.v1.EnvVarSource") - proto.RegisterType((*Event)(nil), "k8s.io.client-go.pkg.api.v1.Event") - proto.RegisterType((*EventList)(nil), "k8s.io.client-go.pkg.api.v1.EventList") - proto.RegisterType((*EventSource)(nil), "k8s.io.client-go.pkg.api.v1.EventSource") - proto.RegisterType((*ExecAction)(nil), "k8s.io.client-go.pkg.api.v1.ExecAction") - proto.RegisterType((*FCVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.FCVolumeSource") - proto.RegisterType((*FlexVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.FlexVolumeSource") - proto.RegisterType((*FlockerVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.FlockerVolumeSource") - proto.RegisterType((*GCEPersistentDiskVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.GCEPersistentDiskVolumeSource") - proto.RegisterType((*GitRepoVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.GitRepoVolumeSource") - proto.RegisterType((*GlusterfsVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.GlusterfsVolumeSource") - proto.RegisterType((*HTTPGetAction)(nil), "k8s.io.client-go.pkg.api.v1.HTTPGetAction") - proto.RegisterType((*HTTPHeader)(nil), "k8s.io.client-go.pkg.api.v1.HTTPHeader") - proto.RegisterType((*Handler)(nil), "k8s.io.client-go.pkg.api.v1.Handler") - proto.RegisterType((*HostAlias)(nil), "k8s.io.client-go.pkg.api.v1.HostAlias") - proto.RegisterType((*HostPathVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.HostPathVolumeSource") - proto.RegisterType((*ISCSIVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.ISCSIVolumeSource") - proto.RegisterType((*KeyToPath)(nil), "k8s.io.client-go.pkg.api.v1.KeyToPath") - proto.RegisterType((*Lifecycle)(nil), "k8s.io.client-go.pkg.api.v1.Lifecycle") - proto.RegisterType((*LimitRange)(nil), "k8s.io.client-go.pkg.api.v1.LimitRange") - proto.RegisterType((*LimitRangeItem)(nil), "k8s.io.client-go.pkg.api.v1.LimitRangeItem") - proto.RegisterType((*LimitRangeList)(nil), "k8s.io.client-go.pkg.api.v1.LimitRangeList") - proto.RegisterType((*LimitRangeSpec)(nil), "k8s.io.client-go.pkg.api.v1.LimitRangeSpec") - proto.RegisterType((*List)(nil), "k8s.io.client-go.pkg.api.v1.List") - proto.RegisterType((*ListOptions)(nil), "k8s.io.client-go.pkg.api.v1.ListOptions") - 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") - proto.RegisterType((*NamespaceSpec)(nil), "k8s.io.client-go.pkg.api.v1.NamespaceSpec") - proto.RegisterType((*NamespaceStatus)(nil), "k8s.io.client-go.pkg.api.v1.NamespaceStatus") - proto.RegisterType((*Node)(nil), "k8s.io.client-go.pkg.api.v1.Node") - proto.RegisterType((*NodeAddress)(nil), "k8s.io.client-go.pkg.api.v1.NodeAddress") - proto.RegisterType((*NodeAffinity)(nil), "k8s.io.client-go.pkg.api.v1.NodeAffinity") - proto.RegisterType((*NodeCondition)(nil), "k8s.io.client-go.pkg.api.v1.NodeCondition") - proto.RegisterType((*NodeDaemonEndpoints)(nil), "k8s.io.client-go.pkg.api.v1.NodeDaemonEndpoints") - proto.RegisterType((*NodeList)(nil), "k8s.io.client-go.pkg.api.v1.NodeList") - proto.RegisterType((*NodeProxyOptions)(nil), "k8s.io.client-go.pkg.api.v1.NodeProxyOptions") - proto.RegisterType((*NodeResources)(nil), "k8s.io.client-go.pkg.api.v1.NodeResources") - proto.RegisterType((*NodeSelector)(nil), "k8s.io.client-go.pkg.api.v1.NodeSelector") - proto.RegisterType((*NodeSelectorRequirement)(nil), "k8s.io.client-go.pkg.api.v1.NodeSelectorRequirement") - proto.RegisterType((*NodeSelectorTerm)(nil), "k8s.io.client-go.pkg.api.v1.NodeSelectorTerm") - proto.RegisterType((*NodeSpec)(nil), "k8s.io.client-go.pkg.api.v1.NodeSpec") - proto.RegisterType((*NodeStatus)(nil), "k8s.io.client-go.pkg.api.v1.NodeStatus") - proto.RegisterType((*NodeSystemInfo)(nil), "k8s.io.client-go.pkg.api.v1.NodeSystemInfo") - proto.RegisterType((*ObjectFieldSelector)(nil), "k8s.io.client-go.pkg.api.v1.ObjectFieldSelector") - proto.RegisterType((*ObjectMeta)(nil), "k8s.io.client-go.pkg.api.v1.ObjectMeta") - proto.RegisterType((*ObjectReference)(nil), "k8s.io.client-go.pkg.api.v1.ObjectReference") - proto.RegisterType((*PersistentVolume)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolume") - proto.RegisterType((*PersistentVolumeClaim)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeClaim") - proto.RegisterType((*PersistentVolumeClaimList)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeClaimList") - proto.RegisterType((*PersistentVolumeClaimSpec)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeClaimSpec") - proto.RegisterType((*PersistentVolumeClaimStatus)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeClaimStatus") - proto.RegisterType((*PersistentVolumeClaimVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeClaimVolumeSource") - proto.RegisterType((*PersistentVolumeList)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeList") - proto.RegisterType((*PersistentVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeSource") - proto.RegisterType((*PersistentVolumeSpec)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeSpec") - proto.RegisterType((*PersistentVolumeStatus)(nil), "k8s.io.client-go.pkg.api.v1.PersistentVolumeStatus") - proto.RegisterType((*PhotonPersistentDiskVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.PhotonPersistentDiskVolumeSource") - proto.RegisterType((*Pod)(nil), "k8s.io.client-go.pkg.api.v1.Pod") - proto.RegisterType((*PodAffinity)(nil), "k8s.io.client-go.pkg.api.v1.PodAffinity") - proto.RegisterType((*PodAffinityTerm)(nil), "k8s.io.client-go.pkg.api.v1.PodAffinityTerm") - proto.RegisterType((*PodAntiAffinity)(nil), "k8s.io.client-go.pkg.api.v1.PodAntiAffinity") - proto.RegisterType((*PodAttachOptions)(nil), "k8s.io.client-go.pkg.api.v1.PodAttachOptions") - proto.RegisterType((*PodCondition)(nil), "k8s.io.client-go.pkg.api.v1.PodCondition") - proto.RegisterType((*PodExecOptions)(nil), "k8s.io.client-go.pkg.api.v1.PodExecOptions") - proto.RegisterType((*PodList)(nil), "k8s.io.client-go.pkg.api.v1.PodList") - proto.RegisterType((*PodLogOptions)(nil), "k8s.io.client-go.pkg.api.v1.PodLogOptions") - proto.RegisterType((*PodPortForwardOptions)(nil), "k8s.io.client-go.pkg.api.v1.PodPortForwardOptions") - proto.RegisterType((*PodProxyOptions)(nil), "k8s.io.client-go.pkg.api.v1.PodProxyOptions") - proto.RegisterType((*PodSecurityContext)(nil), "k8s.io.client-go.pkg.api.v1.PodSecurityContext") - proto.RegisterType((*PodSignature)(nil), "k8s.io.client-go.pkg.api.v1.PodSignature") - proto.RegisterType((*PodSpec)(nil), "k8s.io.client-go.pkg.api.v1.PodSpec") - proto.RegisterType((*PodStatus)(nil), "k8s.io.client-go.pkg.api.v1.PodStatus") - proto.RegisterType((*PodStatusResult)(nil), "k8s.io.client-go.pkg.api.v1.PodStatusResult") - proto.RegisterType((*PodTemplate)(nil), "k8s.io.client-go.pkg.api.v1.PodTemplate") - proto.RegisterType((*PodTemplateList)(nil), "k8s.io.client-go.pkg.api.v1.PodTemplateList") - proto.RegisterType((*PodTemplateSpec)(nil), "k8s.io.client-go.pkg.api.v1.PodTemplateSpec") - proto.RegisterType((*PortworxVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.PortworxVolumeSource") - proto.RegisterType((*Preconditions)(nil), "k8s.io.client-go.pkg.api.v1.Preconditions") - proto.RegisterType((*PreferAvoidPodsEntry)(nil), "k8s.io.client-go.pkg.api.v1.PreferAvoidPodsEntry") - proto.RegisterType((*PreferredSchedulingTerm)(nil), "k8s.io.client-go.pkg.api.v1.PreferredSchedulingTerm") - proto.RegisterType((*Probe)(nil), "k8s.io.client-go.pkg.api.v1.Probe") - proto.RegisterType((*ProjectedVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.ProjectedVolumeSource") - proto.RegisterType((*QuobyteVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.QuobyteVolumeSource") - proto.RegisterType((*RBDVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.RBDVolumeSource") - proto.RegisterType((*RangeAllocation)(nil), "k8s.io.client-go.pkg.api.v1.RangeAllocation") - proto.RegisterType((*ReplicationController)(nil), "k8s.io.client-go.pkg.api.v1.ReplicationController") - proto.RegisterType((*ReplicationControllerCondition)(nil), "k8s.io.client-go.pkg.api.v1.ReplicationControllerCondition") - proto.RegisterType((*ReplicationControllerList)(nil), "k8s.io.client-go.pkg.api.v1.ReplicationControllerList") - proto.RegisterType((*ReplicationControllerSpec)(nil), "k8s.io.client-go.pkg.api.v1.ReplicationControllerSpec") - proto.RegisterType((*ReplicationControllerStatus)(nil), "k8s.io.client-go.pkg.api.v1.ReplicationControllerStatus") - proto.RegisterType((*ResourceFieldSelector)(nil), "k8s.io.client-go.pkg.api.v1.ResourceFieldSelector") - proto.RegisterType((*ResourceQuota)(nil), "k8s.io.client-go.pkg.api.v1.ResourceQuota") - proto.RegisterType((*ResourceQuotaList)(nil), "k8s.io.client-go.pkg.api.v1.ResourceQuotaList") - proto.RegisterType((*ResourceQuotaSpec)(nil), "k8s.io.client-go.pkg.api.v1.ResourceQuotaSpec") - proto.RegisterType((*ResourceQuotaStatus)(nil), "k8s.io.client-go.pkg.api.v1.ResourceQuotaStatus") - proto.RegisterType((*ResourceRequirements)(nil), "k8s.io.client-go.pkg.api.v1.ResourceRequirements") - proto.RegisterType((*SELinuxOptions)(nil), "k8s.io.client-go.pkg.api.v1.SELinuxOptions") - proto.RegisterType((*ScaleIOVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.ScaleIOVolumeSource") - proto.RegisterType((*Secret)(nil), "k8s.io.client-go.pkg.api.v1.Secret") - proto.RegisterType((*SecretEnvSource)(nil), "k8s.io.client-go.pkg.api.v1.SecretEnvSource") - proto.RegisterType((*SecretKeySelector)(nil), "k8s.io.client-go.pkg.api.v1.SecretKeySelector") - proto.RegisterType((*SecretList)(nil), "k8s.io.client-go.pkg.api.v1.SecretList") - proto.RegisterType((*SecretProjection)(nil), "k8s.io.client-go.pkg.api.v1.SecretProjection") - proto.RegisterType((*SecretVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.SecretVolumeSource") - proto.RegisterType((*SecurityContext)(nil), "k8s.io.client-go.pkg.api.v1.SecurityContext") - proto.RegisterType((*SerializedReference)(nil), "k8s.io.client-go.pkg.api.v1.SerializedReference") - proto.RegisterType((*Service)(nil), "k8s.io.client-go.pkg.api.v1.Service") - proto.RegisterType((*ServiceAccount)(nil), "k8s.io.client-go.pkg.api.v1.ServiceAccount") - proto.RegisterType((*ServiceAccountList)(nil), "k8s.io.client-go.pkg.api.v1.ServiceAccountList") - proto.RegisterType((*ServiceList)(nil), "k8s.io.client-go.pkg.api.v1.ServiceList") - proto.RegisterType((*ServicePort)(nil), "k8s.io.client-go.pkg.api.v1.ServicePort") - 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") - proto.RegisterType((*Toleration)(nil), "k8s.io.client-go.pkg.api.v1.Toleration") - proto.RegisterType((*Volume)(nil), "k8s.io.client-go.pkg.api.v1.Volume") - proto.RegisterType((*VolumeMount)(nil), "k8s.io.client-go.pkg.api.v1.VolumeMount") - proto.RegisterType((*VolumeProjection)(nil), "k8s.io.client-go.pkg.api.v1.VolumeProjection") - proto.RegisterType((*VolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.VolumeSource") - proto.RegisterType((*VsphereVirtualDiskVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.VsphereVirtualDiskVolumeSource") - proto.RegisterType((*WeightedPodAffinityTerm)(nil), "k8s.io.client-go.pkg.api.v1.WeightedPodAffinityTerm") + proto.RegisterType((*AWSElasticBlockStoreVolumeSource)(nil), "k8s.io.api.core.v1.AWSElasticBlockStoreVolumeSource") + proto.RegisterType((*Affinity)(nil), "k8s.io.api.core.v1.Affinity") + proto.RegisterType((*AttachedVolume)(nil), "k8s.io.api.core.v1.AttachedVolume") + proto.RegisterType((*AvoidPods)(nil), "k8s.io.api.core.v1.AvoidPods") + proto.RegisterType((*AzureDiskVolumeSource)(nil), "k8s.io.api.core.v1.AzureDiskVolumeSource") + proto.RegisterType((*AzureFileVolumeSource)(nil), "k8s.io.api.core.v1.AzureFileVolumeSource") + proto.RegisterType((*Binding)(nil), "k8s.io.api.core.v1.Binding") + proto.RegisterType((*Capabilities)(nil), "k8s.io.api.core.v1.Capabilities") + proto.RegisterType((*CephFSVolumeSource)(nil), "k8s.io.api.core.v1.CephFSVolumeSource") + proto.RegisterType((*CinderVolumeSource)(nil), "k8s.io.api.core.v1.CinderVolumeSource") + proto.RegisterType((*ComponentCondition)(nil), "k8s.io.api.core.v1.ComponentCondition") + proto.RegisterType((*ComponentStatus)(nil), "k8s.io.api.core.v1.ComponentStatus") + proto.RegisterType((*ComponentStatusList)(nil), "k8s.io.api.core.v1.ComponentStatusList") + proto.RegisterType((*ConfigMap)(nil), "k8s.io.api.core.v1.ConfigMap") + proto.RegisterType((*ConfigMapEnvSource)(nil), "k8s.io.api.core.v1.ConfigMapEnvSource") + proto.RegisterType((*ConfigMapKeySelector)(nil), "k8s.io.api.core.v1.ConfigMapKeySelector") + proto.RegisterType((*ConfigMapList)(nil), "k8s.io.api.core.v1.ConfigMapList") + proto.RegisterType((*ConfigMapProjection)(nil), "k8s.io.api.core.v1.ConfigMapProjection") + proto.RegisterType((*ConfigMapVolumeSource)(nil), "k8s.io.api.core.v1.ConfigMapVolumeSource") + proto.RegisterType((*Container)(nil), "k8s.io.api.core.v1.Container") + proto.RegisterType((*ContainerImage)(nil), "k8s.io.api.core.v1.ContainerImage") + proto.RegisterType((*ContainerPort)(nil), "k8s.io.api.core.v1.ContainerPort") + proto.RegisterType((*ContainerState)(nil), "k8s.io.api.core.v1.ContainerState") + proto.RegisterType((*ContainerStateRunning)(nil), "k8s.io.api.core.v1.ContainerStateRunning") + proto.RegisterType((*ContainerStateTerminated)(nil), "k8s.io.api.core.v1.ContainerStateTerminated") + proto.RegisterType((*ContainerStateWaiting)(nil), "k8s.io.api.core.v1.ContainerStateWaiting") + proto.RegisterType((*ContainerStatus)(nil), "k8s.io.api.core.v1.ContainerStatus") + proto.RegisterType((*DaemonEndpoint)(nil), "k8s.io.api.core.v1.DaemonEndpoint") + proto.RegisterType((*DeleteOptions)(nil), "k8s.io.api.core.v1.DeleteOptions") + proto.RegisterType((*DownwardAPIProjection)(nil), "k8s.io.api.core.v1.DownwardAPIProjection") + proto.RegisterType((*DownwardAPIVolumeFile)(nil), "k8s.io.api.core.v1.DownwardAPIVolumeFile") + proto.RegisterType((*DownwardAPIVolumeSource)(nil), "k8s.io.api.core.v1.DownwardAPIVolumeSource") + proto.RegisterType((*EmptyDirVolumeSource)(nil), "k8s.io.api.core.v1.EmptyDirVolumeSource") + proto.RegisterType((*EndpointAddress)(nil), "k8s.io.api.core.v1.EndpointAddress") + proto.RegisterType((*EndpointPort)(nil), "k8s.io.api.core.v1.EndpointPort") + proto.RegisterType((*EndpointSubset)(nil), "k8s.io.api.core.v1.EndpointSubset") + proto.RegisterType((*Endpoints)(nil), "k8s.io.api.core.v1.Endpoints") + proto.RegisterType((*EndpointsList)(nil), "k8s.io.api.core.v1.EndpointsList") + proto.RegisterType((*EnvFromSource)(nil), "k8s.io.api.core.v1.EnvFromSource") + proto.RegisterType((*EnvVar)(nil), "k8s.io.api.core.v1.EnvVar") + proto.RegisterType((*EnvVarSource)(nil), "k8s.io.api.core.v1.EnvVarSource") + proto.RegisterType((*Event)(nil), "k8s.io.api.core.v1.Event") + proto.RegisterType((*EventList)(nil), "k8s.io.api.core.v1.EventList") + proto.RegisterType((*EventSource)(nil), "k8s.io.api.core.v1.EventSource") + proto.RegisterType((*ExecAction)(nil), "k8s.io.api.core.v1.ExecAction") + proto.RegisterType((*FCVolumeSource)(nil), "k8s.io.api.core.v1.FCVolumeSource") + proto.RegisterType((*FlexVolumeSource)(nil), "k8s.io.api.core.v1.FlexVolumeSource") + proto.RegisterType((*FlockerVolumeSource)(nil), "k8s.io.api.core.v1.FlockerVolumeSource") + proto.RegisterType((*GCEPersistentDiskVolumeSource)(nil), "k8s.io.api.core.v1.GCEPersistentDiskVolumeSource") + proto.RegisterType((*GitRepoVolumeSource)(nil), "k8s.io.api.core.v1.GitRepoVolumeSource") + proto.RegisterType((*GlusterfsVolumeSource)(nil), "k8s.io.api.core.v1.GlusterfsVolumeSource") + proto.RegisterType((*HTTPGetAction)(nil), "k8s.io.api.core.v1.HTTPGetAction") + proto.RegisterType((*HTTPHeader)(nil), "k8s.io.api.core.v1.HTTPHeader") + proto.RegisterType((*Handler)(nil), "k8s.io.api.core.v1.Handler") + proto.RegisterType((*HostAlias)(nil), "k8s.io.api.core.v1.HostAlias") + proto.RegisterType((*HostPathVolumeSource)(nil), "k8s.io.api.core.v1.HostPathVolumeSource") + proto.RegisterType((*ISCSIVolumeSource)(nil), "k8s.io.api.core.v1.ISCSIVolumeSource") + proto.RegisterType((*KeyToPath)(nil), "k8s.io.api.core.v1.KeyToPath") + proto.RegisterType((*Lifecycle)(nil), "k8s.io.api.core.v1.Lifecycle") + proto.RegisterType((*LimitRange)(nil), "k8s.io.api.core.v1.LimitRange") + proto.RegisterType((*LimitRangeItem)(nil), "k8s.io.api.core.v1.LimitRangeItem") + proto.RegisterType((*LimitRangeList)(nil), "k8s.io.api.core.v1.LimitRangeList") + proto.RegisterType((*LimitRangeSpec)(nil), "k8s.io.api.core.v1.LimitRangeSpec") + proto.RegisterType((*List)(nil), "k8s.io.api.core.v1.List") + proto.RegisterType((*ListOptions)(nil), "k8s.io.api.core.v1.ListOptions") + proto.RegisterType((*LoadBalancerIngress)(nil), "k8s.io.api.core.v1.LoadBalancerIngress") + proto.RegisterType((*LoadBalancerStatus)(nil), "k8s.io.api.core.v1.LoadBalancerStatus") + proto.RegisterType((*LocalObjectReference)(nil), "k8s.io.api.core.v1.LocalObjectReference") + proto.RegisterType((*LocalVolumeSource)(nil), "k8s.io.api.core.v1.LocalVolumeSource") + proto.RegisterType((*NFSVolumeSource)(nil), "k8s.io.api.core.v1.NFSVolumeSource") + proto.RegisterType((*Namespace)(nil), "k8s.io.api.core.v1.Namespace") + proto.RegisterType((*NamespaceList)(nil), "k8s.io.api.core.v1.NamespaceList") + proto.RegisterType((*NamespaceSpec)(nil), "k8s.io.api.core.v1.NamespaceSpec") + proto.RegisterType((*NamespaceStatus)(nil), "k8s.io.api.core.v1.NamespaceStatus") + proto.RegisterType((*Node)(nil), "k8s.io.api.core.v1.Node") + proto.RegisterType((*NodeAddress)(nil), "k8s.io.api.core.v1.NodeAddress") + proto.RegisterType((*NodeAffinity)(nil), "k8s.io.api.core.v1.NodeAffinity") + proto.RegisterType((*NodeCondition)(nil), "k8s.io.api.core.v1.NodeCondition") + proto.RegisterType((*NodeDaemonEndpoints)(nil), "k8s.io.api.core.v1.NodeDaemonEndpoints") + proto.RegisterType((*NodeList)(nil), "k8s.io.api.core.v1.NodeList") + proto.RegisterType((*NodeProxyOptions)(nil), "k8s.io.api.core.v1.NodeProxyOptions") + proto.RegisterType((*NodeResources)(nil), "k8s.io.api.core.v1.NodeResources") + proto.RegisterType((*NodeSelector)(nil), "k8s.io.api.core.v1.NodeSelector") + proto.RegisterType((*NodeSelectorRequirement)(nil), "k8s.io.api.core.v1.NodeSelectorRequirement") + proto.RegisterType((*NodeSelectorTerm)(nil), "k8s.io.api.core.v1.NodeSelectorTerm") + proto.RegisterType((*NodeSpec)(nil), "k8s.io.api.core.v1.NodeSpec") + proto.RegisterType((*NodeStatus)(nil), "k8s.io.api.core.v1.NodeStatus") + proto.RegisterType((*NodeSystemInfo)(nil), "k8s.io.api.core.v1.NodeSystemInfo") + proto.RegisterType((*ObjectFieldSelector)(nil), "k8s.io.api.core.v1.ObjectFieldSelector") + proto.RegisterType((*ObjectMeta)(nil), "k8s.io.api.core.v1.ObjectMeta") + proto.RegisterType((*ObjectReference)(nil), "k8s.io.api.core.v1.ObjectReference") + proto.RegisterType((*PersistentVolume)(nil), "k8s.io.api.core.v1.PersistentVolume") + proto.RegisterType((*PersistentVolumeClaim)(nil), "k8s.io.api.core.v1.PersistentVolumeClaim") + proto.RegisterType((*PersistentVolumeClaimList)(nil), "k8s.io.api.core.v1.PersistentVolumeClaimList") + proto.RegisterType((*PersistentVolumeClaimSpec)(nil), "k8s.io.api.core.v1.PersistentVolumeClaimSpec") + proto.RegisterType((*PersistentVolumeClaimStatus)(nil), "k8s.io.api.core.v1.PersistentVolumeClaimStatus") + proto.RegisterType((*PersistentVolumeClaimVolumeSource)(nil), "k8s.io.api.core.v1.PersistentVolumeClaimVolumeSource") + proto.RegisterType((*PersistentVolumeList)(nil), "k8s.io.api.core.v1.PersistentVolumeList") + proto.RegisterType((*PersistentVolumeSource)(nil), "k8s.io.api.core.v1.PersistentVolumeSource") + proto.RegisterType((*PersistentVolumeSpec)(nil), "k8s.io.api.core.v1.PersistentVolumeSpec") + proto.RegisterType((*PersistentVolumeStatus)(nil), "k8s.io.api.core.v1.PersistentVolumeStatus") + proto.RegisterType((*PhotonPersistentDiskVolumeSource)(nil), "k8s.io.api.core.v1.PhotonPersistentDiskVolumeSource") + proto.RegisterType((*Pod)(nil), "k8s.io.api.core.v1.Pod") + proto.RegisterType((*PodAffinity)(nil), "k8s.io.api.core.v1.PodAffinity") + proto.RegisterType((*PodAffinityTerm)(nil), "k8s.io.api.core.v1.PodAffinityTerm") + proto.RegisterType((*PodAntiAffinity)(nil), "k8s.io.api.core.v1.PodAntiAffinity") + proto.RegisterType((*PodAttachOptions)(nil), "k8s.io.api.core.v1.PodAttachOptions") + proto.RegisterType((*PodCondition)(nil), "k8s.io.api.core.v1.PodCondition") + proto.RegisterType((*PodExecOptions)(nil), "k8s.io.api.core.v1.PodExecOptions") + proto.RegisterType((*PodList)(nil), "k8s.io.api.core.v1.PodList") + proto.RegisterType((*PodLogOptions)(nil), "k8s.io.api.core.v1.PodLogOptions") + proto.RegisterType((*PodPortForwardOptions)(nil), "k8s.io.api.core.v1.PodPortForwardOptions") + proto.RegisterType((*PodProxyOptions)(nil), "k8s.io.api.core.v1.PodProxyOptions") + proto.RegisterType((*PodSecurityContext)(nil), "k8s.io.api.core.v1.PodSecurityContext") + proto.RegisterType((*PodSignature)(nil), "k8s.io.api.core.v1.PodSignature") + proto.RegisterType((*PodSpec)(nil), "k8s.io.api.core.v1.PodSpec") + proto.RegisterType((*PodStatus)(nil), "k8s.io.api.core.v1.PodStatus") + proto.RegisterType((*PodStatusResult)(nil), "k8s.io.api.core.v1.PodStatusResult") + proto.RegisterType((*PodTemplate)(nil), "k8s.io.api.core.v1.PodTemplate") + proto.RegisterType((*PodTemplateList)(nil), "k8s.io.api.core.v1.PodTemplateList") + proto.RegisterType((*PodTemplateSpec)(nil), "k8s.io.api.core.v1.PodTemplateSpec") + proto.RegisterType((*PortworxVolumeSource)(nil), "k8s.io.api.core.v1.PortworxVolumeSource") + proto.RegisterType((*Preconditions)(nil), "k8s.io.api.core.v1.Preconditions") + proto.RegisterType((*PreferAvoidPodsEntry)(nil), "k8s.io.api.core.v1.PreferAvoidPodsEntry") + proto.RegisterType((*PreferredSchedulingTerm)(nil), "k8s.io.api.core.v1.PreferredSchedulingTerm") + proto.RegisterType((*Probe)(nil), "k8s.io.api.core.v1.Probe") + proto.RegisterType((*ProjectedVolumeSource)(nil), "k8s.io.api.core.v1.ProjectedVolumeSource") + proto.RegisterType((*QuobyteVolumeSource)(nil), "k8s.io.api.core.v1.QuobyteVolumeSource") + proto.RegisterType((*RBDVolumeSource)(nil), "k8s.io.api.core.v1.RBDVolumeSource") + proto.RegisterType((*RangeAllocation)(nil), "k8s.io.api.core.v1.RangeAllocation") + proto.RegisterType((*ReplicationController)(nil), "k8s.io.api.core.v1.ReplicationController") + proto.RegisterType((*ReplicationControllerCondition)(nil), "k8s.io.api.core.v1.ReplicationControllerCondition") + proto.RegisterType((*ReplicationControllerList)(nil), "k8s.io.api.core.v1.ReplicationControllerList") + proto.RegisterType((*ReplicationControllerSpec)(nil), "k8s.io.api.core.v1.ReplicationControllerSpec") + proto.RegisterType((*ReplicationControllerStatus)(nil), "k8s.io.api.core.v1.ReplicationControllerStatus") + proto.RegisterType((*ResourceFieldSelector)(nil), "k8s.io.api.core.v1.ResourceFieldSelector") + proto.RegisterType((*ResourceQuota)(nil), "k8s.io.api.core.v1.ResourceQuota") + proto.RegisterType((*ResourceQuotaList)(nil), "k8s.io.api.core.v1.ResourceQuotaList") + proto.RegisterType((*ResourceQuotaSpec)(nil), "k8s.io.api.core.v1.ResourceQuotaSpec") + proto.RegisterType((*ResourceQuotaStatus)(nil), "k8s.io.api.core.v1.ResourceQuotaStatus") + proto.RegisterType((*ResourceRequirements)(nil), "k8s.io.api.core.v1.ResourceRequirements") + proto.RegisterType((*SELinuxOptions)(nil), "k8s.io.api.core.v1.SELinuxOptions") + proto.RegisterType((*ScaleIOVolumeSource)(nil), "k8s.io.api.core.v1.ScaleIOVolumeSource") + proto.RegisterType((*Secret)(nil), "k8s.io.api.core.v1.Secret") + proto.RegisterType((*SecretEnvSource)(nil), "k8s.io.api.core.v1.SecretEnvSource") + proto.RegisterType((*SecretKeySelector)(nil), "k8s.io.api.core.v1.SecretKeySelector") + proto.RegisterType((*SecretList)(nil), "k8s.io.api.core.v1.SecretList") + proto.RegisterType((*SecretProjection)(nil), "k8s.io.api.core.v1.SecretProjection") + proto.RegisterType((*SecretVolumeSource)(nil), "k8s.io.api.core.v1.SecretVolumeSource") + proto.RegisterType((*SecurityContext)(nil), "k8s.io.api.core.v1.SecurityContext") + proto.RegisterType((*SerializedReference)(nil), "k8s.io.api.core.v1.SerializedReference") + proto.RegisterType((*Service)(nil), "k8s.io.api.core.v1.Service") + proto.RegisterType((*ServiceAccount)(nil), "k8s.io.api.core.v1.ServiceAccount") + proto.RegisterType((*ServiceAccountList)(nil), "k8s.io.api.core.v1.ServiceAccountList") + proto.RegisterType((*ServiceList)(nil), "k8s.io.api.core.v1.ServiceList") + proto.RegisterType((*ServicePort)(nil), "k8s.io.api.core.v1.ServicePort") + proto.RegisterType((*ServiceProxyOptions)(nil), "k8s.io.api.core.v1.ServiceProxyOptions") + proto.RegisterType((*ServiceSpec)(nil), "k8s.io.api.core.v1.ServiceSpec") + proto.RegisterType((*ServiceStatus)(nil), "k8s.io.api.core.v1.ServiceStatus") + proto.RegisterType((*StorageOSPersistentVolumeSource)(nil), "k8s.io.api.core.v1.StorageOSPersistentVolumeSource") + proto.RegisterType((*StorageOSVolumeSource)(nil), "k8s.io.api.core.v1.StorageOSVolumeSource") + proto.RegisterType((*Sysctl)(nil), "k8s.io.api.core.v1.Sysctl") + proto.RegisterType((*TCPSocketAction)(nil), "k8s.io.api.core.v1.TCPSocketAction") + proto.RegisterType((*Taint)(nil), "k8s.io.api.core.v1.Taint") + proto.RegisterType((*Toleration)(nil), "k8s.io.api.core.v1.Toleration") + proto.RegisterType((*Volume)(nil), "k8s.io.api.core.v1.Volume") + proto.RegisterType((*VolumeMount)(nil), "k8s.io.api.core.v1.VolumeMount") + proto.RegisterType((*VolumeProjection)(nil), "k8s.io.api.core.v1.VolumeProjection") + proto.RegisterType((*VolumeSource)(nil), "k8s.io.api.core.v1.VolumeSource") + proto.RegisterType((*VsphereVirtualDiskVolumeSource)(nil), "k8s.io.api.core.v1.VsphereVirtualDiskVolumeSource") + proto.RegisterType((*WeightedPodAffinityTerm)(nil), "k8s.io.api.core.v1.WeightedPodAffinityTerm") } func (m *AWSElasticBlockStoreVolumeSource) Marshal() (dAtA []byte, err error) { size := m.Size() @@ -6730,6 +6730,19 @@ func (m *PodSpec) MarshalTo(dAtA []byte) (int, error) { i += n } } + dAtA[i] = 0xc2 + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.PriorityClassName))) + i += copy(dAtA[i:], m.PriorityClassName) + if m.Priority != nil { + dAtA[i] = 0xc8 + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.Priority)) + } return i, nil } @@ -8345,6 +8358,16 @@ func (m *SecurityContext) MarshalTo(dAtA []byte) (int, error) { } i++ } + if m.AllowPrivilegeEscalation != nil { + dAtA[i] = 0x38 + i++ + if *m.AllowPrivilegeEscalation { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i++ + } return i, nil } @@ -11533,6 +11556,11 @@ func (m *PodSpec) Size() (n int) { n += 2 + l + sovGenerated(uint64(l)) } } + l = len(m.PriorityClassName) + n += 2 + l + sovGenerated(uint64(l)) + if m.Priority != nil { + n += 2 + sovGenerated(uint64(*m.Priority)) + } return n } @@ -12104,6 +12132,9 @@ func (m *SecurityContext) Size() (n int) { if m.ReadOnlyRootFilesystem != nil { n += 2 } + if m.AllowPrivilegeEscalation != nil { + n += 2 + } return n } @@ -14151,6 +14182,8 @@ func (this *PodSpec) String() string { `AutomountServiceAccountToken:` + valueToStringGenerated(this.AutomountServiceAccountToken) + `,`, `Tolerations:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Tolerations), "Toleration", "Toleration", 1), `&`, ``, 1) + `,`, `HostAliases:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.HostAliases), "HostAlias", "HostAlias", 1), `&`, ``, 1) + `,`, + `PriorityClassName:` + fmt.Sprintf("%v", this.PriorityClassName) + `,`, + `Priority:` + valueToStringGenerated(this.Priority) + `,`, `}`, }, "") return s @@ -14661,6 +14694,7 @@ func (this *SecurityContext) String() string { `RunAsUser:` + valueToStringGenerated(this.RunAsUser) + `,`, `RunAsNonRoot:` + valueToStringGenerated(this.RunAsNonRoot) + `,`, `ReadOnlyRootFilesystem:` + valueToStringGenerated(this.ReadOnlyRootFilesystem) + `,`, + `AllowPrivilegeEscalation:` + valueToStringGenerated(this.AllowPrivilegeEscalation) + `,`, `}`, }, "") return s @@ -33491,7 +33525,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field RunAsUser", wireType) } - var v k8s_io_apimachinery_pkg_types.UnixUserID + var v int64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowGenerated @@ -33501,7 +33535,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= (k8s_io_apimachinery_pkg_types.UnixUserID(b) & 0x7F) << shift + v |= (int64(b) & 0x7F) << shift if b < 0x80 { break } @@ -33530,7 +33564,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { m.RunAsNonRoot = &b case 4: if wireType == 0 { - var v k8s_io_apimachinery_pkg_types.UnixGroupID + var v int64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowGenerated @@ -33540,7 +33574,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= (k8s_io_apimachinery_pkg_types.UnixGroupID(b) & 0x7F) << shift + v |= (int64(b) & 0x7F) << shift if b < 0x80 { break } @@ -33570,7 +33604,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { return io.ErrUnexpectedEOF } for iNdEx < postIndex { - var v k8s_io_apimachinery_pkg_types.UnixGroupID + var v int64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowGenerated @@ -33580,7 +33614,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= (k8s_io_apimachinery_pkg_types.UnixGroupID(b) & 0x7F) << shift + v |= (int64(b) & 0x7F) << shift if b < 0x80 { break } @@ -33594,7 +33628,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field FSGroup", wireType) } - var v k8s_io_apimachinery_pkg_types.UnixGroupID + var v int64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowGenerated @@ -33604,7 +33638,7 @@ func (m *PodSecurityContext) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= (k8s_io_apimachinery_pkg_types.UnixGroupID(b) & 0x7F) << shift + v |= (int64(b) & 0x7F) << shift if b < 0x80 { break } @@ -34464,6 +34498,55 @@ func (m *PodSpec) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 24: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PriorityClassName", 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.PriorityClassName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 25: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Priority", 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.Priority = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -40243,7 +40326,7 @@ func (m *SecurityContext) Unmarshal(dAtA []byte) error { if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field RunAsUser", wireType) } - var v k8s_io_apimachinery_pkg_types.UnixUserID + var v int64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowGenerated @@ -40253,7 +40336,7 @@ func (m *SecurityContext) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= (k8s_io_apimachinery_pkg_types.UnixUserID(b) & 0x7F) << shift + v |= (int64(b) & 0x7F) << shift if b < 0x80 { break } @@ -40301,6 +40384,27 @@ func (m *SecurityContext) Unmarshal(dAtA []byte) error { } b := bool(v != 0) m.ReadOnlyRootFilesystem = &b + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowPrivilegeEscalation", 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 + } + } + b := bool(v != 0) + m.AllowPrivilegeEscalation = &b default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -44387,726 +44491,724 @@ var ( ) func init() { - proto.RegisterFile("k8s.io/client-go/pkg/api/v1/generated.proto", fileDescriptorGenerated) + proto.RegisterFile("k8s.io/kubernetes/vendor/k8s.io/api/core/v1/generated.proto", fileDescriptorGenerated) } var fileDescriptorGenerated = []byte{ - // 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, + // 11428 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x5b, 0x70, 0x24, 0xd7, + 0x75, 0x98, 0x7a, 0x06, 0xaf, 0x39, 0x78, 0xdf, 0x7d, 0x70, 0x16, 0x24, 0x17, 0xcb, 0xa6, 0x44, + 0x2e, 0x5f, 0x80, 0xb8, 0x24, 0x25, 0x4a, 0xa4, 0x28, 0x01, 0x18, 0x60, 0x17, 0xdc, 0xc5, 0xee, + 0xf0, 0x0e, 0x76, 0x69, 0x51, 0x34, 0xad, 0xde, 0xe9, 0x0b, 0xa0, 0x89, 0x46, 0xf7, 0xb0, 0xbb, + 0x07, 0xbb, 0x60, 0x59, 0x55, 0x89, 0x22, 0x2b, 0x0f, 0xf9, 0xc3, 0x95, 0x72, 0x25, 0x8e, 0xa5, + 0x38, 0x55, 0x79, 0x94, 0xad, 0x28, 0x49, 0xd9, 0x91, 0xe3, 0x87, 0xe4, 0x54, 0x12, 0xe7, 0x51, + 0xd2, 0x8f, 0x63, 0x7f, 0xa4, 0xa4, 0xaa, 0x54, 0x60, 0x0b, 0xaa, 0x4a, 0x2a, 0x1f, 0x49, 0xe5, + 0xf5, 0x13, 0xc4, 0x89, 0x52, 0xf7, 0xd9, 0xf7, 0xf6, 0x74, 0xcf, 0x0c, 0x96, 0x58, 0x90, 0x52, + 0xf9, 0x6f, 0xe6, 0x9c, 0x73, 0xcf, 0xbd, 0x7d, 0x1f, 0xe7, 0x9e, 0x73, 0xee, 0xb9, 0xe7, 0xc2, + 0x4b, 0xdb, 0x2f, 0xc6, 0x73, 0x5e, 0x38, 0xbf, 0xdd, 0xbe, 0x4d, 0xa2, 0x80, 0x24, 0x24, 0x9e, + 0xdf, 0x25, 0x81, 0x1b, 0x46, 0xf3, 0x02, 0xe1, 0xb4, 0xbc, 0xf9, 0x66, 0x18, 0x91, 0xf9, 0xdd, + 0x67, 0xe7, 0x37, 0x49, 0x40, 0x22, 0x27, 0x21, 0xee, 0x5c, 0x2b, 0x0a, 0x93, 0x10, 0x21, 0x4e, + 0x33, 0xe7, 0xb4, 0xbc, 0x39, 0x4a, 0x33, 0xb7, 0xfb, 0xec, 0xcc, 0x33, 0x9b, 0x5e, 0xb2, 0xd5, + 0xbe, 0x3d, 0xd7, 0x0c, 0x77, 0xe6, 0x37, 0xc3, 0xcd, 0x70, 0x9e, 0x91, 0xde, 0x6e, 0x6f, 0xb0, + 0x7f, 0xec, 0x0f, 0xfb, 0xc5, 0x59, 0xcc, 0x3c, 0x9f, 0x56, 0xb3, 0xe3, 0x34, 0xb7, 0xbc, 0x80, + 0x44, 0x7b, 0xf3, 0xad, 0xed, 0x4d, 0x56, 0x6f, 0x44, 0xe2, 0xb0, 0x1d, 0x35, 0x49, 0xb6, 0xe2, + 0xae, 0xa5, 0xe2, 0xf9, 0x1d, 0x92, 0x38, 0x39, 0xcd, 0x9d, 0x99, 0x2f, 0x2a, 0x15, 0xb5, 0x83, + 0xc4, 0xdb, 0xe9, 0xac, 0xe6, 0x63, 0xbd, 0x0a, 0xc4, 0xcd, 0x2d, 0xb2, 0xe3, 0x74, 0x94, 0x7b, + 0xae, 0xa8, 0x5c, 0x3b, 0xf1, 0xfc, 0x79, 0x2f, 0x48, 0xe2, 0x24, 0xca, 0x16, 0xb2, 0xbf, 0x67, + 0xc1, 0x85, 0x85, 0xd7, 0x1b, 0xcb, 0xbe, 0x13, 0x27, 0x5e, 0x73, 0xd1, 0x0f, 0x9b, 0xdb, 0x8d, + 0x24, 0x8c, 0xc8, 0xad, 0xd0, 0x6f, 0xef, 0x90, 0x06, 0xeb, 0x08, 0xf4, 0x34, 0x8c, 0xec, 0xb2, + 0xff, 0xab, 0xb5, 0xaa, 0x75, 0xc1, 0xba, 0x58, 0x59, 0x9c, 0xfa, 0xce, 0xfe, 0xec, 0x87, 0x0e, + 0xf6, 0x67, 0x47, 0x6e, 0x09, 0x38, 0x56, 0x14, 0xe8, 0x31, 0x18, 0xda, 0x88, 0xd7, 0xf7, 0x5a, + 0xa4, 0x5a, 0x62, 0xb4, 0x13, 0x82, 0x76, 0x68, 0xa5, 0x41, 0xa1, 0x58, 0x60, 0xd1, 0x3c, 0x54, + 0x5a, 0x4e, 0x94, 0x78, 0x89, 0x17, 0x06, 0xd5, 0xf2, 0x05, 0xeb, 0xe2, 0xe0, 0xe2, 0xb4, 0x20, + 0xad, 0xd4, 0x25, 0x02, 0xa7, 0x34, 0xb4, 0x19, 0x11, 0x71, 0xdc, 0x1b, 0x81, 0xbf, 0x57, 0x1d, + 0xb8, 0x60, 0x5d, 0x1c, 0x49, 0x9b, 0x81, 0x05, 0x1c, 0x2b, 0x0a, 0xfb, 0x97, 0x4b, 0x30, 0xb2, + 0xb0, 0xb1, 0xe1, 0x05, 0x5e, 0xb2, 0x87, 0x6e, 0xc1, 0x58, 0x10, 0xba, 0x44, 0xfe, 0x67, 0x5f, + 0x31, 0x7a, 0xe9, 0xc2, 0x5c, 0xe7, 0x54, 0x9a, 0xbb, 0xae, 0xd1, 0x2d, 0x4e, 0x1d, 0xec, 0xcf, + 0x8e, 0xe9, 0x10, 0x6c, 0xf0, 0x41, 0x18, 0x46, 0x5b, 0xa1, 0xab, 0xd8, 0x96, 0x18, 0xdb, 0xd9, + 0x3c, 0xb6, 0xf5, 0x94, 0x6c, 0x71, 0xf2, 0x60, 0x7f, 0x76, 0x54, 0x03, 0x60, 0x9d, 0x09, 0xba, + 0x0d, 0x93, 0xf4, 0x6f, 0x90, 0x78, 0x8a, 0x6f, 0x99, 0xf1, 0x7d, 0xb4, 0x88, 0xaf, 0x46, 0xba, + 0x78, 0xea, 0x60, 0x7f, 0x76, 0x32, 0x03, 0xc4, 0x59, 0x86, 0xf6, 0xbb, 0x30, 0xb1, 0x90, 0x24, + 0x4e, 0x73, 0x8b, 0xb8, 0x7c, 0x04, 0xd1, 0xf3, 0x30, 0x10, 0x38, 0x3b, 0x44, 0x8c, 0xef, 0x05, + 0xd1, 0xb1, 0x03, 0xd7, 0x9d, 0x1d, 0x72, 0xb8, 0x3f, 0x3b, 0x75, 0x33, 0xf0, 0xde, 0x69, 0x8b, + 0x59, 0x41, 0x61, 0x98, 0x51, 0xa3, 0x4b, 0x00, 0x2e, 0xd9, 0xf5, 0x9a, 0xa4, 0xee, 0x24, 0x5b, + 0x62, 0xbc, 0x91, 0x28, 0x0b, 0x35, 0x85, 0xc1, 0x1a, 0x95, 0x7d, 0x17, 0x2a, 0x0b, 0xbb, 0xa1, + 0xe7, 0xd6, 0x43, 0x37, 0x46, 0xdb, 0x30, 0xd9, 0x8a, 0xc8, 0x06, 0x89, 0x14, 0xa8, 0x6a, 0x5d, + 0x28, 0x5f, 0x1c, 0xbd, 0x74, 0x31, 0xf7, 0x63, 0x4d, 0xd2, 0xe5, 0x20, 0x89, 0xf6, 0x16, 0x1f, + 0x10, 0xf5, 0x4d, 0x66, 0xb0, 0x38, 0xcb, 0xd9, 0xfe, 0x57, 0x25, 0x38, 0xb3, 0xf0, 0x6e, 0x3b, + 0x22, 0x35, 0x2f, 0xde, 0xce, 0xce, 0x70, 0xd7, 0x8b, 0xb7, 0xaf, 0xa7, 0x3d, 0xa0, 0xa6, 0x56, + 0x4d, 0xc0, 0xb1, 0xa2, 0x40, 0xcf, 0xc0, 0x30, 0xfd, 0x7d, 0x13, 0xaf, 0x8a, 0x4f, 0x3e, 0x25, + 0x88, 0x47, 0x6b, 0x4e, 0xe2, 0xd4, 0x38, 0x0a, 0x4b, 0x1a, 0xb4, 0x06, 0xa3, 0x4d, 0xb6, 0x20, + 0x37, 0xd7, 0x42, 0x97, 0xb0, 0xc1, 0xac, 0x2c, 0x3e, 0x45, 0xc9, 0x97, 0x52, 0xf0, 0xe1, 0xfe, + 0x6c, 0x95, 0xb7, 0x4d, 0xb0, 0xd0, 0x70, 0x58, 0x2f, 0x8f, 0x6c, 0xb5, 0xbe, 0x06, 0x18, 0x27, + 0xc8, 0x59, 0x5b, 0x17, 0xb5, 0xa5, 0x32, 0xc8, 0x96, 0xca, 0x58, 0xfe, 0x32, 0x41, 0xcf, 0xc2, + 0xc0, 0xb6, 0x17, 0xb8, 0xd5, 0x21, 0xc6, 0xeb, 0x61, 0x3a, 0xe6, 0x57, 0xbd, 0xc0, 0x3d, 0xdc, + 0x9f, 0x9d, 0x36, 0x9a, 0x43, 0x81, 0x98, 0x91, 0xda, 0x7f, 0xdf, 0x12, 0xdd, 0xb8, 0xe2, 0xf9, + 0xa6, 0xa0, 0xb8, 0x04, 0x10, 0x93, 0x66, 0x44, 0x12, 0xad, 0x23, 0xd5, 0x74, 0x68, 0x28, 0x0c, + 0xd6, 0xa8, 0xa8, 0x18, 0x88, 0xb7, 0x9c, 0x88, 0xcd, 0x2a, 0xd1, 0x9d, 0x4a, 0x0c, 0x34, 0x24, + 0x02, 0xa7, 0x34, 0x86, 0x18, 0x28, 0xf7, 0x14, 0x03, 0xbf, 0x63, 0xc1, 0xf0, 0xa2, 0x17, 0xb8, + 0x5e, 0xb0, 0x89, 0x3e, 0x0f, 0x23, 0x54, 0x4a, 0xbb, 0x4e, 0xe2, 0x08, 0x09, 0xf0, 0x51, 0x6d, + 0x96, 0x29, 0xa1, 0x39, 0xd7, 0xda, 0xde, 0xa4, 0x80, 0x78, 0x8e, 0x52, 0xd3, 0x79, 0x77, 0xe3, + 0xf6, 0xdb, 0xa4, 0x99, 0xac, 0x91, 0xc4, 0x49, 0x3f, 0x27, 0x85, 0x61, 0xc5, 0x15, 0x5d, 0x85, + 0xa1, 0xc4, 0x89, 0x36, 0x49, 0x22, 0x44, 0x41, 0xee, 0x92, 0xe5, 0x25, 0x31, 0x9d, 0x9b, 0x24, + 0x68, 0x92, 0x54, 0x40, 0xae, 0xb3, 0xa2, 0x58, 0xb0, 0xb0, 0x9b, 0x30, 0xb6, 0xe4, 0xb4, 0x9c, + 0xdb, 0x9e, 0xef, 0x25, 0x1e, 0x89, 0xd1, 0xe3, 0x50, 0x76, 0x5c, 0x97, 0xad, 0x8f, 0xca, 0xe2, + 0x99, 0x83, 0xfd, 0xd9, 0xf2, 0x82, 0x4b, 0x07, 0x0a, 0x14, 0xd5, 0x1e, 0xa6, 0x14, 0xe8, 0x49, + 0x18, 0x70, 0xa3, 0xb0, 0x55, 0x2d, 0x31, 0xca, 0xb3, 0x74, 0x4c, 0x6b, 0x51, 0xd8, 0xca, 0x90, + 0x32, 0x1a, 0xfb, 0xdb, 0x25, 0x40, 0x4b, 0xa4, 0xb5, 0xb5, 0xd2, 0x30, 0x46, 0xf2, 0x22, 0x8c, + 0xec, 0x84, 0x81, 0x97, 0x84, 0x51, 0x2c, 0x2a, 0x64, 0x13, 0x68, 0x4d, 0xc0, 0xb0, 0xc2, 0xa2, + 0x0b, 0x30, 0xd0, 0x4a, 0x17, 0xff, 0x98, 0x14, 0x1c, 0x6c, 0xd9, 0x33, 0x0c, 0xa5, 0x68, 0xc7, + 0x24, 0x12, 0x13, 0x5f, 0x51, 0xdc, 0x8c, 0x49, 0x84, 0x19, 0x26, 0x9d, 0x37, 0x74, 0x46, 0x89, + 0x69, 0x9d, 0x99, 0x37, 0x14, 0x83, 0x35, 0x2a, 0x74, 0x13, 0x2a, 0xfc, 0x1f, 0x26, 0x1b, 0x6c, + 0x8e, 0x17, 0xc8, 0x8c, 0x6b, 0x61, 0xd3, 0xf1, 0xb3, 0x5d, 0x3e, 0xce, 0x66, 0x97, 0x2c, 0x8e, + 0x53, 0x4e, 0xc6, 0xec, 0x1a, 0xea, 0x39, 0xbb, 0x7e, 0xc9, 0x02, 0xb4, 0xe4, 0x05, 0x2e, 0x89, + 0x4e, 0x60, 0xc3, 0x3c, 0xda, 0xc4, 0xff, 0xf7, 0xb4, 0x69, 0xe1, 0x4e, 0x2b, 0x0c, 0x48, 0x90, + 0x2c, 0x85, 0x81, 0xcb, 0x37, 0xd1, 0x4f, 0xc2, 0x40, 0x42, 0xab, 0xe2, 0xcd, 0x7a, 0x4c, 0x0e, + 0x06, 0xad, 0xe0, 0x70, 0x7f, 0xf6, 0x6c, 0x67, 0x09, 0xd6, 0x04, 0x56, 0x06, 0x7d, 0x02, 0x86, + 0xe2, 0xc4, 0x49, 0xda, 0xb1, 0x68, 0xe8, 0x23, 0xb2, 0xa1, 0x0d, 0x06, 0x3d, 0xdc, 0x9f, 0x9d, + 0x54, 0xc5, 0x38, 0x08, 0x8b, 0x02, 0xe8, 0x09, 0x18, 0xde, 0x21, 0x71, 0xec, 0x6c, 0x4a, 0xf9, + 0x37, 0x29, 0xca, 0x0e, 0xaf, 0x71, 0x30, 0x96, 0x78, 0xf4, 0x28, 0x0c, 0x92, 0x28, 0x0a, 0x23, + 0x31, 0x0f, 0xc6, 0x05, 0xe1, 0xe0, 0x32, 0x05, 0x62, 0x8e, 0xb3, 0xff, 0xad, 0x05, 0x93, 0xaa, + 0xad, 0xbc, 0xae, 0x13, 0x58, 0xde, 0x6f, 0x00, 0x34, 0xe5, 0x07, 0xc6, 0x6c, 0x79, 0x8d, 0x5e, + 0x7a, 0x2c, 0x6f, 0xd2, 0x75, 0x76, 0x63, 0xca, 0x59, 0x81, 0x62, 0xac, 0x71, 0xb3, 0xff, 0xa9, + 0x05, 0xa7, 0x32, 0x5f, 0x74, 0xcd, 0x8b, 0x13, 0xf4, 0x66, 0xc7, 0x57, 0xcd, 0xf5, 0xf7, 0x55, + 0xb4, 0x34, 0xfb, 0x26, 0x35, 0x4b, 0x24, 0x44, 0xfb, 0xa2, 0x2b, 0x30, 0xe8, 0x25, 0x64, 0x47, + 0x7e, 0xcc, 0xa3, 0x5d, 0x3f, 0x86, 0xb7, 0x2a, 0x1d, 0x91, 0x55, 0x5a, 0x12, 0x73, 0x06, 0xf6, + 0x7f, 0xb7, 0xa0, 0xb2, 0x14, 0x06, 0x1b, 0xde, 0xe6, 0x9a, 0xd3, 0x3a, 0x81, 0xb1, 0x58, 0x85, + 0x01, 0xc6, 0x9d, 0x37, 0xfc, 0xf1, 0xfc, 0x86, 0x8b, 0xe6, 0xcc, 0xd1, 0x5d, 0x8c, 0x6b, 0x0b, + 0x4a, 0xfc, 0x50, 0x10, 0x66, 0x2c, 0x66, 0x3e, 0x0e, 0x15, 0x45, 0x80, 0xa6, 0xa0, 0xbc, 0x4d, + 0xb8, 0x86, 0x58, 0xc1, 0xf4, 0x27, 0x3a, 0x0d, 0x83, 0xbb, 0x8e, 0xdf, 0x16, 0xcb, 0x13, 0xf3, + 0x3f, 0x9f, 0x2c, 0xbd, 0x68, 0xd9, 0xdf, 0x62, 0x6b, 0x4c, 0x54, 0xb2, 0x1c, 0xec, 0x8a, 0xe5, + 0xff, 0x2e, 0x9c, 0xf6, 0x73, 0xa4, 0x8e, 0xe8, 0x88, 0xfe, 0xa5, 0xd4, 0x43, 0xa2, 0xad, 0xa7, + 0xf3, 0xb0, 0x38, 0xb7, 0x0e, 0x2a, 0xb8, 0xc3, 0x16, 0x9d, 0x51, 0x8e, 0xcf, 0xda, 0x2b, 0x76, + 0xfe, 0x1b, 0x02, 0x86, 0x15, 0x96, 0x0a, 0x88, 0xd3, 0xaa, 0xf1, 0x57, 0xc9, 0x5e, 0x83, 0xf8, + 0xa4, 0x99, 0x84, 0xd1, 0xfb, 0xda, 0xfc, 0x87, 0x79, 0xef, 0x73, 0xf9, 0x32, 0x2a, 0x18, 0x94, + 0xaf, 0x92, 0x3d, 0x3e, 0x14, 0xfa, 0xd7, 0x95, 0xbb, 0x7e, 0xdd, 0x6f, 0x58, 0x30, 0xae, 0xbe, + 0xee, 0x04, 0x16, 0xd2, 0xa2, 0xb9, 0x90, 0x1e, 0xee, 0x3a, 0x1f, 0x0b, 0x96, 0xd0, 0x8f, 0x98, + 0x08, 0x10, 0x34, 0xf5, 0x28, 0xa4, 0x5d, 0x43, 0x65, 0xf6, 0xfb, 0x39, 0x20, 0xfd, 0x7c, 0xd7, + 0x55, 0xb2, 0xb7, 0x1e, 0xd2, 0x0d, 0x3f, 0xff, 0xbb, 0x8c, 0x51, 0x1b, 0xe8, 0x3a, 0x6a, 0xbf, + 0x59, 0x82, 0x33, 0xaa, 0x07, 0x8c, 0x2d, 0xf5, 0xc7, 0xbd, 0x0f, 0x9e, 0x85, 0x51, 0x97, 0x6c, + 0x38, 0x6d, 0x3f, 0x51, 0x46, 0xc0, 0x20, 0x37, 0x04, 0x6b, 0x29, 0x18, 0xeb, 0x34, 0x47, 0xe8, + 0xb6, 0x7f, 0x0d, 0x4c, 0xf6, 0x26, 0x0e, 0x9d, 0xc1, 0x54, 0xdf, 0xd2, 0x4c, 0xb9, 0x31, 0xdd, + 0x94, 0x13, 0x66, 0xdb, 0xa3, 0x30, 0xe8, 0xed, 0xd0, 0xbd, 0xb8, 0x64, 0x6e, 0xb1, 0xab, 0x14, + 0x88, 0x39, 0x0e, 0x7d, 0x04, 0x86, 0x9b, 0xe1, 0xce, 0x8e, 0x13, 0xb8, 0xd5, 0x32, 0xd3, 0x00, + 0x47, 0xe9, 0x76, 0xbd, 0xc4, 0x41, 0x58, 0xe2, 0xd0, 0x43, 0x30, 0xe0, 0x44, 0x9b, 0x71, 0x75, + 0x80, 0xd1, 0x8c, 0xd0, 0x9a, 0x16, 0xa2, 0xcd, 0x18, 0x33, 0x28, 0xd5, 0xec, 0xee, 0x84, 0xd1, + 0xb6, 0x17, 0x6c, 0xd6, 0xbc, 0x88, 0xa9, 0x69, 0x9a, 0x66, 0xf7, 0xba, 0xc2, 0x60, 0x8d, 0x0a, + 0xad, 0xc0, 0x60, 0x2b, 0x8c, 0x92, 0xb8, 0x3a, 0xc4, 0xba, 0xfb, 0x91, 0x82, 0xa5, 0xc4, 0xbf, + 0xb6, 0x1e, 0x46, 0x49, 0xfa, 0x01, 0xf4, 0x5f, 0x8c, 0x79, 0x71, 0xf4, 0x09, 0x28, 0x93, 0x60, + 0xb7, 0x3a, 0xcc, 0xb8, 0xcc, 0xe4, 0x71, 0x59, 0x0e, 0x76, 0x6f, 0x39, 0x51, 0x2a, 0x67, 0x96, + 0x83, 0x5d, 0x4c, 0xcb, 0xa0, 0xcf, 0x42, 0x45, 0xba, 0x81, 0xe2, 0xea, 0x48, 0xf1, 0x14, 0xc3, + 0x82, 0x08, 0x93, 0x77, 0xda, 0x5e, 0x44, 0x76, 0x48, 0x90, 0xc4, 0xa9, 0xf9, 0x22, 0xb1, 0x31, + 0x4e, 0xb9, 0xa1, 0xcf, 0xc2, 0x18, 0xd7, 0xfc, 0xd6, 0xc2, 0x76, 0x90, 0xc4, 0xd5, 0x0a, 0x6b, + 0x5e, 0xae, 0xcf, 0xe0, 0x56, 0x4a, 0xb7, 0x78, 0x5a, 0x30, 0x1d, 0xd3, 0x80, 0x31, 0x36, 0x58, + 0x21, 0x0c, 0xe3, 0xbe, 0xb7, 0x4b, 0x02, 0x12, 0xc7, 0xf5, 0x28, 0xbc, 0x4d, 0xaa, 0xc0, 0x5a, + 0x7e, 0x2e, 0xdf, 0x94, 0x0e, 0x6f, 0x93, 0xc5, 0xe9, 0x83, 0xfd, 0xd9, 0xf1, 0x6b, 0x7a, 0x19, + 0x6c, 0xb2, 0x40, 0x37, 0x61, 0x82, 0xaa, 0x94, 0x5e, 0xca, 0x74, 0xb4, 0x17, 0x53, 0x74, 0xb0, + 0x3f, 0x3b, 0x81, 0x8d, 0x42, 0x38, 0xc3, 0x04, 0xbd, 0x0a, 0x15, 0xdf, 0xdb, 0x20, 0xcd, 0xbd, + 0xa6, 0x4f, 0xaa, 0x63, 0x8c, 0x63, 0xee, 0xb2, 0xba, 0x26, 0x89, 0xb8, 0xca, 0xae, 0xfe, 0xe2, + 0xb4, 0x38, 0xba, 0x05, 0x67, 0x13, 0x12, 0xed, 0x78, 0x81, 0x43, 0x97, 0x83, 0xd0, 0x27, 0x99, + 0x43, 0x62, 0x9c, 0xcd, 0xb7, 0xf3, 0xa2, 0xeb, 0xce, 0xae, 0xe7, 0x52, 0xe1, 0x82, 0xd2, 0xe8, + 0x06, 0x4c, 0xb2, 0x95, 0x50, 0x6f, 0xfb, 0x7e, 0x3d, 0xf4, 0xbd, 0xe6, 0x5e, 0x75, 0x82, 0x31, + 0xfc, 0x88, 0xf4, 0x38, 0xac, 0x9a, 0x68, 0x6a, 0x60, 0xa5, 0xff, 0x70, 0xb6, 0x34, 0xba, 0x0d, + 0x93, 0x31, 0x69, 0xb6, 0x23, 0x2f, 0xd9, 0xa3, 0xf3, 0x97, 0xdc, 0x4d, 0xaa, 0x93, 0xc5, 0x66, + 0x62, 0xc3, 0x24, 0xe5, 0x9e, 0x9d, 0x0c, 0x10, 0x67, 0x19, 0xd2, 0xa5, 0x1d, 0x27, 0xae, 0x17, + 0x54, 0xa7, 0x98, 0xc4, 0x50, 0x2b, 0xa3, 0x41, 0x81, 0x98, 0xe3, 0x98, 0xcd, 0x4d, 0x7f, 0xdc, + 0xa0, 0x12, 0x74, 0x9a, 0x11, 0xa6, 0x36, 0xb7, 0x44, 0xe0, 0x94, 0x86, 0x6e, 0xcb, 0x49, 0xb2, + 0x57, 0x45, 0x8c, 0x54, 0x2d, 0x97, 0xf5, 0xf5, 0xcf, 0x62, 0x0a, 0x47, 0xd7, 0x60, 0x98, 0x04, + 0xbb, 0x2b, 0x51, 0xb8, 0x53, 0x3d, 0x55, 0xbc, 0x66, 0x97, 0x39, 0x09, 0x17, 0xe8, 0xa9, 0x01, + 0x20, 0xc0, 0x58, 0xb2, 0x40, 0x77, 0xa1, 0x9a, 0x33, 0x22, 0x7c, 0x00, 0x4e, 0xb3, 0x01, 0x78, + 0x59, 0x94, 0xad, 0xae, 0x17, 0xd0, 0x1d, 0x76, 0xc1, 0xe1, 0x42, 0xee, 0xf6, 0x6d, 0x98, 0x50, + 0x82, 0x85, 0x8d, 0x2d, 0x9a, 0x85, 0x41, 0x2a, 0x31, 0xa5, 0x11, 0x5c, 0xa1, 0x5d, 0x49, 0x05, + 0x69, 0x8c, 0x39, 0x9c, 0x75, 0xa5, 0xf7, 0x2e, 0x59, 0xdc, 0x4b, 0x08, 0x37, 0x8b, 0xca, 0x5a, + 0x57, 0x4a, 0x04, 0x4e, 0x69, 0xec, 0xff, 0xc7, 0x15, 0x93, 0x54, 0x7a, 0xf5, 0x21, 0xaf, 0x9f, + 0x86, 0x91, 0xad, 0x30, 0x4e, 0x28, 0x35, 0xab, 0x63, 0x30, 0x55, 0x45, 0xae, 0x08, 0x38, 0x56, + 0x14, 0xe8, 0x25, 0x18, 0x6f, 0xea, 0x15, 0x88, 0xcd, 0xe6, 0x8c, 0x28, 0x62, 0xd6, 0x8e, 0x4d, + 0x5a, 0xf4, 0x22, 0x8c, 0x30, 0xcf, 0x70, 0x33, 0xf4, 0x85, 0x01, 0x26, 0x77, 0xcc, 0x91, 0xba, + 0x80, 0x1f, 0x6a, 0xbf, 0xb1, 0xa2, 0xa6, 0x66, 0x2c, 0x6d, 0xc2, 0x6a, 0x5d, 0x88, 0x79, 0x65, + 0xc6, 0x5e, 0x61, 0x50, 0x2c, 0xb0, 0xf6, 0x5f, 0x2d, 0x69, 0xbd, 0x4c, 0x4d, 0x0a, 0x82, 0xea, + 0x30, 0x7c, 0xc7, 0xf1, 0x12, 0x2f, 0xd8, 0x14, 0xfb, 0xf9, 0x13, 0x5d, 0x65, 0x3e, 0x2b, 0xf4, + 0x3a, 0x2f, 0xc0, 0x77, 0x25, 0xf1, 0x07, 0x4b, 0x36, 0x94, 0x63, 0xd4, 0x0e, 0x02, 0xca, 0xb1, + 0xd4, 0x2f, 0x47, 0xcc, 0x0b, 0x70, 0x8e, 0xe2, 0x0f, 0x96, 0x6c, 0xd0, 0x9b, 0x00, 0x72, 0xde, + 0x10, 0x57, 0x78, 0x64, 0x9f, 0xee, 0xcd, 0x74, 0x5d, 0x95, 0x59, 0x9c, 0xa0, 0x7b, 0x5e, 0xfa, + 0x1f, 0x6b, 0xfc, 0xec, 0x84, 0xe9, 0x3d, 0x9d, 0x8d, 0x41, 0x9f, 0xa3, 0x4b, 0xd5, 0x89, 0x12, + 0xe2, 0x2e, 0x24, 0xa2, 0x73, 0x9e, 0xec, 0x4f, 0x6d, 0x5d, 0xf7, 0x76, 0x88, 0xbe, 0xac, 0x05, + 0x13, 0x9c, 0xf2, 0xb3, 0x7f, 0xbb, 0x0c, 0xd5, 0xa2, 0xe6, 0xd2, 0x49, 0x47, 0xee, 0x7a, 0xc9, + 0x12, 0x55, 0x57, 0x2c, 0x73, 0xd2, 0x2d, 0x0b, 0x38, 0x56, 0x14, 0x74, 0xf4, 0x63, 0x6f, 0x53, + 0x5a, 0x1d, 0x83, 0xe9, 0xe8, 0x37, 0x18, 0x14, 0x0b, 0x2c, 0xa5, 0x8b, 0x88, 0x13, 0x0b, 0x97, + 0xbf, 0x36, 0x4b, 0x30, 0x83, 0x62, 0x81, 0xd5, 0x1d, 0x06, 0x03, 0x3d, 0x1c, 0x06, 0x46, 0x17, + 0x0d, 0x1e, 0x6f, 0x17, 0xa1, 0xb7, 0x00, 0x36, 0xbc, 0xc0, 0x8b, 0xb7, 0x18, 0xf7, 0xa1, 0x23, + 0x73, 0x57, 0xca, 0xce, 0x8a, 0xe2, 0x82, 0x35, 0x8e, 0xe8, 0x05, 0x18, 0x55, 0x0b, 0x70, 0xb5, + 0x56, 0x1d, 0x36, 0xfd, 0xc9, 0xa9, 0x34, 0xaa, 0x61, 0x9d, 0xce, 0x7e, 0x3b, 0x3b, 0x5f, 0xc4, + 0x0a, 0xd0, 0xfa, 0xd7, 0xea, 0xb7, 0x7f, 0x4b, 0xdd, 0xfb, 0xd7, 0xfe, 0xfd, 0x32, 0x4c, 0x1a, + 0x95, 0xb5, 0xe3, 0x3e, 0x64, 0xd6, 0x65, 0xba, 0x11, 0x39, 0x09, 0x11, 0xeb, 0xcf, 0xee, 0xbd, + 0x54, 0xf4, 0xcd, 0x8a, 0xae, 0x00, 0x5e, 0x1e, 0xbd, 0x05, 0x15, 0xdf, 0x89, 0x99, 0xf3, 0x81, + 0x88, 0x75, 0xd7, 0x0f, 0xb3, 0x54, 0xd1, 0x77, 0xe2, 0x44, 0xdb, 0x0b, 0x38, 0xef, 0x94, 0x25, + 0xdd, 0x31, 0xa9, 0x72, 0x22, 0xcf, 0x94, 0x54, 0x23, 0xa8, 0x06, 0xb3, 0x87, 0x39, 0x0e, 0xbd, + 0x08, 0x63, 0x11, 0x61, 0xb3, 0x62, 0x89, 0xea, 0x5a, 0x6c, 0x9a, 0x0d, 0xa6, 0x4a, 0x19, 0xd6, + 0x70, 0xd8, 0xa0, 0x4c, 0x75, 0xed, 0xa1, 0x2e, 0xba, 0xf6, 0x13, 0x30, 0xcc, 0x7e, 0xa8, 0x19, + 0xa0, 0x46, 0x63, 0x95, 0x83, 0xb1, 0xc4, 0x67, 0x27, 0xcc, 0x48, 0x9f, 0x13, 0xe6, 0x49, 0x98, + 0xa8, 0x39, 0x64, 0x27, 0x0c, 0x96, 0x03, 0xb7, 0x15, 0x7a, 0x41, 0x82, 0xaa, 0x30, 0xc0, 0x76, + 0x07, 0xbe, 0xb6, 0x07, 0x28, 0x07, 0x3c, 0x40, 0x35, 0x67, 0xfb, 0x8f, 0x4a, 0x30, 0x5e, 0x23, + 0x3e, 0x49, 0x08, 0xb7, 0x35, 0x62, 0xb4, 0x02, 0x68, 0x33, 0x72, 0x9a, 0xa4, 0x4e, 0x22, 0x2f, + 0x74, 0x1b, 0xa4, 0x19, 0x06, 0xec, 0xa4, 0x86, 0x6e, 0x77, 0x67, 0x0f, 0xf6, 0x67, 0xd1, 0xe5, + 0x0e, 0x2c, 0xce, 0x29, 0x81, 0xde, 0x80, 0xf1, 0x56, 0x44, 0x0c, 0x1f, 0x9a, 0x55, 0xa4, 0x2e, + 0xd4, 0x75, 0x42, 0xae, 0xa9, 0x1a, 0x20, 0x6c, 0xb2, 0x42, 0x9f, 0x81, 0xa9, 0x30, 0x6a, 0x6d, + 0x39, 0x41, 0x8d, 0xb4, 0x48, 0xe0, 0x52, 0x55, 0x5c, 0xf8, 0x08, 0x4e, 0x1f, 0xec, 0xcf, 0x4e, + 0xdd, 0xc8, 0xe0, 0x70, 0x07, 0x35, 0x7a, 0x03, 0xa6, 0x5b, 0x51, 0xd8, 0x72, 0x36, 0xd9, 0x44, + 0x11, 0x1a, 0x07, 0x97, 0x3e, 0x4f, 0x1f, 0xec, 0xcf, 0x4e, 0xd7, 0xb3, 0xc8, 0xc3, 0xfd, 0xd9, + 0x53, 0xac, 0xa3, 0x28, 0x24, 0x45, 0xe2, 0x4e, 0x36, 0xf6, 0x26, 0x9c, 0xa9, 0x85, 0x77, 0x82, + 0x3b, 0x4e, 0xe4, 0x2e, 0xd4, 0x57, 0x35, 0xe3, 0xfe, 0xba, 0x34, 0x2e, 0xf9, 0xb9, 0x57, 0xee, + 0x3e, 0xa5, 0x95, 0xe4, 0xea, 0xff, 0x8a, 0xe7, 0x93, 0x02, 0x27, 0xc2, 0x5f, 0x2f, 0x19, 0x35, + 0xa5, 0xf4, 0xca, 0x53, 0x6f, 0x15, 0x7a, 0xea, 0x5f, 0x83, 0x91, 0x0d, 0x8f, 0xf8, 0x2e, 0x26, + 0x1b, 0x62, 0x64, 0x1e, 0x2f, 0x3e, 0xc0, 0x58, 0xa1, 0x94, 0xd2, 0x69, 0xc4, 0x4d, 0xd3, 0x15, + 0x51, 0x18, 0x2b, 0x36, 0x68, 0x1b, 0xa6, 0xa4, 0xed, 0x23, 0xb1, 0x62, 0x11, 0x3f, 0xd1, 0xcd, + 0xa0, 0x32, 0x99, 0xb3, 0x01, 0xc4, 0x19, 0x36, 0xb8, 0x83, 0x31, 0xb5, 0x45, 0x77, 0xe8, 0x76, + 0x35, 0xc0, 0xa6, 0x34, 0xb3, 0x45, 0x99, 0x59, 0xcd, 0xa0, 0xf6, 0xd7, 0x2c, 0x78, 0xa0, 0xa3, + 0x67, 0x84, 0x7b, 0xe1, 0x98, 0x47, 0x21, 0x6b, 0xee, 0x97, 0x7a, 0x9b, 0xfb, 0xf6, 0xaf, 0x5b, + 0x70, 0x7a, 0x79, 0xa7, 0x95, 0xec, 0xd5, 0x3c, 0xf3, 0x34, 0xe1, 0xe3, 0x30, 0xb4, 0x43, 0x5c, + 0xaf, 0xbd, 0x23, 0x46, 0x6e, 0x56, 0x8a, 0xf4, 0x35, 0x06, 0x3d, 0xdc, 0x9f, 0x1d, 0x6f, 0x24, + 0x61, 0xe4, 0x6c, 0x12, 0x0e, 0xc0, 0x82, 0x1c, 0xfd, 0x0c, 0xd7, 0x4d, 0xaf, 0x79, 0x3b, 0x9e, + 0x3c, 0x90, 0xea, 0xea, 0xf2, 0x9a, 0x93, 0x1d, 0x3a, 0xf7, 0x5a, 0xdb, 0x09, 0x12, 0x2f, 0xd9, + 0x33, 0x75, 0x59, 0xc6, 0x08, 0xa7, 0x3c, 0xed, 0xef, 0x59, 0x30, 0x29, 0xe5, 0xc9, 0x82, 0xeb, + 0x46, 0x24, 0x8e, 0xd1, 0x0c, 0x94, 0xbc, 0x96, 0x68, 0x29, 0x88, 0xd2, 0xa5, 0xd5, 0x3a, 0x2e, + 0x79, 0x2d, 0x54, 0x87, 0x0a, 0x3f, 0xdb, 0x4a, 0x27, 0x58, 0x5f, 0x27, 0x64, 0xcc, 0xf6, 0x5b, + 0x97, 0x25, 0x71, 0xca, 0x44, 0x6a, 0xc6, 0x6c, 0x2f, 0x2a, 0x9b, 0x27, 0x2d, 0x57, 0x04, 0x1c, + 0x2b, 0x0a, 0x74, 0x11, 0x46, 0x82, 0xd0, 0xe5, 0x47, 0x8d, 0x7c, 0x5d, 0xb3, 0x69, 0x7b, 0x5d, + 0xc0, 0xb0, 0xc2, 0xda, 0x3f, 0x6f, 0xc1, 0x98, 0xfc, 0xb2, 0x3e, 0x95, 0x74, 0xba, 0xbc, 0x52, + 0x05, 0x3d, 0x5d, 0x5e, 0x54, 0xc9, 0x66, 0x18, 0x43, 0xb7, 0x2e, 0x1f, 0x45, 0xb7, 0xb6, 0xbf, + 0x5a, 0x82, 0x09, 0xd9, 0x9c, 0x46, 0xfb, 0x76, 0x4c, 0x12, 0xb4, 0x0e, 0x15, 0x87, 0x77, 0x39, + 0x91, 0xb3, 0xf6, 0xd1, 0x7c, 0xab, 0xcb, 0x18, 0x9f, 0x74, 0x44, 0x17, 0x64, 0x69, 0x9c, 0x32, + 0x42, 0x3e, 0x4c, 0x07, 0x61, 0xc2, 0xb6, 0x3e, 0x85, 0xef, 0x76, 0x36, 0x90, 0xe5, 0x7e, 0x4e, + 0x70, 0x9f, 0xbe, 0x9e, 0xe5, 0x82, 0x3b, 0x19, 0xa3, 0x65, 0xe9, 0xe9, 0x29, 0xb3, 0x1a, 0x2e, + 0x74, 0xab, 0xa1, 0xd8, 0xd1, 0x63, 0xff, 0x9e, 0x05, 0x15, 0x49, 0x76, 0x12, 0xc7, 0x40, 0x6b, + 0x30, 0x1c, 0xb3, 0x41, 0x90, 0x5d, 0x63, 0x77, 0x6b, 0x38, 0x1f, 0xaf, 0x74, 0x47, 0xe7, 0xff, + 0x63, 0x2c, 0x79, 0x30, 0x57, 0xb5, 0x6a, 0xfe, 0x07, 0xc4, 0x55, 0xad, 0xda, 0x53, 0xb0, 0xcb, + 0xfc, 0x27, 0xd6, 0x66, 0xcd, 0x9e, 0xa7, 0x8a, 0x67, 0x2b, 0x22, 0x1b, 0xde, 0xdd, 0xac, 0xe2, + 0x59, 0x67, 0x50, 0x2c, 0xb0, 0xe8, 0x4d, 0x18, 0x6b, 0x4a, 0x0f, 0x6f, 0x2a, 0x06, 0x1e, 0xeb, + 0xea, 0x2f, 0x57, 0x47, 0x2b, 0x3c, 0x20, 0x67, 0x49, 0x2b, 0x8f, 0x0d, 0x6e, 0x54, 0xc2, 0xa4, + 0xa7, 0xc2, 0xe5, 0xae, 0xce, 0x95, 0x88, 0x24, 0x29, 0xdf, 0xc2, 0x03, 0x61, 0xfb, 0x57, 0x2c, + 0x18, 0xe2, 0x7e, 0xc2, 0xfe, 0x1c, 0xab, 0xda, 0x51, 0x51, 0xda, 0x77, 0xb7, 0x28, 0x50, 0x9c, + 0x1c, 0xa1, 0x35, 0xa8, 0xb0, 0x1f, 0xcc, 0x5f, 0x52, 0x2e, 0x8e, 0x44, 0xe2, 0xb5, 0xea, 0x0d, + 0xbc, 0x25, 0x8b, 0xe1, 0x94, 0x83, 0xfd, 0x8b, 0x65, 0x2a, 0xaa, 0x52, 0x52, 0x63, 0x17, 0xb7, + 0xee, 0xdf, 0x2e, 0x5e, 0xba, 0x5f, 0xbb, 0xf8, 0x26, 0x4c, 0x36, 0xb5, 0x73, 0xa9, 0x74, 0x24, + 0x2f, 0x76, 0x9d, 0x24, 0xda, 0x11, 0x16, 0xf7, 0x95, 0x2d, 0x99, 0x4c, 0x70, 0x96, 0x2b, 0xfa, + 0x1c, 0x8c, 0xf1, 0x71, 0x16, 0xb5, 0x0c, 0xb0, 0x5a, 0x3e, 0x52, 0x3c, 0x5f, 0xf4, 0x2a, 0xd8, + 0x4c, 0x6c, 0x68, 0xc5, 0xb1, 0xc1, 0xcc, 0xfe, 0xf2, 0x20, 0x0c, 0x2e, 0xef, 0x92, 0x20, 0x39, + 0x01, 0x81, 0xd4, 0x84, 0x09, 0x2f, 0xd8, 0x0d, 0xfd, 0x5d, 0xe2, 0x72, 0xfc, 0x51, 0x36, 0xd7, + 0xb3, 0x82, 0xf5, 0xc4, 0xaa, 0xc1, 0x02, 0x67, 0x58, 0xde, 0x0f, 0xcb, 0xfd, 0x32, 0x0c, 0xf1, + 0xb1, 0x17, 0x66, 0x7b, 0xae, 0x17, 0x9c, 0x75, 0xa2, 0x58, 0x05, 0xa9, 0x57, 0x81, 0xbb, 0xdd, + 0x45, 0x71, 0xf4, 0x36, 0x4c, 0x6c, 0x78, 0x51, 0x9c, 0x50, 0x93, 0x3b, 0x4e, 0x9c, 0x9d, 0xd6, + 0x3d, 0x58, 0xea, 0xaa, 0x1f, 0x56, 0x0c, 0x4e, 0x38, 0xc3, 0x19, 0x6d, 0xc2, 0x38, 0x35, 0x1e, + 0xd3, 0xaa, 0x86, 0x8f, 0x5c, 0x95, 0x72, 0xc5, 0x5d, 0xd3, 0x19, 0x61, 0x93, 0x2f, 0x15, 0x26, + 0x4d, 0x66, 0x6c, 0x8e, 0x30, 0x8d, 0x42, 0x09, 0x13, 0x6e, 0x65, 0x72, 0x1c, 0x95, 0x49, 0x2c, + 0x9e, 0xa3, 0x62, 0xca, 0xa4, 0x34, 0x6a, 0xc3, 0xfe, 0x3a, 0xdd, 0x1d, 0x69, 0x1f, 0x9e, 0xc0, + 0xd6, 0xf2, 0x8a, 0xb9, 0xb5, 0x9c, 0x2b, 0x1c, 0xcf, 0x82, 0x6d, 0xe5, 0xf3, 0x30, 0xaa, 0x0d, + 0x37, 0x9a, 0x87, 0x4a, 0x53, 0x06, 0x1f, 0x08, 0xa9, 0xab, 0xd4, 0x17, 0x15, 0x95, 0x80, 0x53, + 0x1a, 0xda, 0x1b, 0x54, 0xd9, 0xcb, 0x06, 0x23, 0x51, 0x55, 0x10, 0x33, 0x8c, 0xfd, 0x1c, 0xc0, + 0xf2, 0x5d, 0xd2, 0x5c, 0xe0, 0xc6, 0x97, 0x76, 0xc6, 0x65, 0x15, 0x9f, 0x71, 0xd1, 0x1d, 0x7a, + 0x62, 0x65, 0xc9, 0x50, 0xca, 0xe7, 0x00, 0xb8, 0x16, 0xfa, 0xfa, 0xeb, 0xd7, 0xa5, 0x77, 0x98, + 0x3b, 0xf8, 0x14, 0x14, 0x6b, 0x14, 0xe8, 0x1c, 0x94, 0xfd, 0x76, 0x20, 0x94, 0xc3, 0xe1, 0x83, + 0xfd, 0xd9, 0xf2, 0xb5, 0x76, 0x80, 0x29, 0x4c, 0x8b, 0xff, 0x29, 0xf7, 0x1d, 0xff, 0xd3, 0x3b, + 0xfe, 0xf5, 0xcf, 0x97, 0x61, 0x6a, 0xc5, 0x27, 0x77, 0x8d, 0x56, 0x3f, 0x06, 0x43, 0x6e, 0xe4, + 0xed, 0x92, 0x28, 0xbb, 0x49, 0xd7, 0x18, 0x14, 0x0b, 0x6c, 0xdf, 0x21, 0x49, 0x37, 0x3b, 0xb7, + 0xdb, 0xe3, 0x0e, 0xc2, 0xea, 0xf9, 0xa5, 0xe8, 0x4d, 0x18, 0xe6, 0x27, 0xa1, 0x71, 0x75, 0x90, + 0x4d, 0xbb, 0x67, 0xf3, 0x9a, 0x90, 0xed, 0x8b, 0x39, 0xe1, 0xdb, 0xe0, 0x61, 0x21, 0x4a, 0x46, + 0x09, 0x28, 0x96, 0x2c, 0x67, 0x3e, 0x09, 0x63, 0x3a, 0xe5, 0x91, 0xe2, 0x43, 0xfe, 0x82, 0x05, + 0xa7, 0x56, 0xfc, 0xb0, 0xb9, 0x9d, 0x89, 0x0f, 0x7b, 0x01, 0x46, 0xe9, 0x72, 0x89, 0x8d, 0x40, + 0x49, 0x23, 0x88, 0x54, 0xa0, 0xb0, 0x4e, 0xa7, 0x15, 0xbb, 0x79, 0x73, 0xb5, 0x96, 0x17, 0x7b, + 0x2a, 0x50, 0x58, 0xa7, 0xb3, 0xff, 0xc0, 0x82, 0x87, 0x2f, 0x2f, 0x2d, 0xd7, 0x49, 0x14, 0x7b, + 0x71, 0x42, 0x82, 0xa4, 0x23, 0xfc, 0x95, 0xea, 0x6e, 0xae, 0xd6, 0x94, 0x54, 0x77, 0xab, 0xb1, + 0x56, 0x08, 0xec, 0x07, 0x25, 0xb4, 0xfb, 0xd7, 0x2c, 0x38, 0x75, 0xd9, 0x4b, 0x30, 0x69, 0x85, + 0xd9, 0xf0, 0xd3, 0x88, 0xb4, 0xc2, 0xd8, 0x4b, 0xc2, 0x68, 0x2f, 0x1b, 0x7e, 0x8a, 0x15, 0x06, + 0x6b, 0x54, 0xbc, 0xe6, 0x5d, 0x2f, 0xa6, 0x2d, 0x2d, 0x99, 0x06, 0x24, 0x16, 0x70, 0xac, 0x28, + 0xe8, 0x87, 0xb9, 0x5e, 0xc4, 0x14, 0x80, 0x3d, 0xb1, 0x5a, 0xd5, 0x87, 0xd5, 0x24, 0x02, 0xa7, + 0x34, 0xf6, 0xd7, 0x2c, 0x38, 0x73, 0xd9, 0x6f, 0xc7, 0x09, 0x89, 0x36, 0x62, 0xa3, 0xb1, 0xcf, + 0x41, 0x85, 0x48, 0x25, 0x5b, 0xb4, 0x55, 0x6d, 0x0b, 0x4a, 0xfb, 0xe6, 0xb1, 0xaf, 0x8a, 0xae, + 0x8f, 0x60, 0xcb, 0xa3, 0x05, 0x09, 0x7e, 0xb3, 0x04, 0xe3, 0x57, 0xd6, 0xd7, 0xeb, 0x97, 0x49, + 0x22, 0x24, 0x62, 0x6f, 0x27, 0x11, 0xd6, 0xec, 0xdc, 0x6e, 0xaa, 0x4c, 0x3b, 0xf1, 0xfc, 0x39, + 0x7e, 0xed, 0x60, 0x6e, 0x35, 0x48, 0x6e, 0x44, 0x8d, 0x24, 0xf2, 0x82, 0xcd, 0x5c, 0xcb, 0x58, + 0xca, 0xed, 0x72, 0x91, 0xdc, 0x46, 0xcf, 0xc1, 0x10, 0xbb, 0xf7, 0x20, 0x95, 0x8a, 0x07, 0x95, + 0x26, 0xc0, 0xa0, 0x87, 0xfb, 0xb3, 0x95, 0x9b, 0x78, 0x95, 0xff, 0xc1, 0x82, 0x14, 0xdd, 0x84, + 0xd1, 0xad, 0x24, 0x69, 0x5d, 0x21, 0x8e, 0x4b, 0x22, 0x29, 0x1d, 0xce, 0xe7, 0x49, 0x07, 0xda, + 0x09, 0x9c, 0x2c, 0x5d, 0x50, 0x29, 0x2c, 0xc6, 0x3a, 0x1f, 0xbb, 0x01, 0x90, 0xe2, 0x8e, 0xc9, + 0x2a, 0xb0, 0x7f, 0x68, 0xc1, 0xf0, 0x15, 0x27, 0x70, 0x7d, 0x12, 0xa1, 0x97, 0x61, 0x80, 0xdc, + 0x25, 0x4d, 0xb1, 0x41, 0xe7, 0x36, 0x38, 0xdd, 0xc4, 0xb8, 0x9f, 0x8b, 0xfe, 0xc7, 0xac, 0x14, + 0xba, 0x02, 0xc3, 0xb4, 0xb5, 0x97, 0x55, 0x14, 0xf2, 0x23, 0x45, 0x5f, 0xac, 0x86, 0x9d, 0xef, + 0x7b, 0x02, 0x84, 0x65, 0x71, 0xe6, 0xaf, 0x69, 0xb6, 0x1a, 0x54, 0x80, 0x25, 0xdd, 0xac, 0xa9, + 0xf5, 0xa5, 0x3a, 0x27, 0x12, 0xdc, 0xb8, 0xbf, 0x46, 0x02, 0x71, 0xca, 0xc4, 0x5e, 0x87, 0x0a, + 0x1d, 0xd4, 0x05, 0xdf, 0x73, 0xba, 0xbb, 0x8a, 0x9e, 0x82, 0x8a, 0x74, 0xdb, 0xc4, 0x22, 0x90, + 0x99, 0x71, 0x95, 0x5e, 0x9d, 0x18, 0xa7, 0x78, 0xfb, 0x45, 0x38, 0xcd, 0xce, 0x41, 0x9d, 0x64, + 0xcb, 0x58, 0x63, 0x3d, 0x27, 0xb3, 0xfd, 0x8d, 0x01, 0x98, 0x5e, 0x6d, 0x2c, 0x35, 0x4c, 0x6f, + 0xe0, 0x8b, 0x30, 0xc6, 0xb7, 0x6e, 0x3a, 0x45, 0x1d, 0x5f, 0x94, 0x57, 0xde, 0xfe, 0x75, 0x0d, + 0x87, 0x0d, 0x4a, 0xf4, 0x30, 0x94, 0xbd, 0x77, 0x82, 0x6c, 0xfc, 0xda, 0xea, 0x6b, 0xd7, 0x31, + 0x85, 0x53, 0x34, 0xd5, 0x02, 0xb8, 0x48, 0x54, 0x68, 0xa5, 0x09, 0xbc, 0x02, 0x13, 0x5e, 0xdc, + 0x8c, 0xbd, 0xd5, 0x80, 0xca, 0x0b, 0xa7, 0x29, 0x27, 0x7b, 0xaa, 0xa2, 0xd3, 0xa6, 0x2a, 0x2c, + 0xce, 0x50, 0x6b, 0xf2, 0x79, 0xb0, 0x6f, 0x4d, 0xa2, 0x67, 0x90, 0x33, 0x55, 0x92, 0x5a, 0xec, + 0xeb, 0x62, 0x16, 0x4b, 0x23, 0x94, 0x24, 0xfe, 0xc1, 0x31, 0x96, 0x38, 0x74, 0x19, 0xa6, 0x9b, + 0x5b, 0x4e, 0x6b, 0xa1, 0x9d, 0x6c, 0xd5, 0xbc, 0xb8, 0x19, 0xee, 0x92, 0x68, 0x8f, 0xa9, 0xae, + 0x23, 0xa9, 0x57, 0x48, 0x21, 0x96, 0xae, 0x2c, 0xd4, 0x29, 0x25, 0xee, 0x2c, 0x63, 0x2a, 0x15, + 0x70, 0x6c, 0x4a, 0xc5, 0x02, 0x4c, 0xca, 0xba, 0x1a, 0x24, 0x66, 0x02, 0x7f, 0x94, 0xb5, 0x4e, + 0x5d, 0x20, 0x11, 0x60, 0xd5, 0xb6, 0x2c, 0xbd, 0xfd, 0x36, 0x54, 0x54, 0x9c, 0x97, 0x0c, 0x55, + 0xb4, 0x0a, 0x42, 0x15, 0x7b, 0x8b, 0x6a, 0xe9, 0xad, 0x2e, 0xe7, 0x7a, 0xab, 0xff, 0x86, 0x05, + 0x69, 0xb8, 0x0b, 0xba, 0x02, 0x95, 0x56, 0xc8, 0x4e, 0xac, 0x22, 0x79, 0x0c, 0xfc, 0x60, 0xee, + 0xaa, 0xe6, 0x12, 0x84, 0x77, 0x43, 0x5d, 0x96, 0xc0, 0x69, 0x61, 0xb4, 0x08, 0xc3, 0xad, 0x88, + 0x34, 0x12, 0x76, 0x3f, 0xa0, 0x27, 0x1f, 0x3e, 0xd4, 0x9c, 0x1e, 0xcb, 0x82, 0xf6, 0x6f, 0x5a, + 0x00, 0xdc, 0x19, 0xec, 0x04, 0x9b, 0xe4, 0x04, 0x0c, 0xdc, 0x1a, 0x0c, 0xc4, 0x2d, 0xd2, 0xec, + 0x76, 0x96, 0x98, 0xb6, 0xa7, 0xd1, 0x22, 0xcd, 0xb4, 0xc3, 0xe9, 0x3f, 0xcc, 0x4a, 0xdb, 0x3f, + 0x07, 0x30, 0x91, 0x92, 0x51, 0xc3, 0x03, 0x3d, 0x63, 0x84, 0xc3, 0x9f, 0xcb, 0x84, 0xc3, 0x57, + 0x18, 0xb5, 0x16, 0x01, 0xff, 0x36, 0x94, 0x77, 0x9c, 0xbb, 0xc2, 0xba, 0x79, 0xaa, 0x7b, 0x33, + 0x28, 0xff, 0xb9, 0x35, 0xe7, 0x2e, 0x57, 0x30, 0x9f, 0x92, 0x13, 0x64, 0xcd, 0xb9, 0x7b, 0xc8, + 0x4f, 0x0c, 0x99, 0xac, 0xa1, 0x46, 0xd4, 0x17, 0xff, 0x38, 0xfd, 0xcf, 0xb6, 0x0d, 0x5a, 0x09, + 0xab, 0xcb, 0x0b, 0x84, 0x6b, 0xb4, 0xaf, 0xba, 0xbc, 0x20, 0x5b, 0x97, 0x17, 0xf4, 0x51, 0x97, + 0x17, 0xa0, 0x77, 0x61, 0x58, 0x1c, 0x45, 0xb0, 0x38, 0xbe, 0xd1, 0x4b, 0xf3, 0x7d, 0xd4, 0x27, + 0x4e, 0x32, 0x78, 0x9d, 0xf3, 0x52, 0x81, 0x16, 0xd0, 0x9e, 0xf5, 0xca, 0x0a, 0xd1, 0x5f, 0xb3, + 0x60, 0x42, 0xfc, 0xc6, 0xe4, 0x9d, 0x36, 0x89, 0x13, 0xb1, 0x51, 0x7f, 0xac, 0xff, 0x36, 0x88, + 0x82, 0xbc, 0x29, 0x1f, 0x93, 0xd2, 0xd2, 0x44, 0xf6, 0x6c, 0x51, 0xa6, 0x15, 0xe8, 0x1f, 0x59, + 0x70, 0x7a, 0xc7, 0xb9, 0xcb, 0x6b, 0xe4, 0x30, 0xec, 0x24, 0x5e, 0x28, 0xe2, 0x12, 0x5f, 0xee, + 0x6f, 0xf8, 0x3b, 0x8a, 0xf3, 0x46, 0xca, 0x10, 0xa6, 0xd3, 0x79, 0x24, 0x3d, 0x9b, 0x9a, 0xdb, + 0xae, 0x99, 0x0d, 0x18, 0x91, 0xf3, 0x2d, 0xc7, 0x4c, 0xa9, 0xe9, 0x5a, 0xc8, 0x91, 0x4f, 0x82, + 0x34, 0xb3, 0x86, 0xd5, 0x23, 0xe6, 0xda, 0x7d, 0xad, 0xe7, 0x6d, 0x18, 0xd3, 0xe7, 0xd8, 0x7d, + 0xad, 0xeb, 0x1d, 0x38, 0x95, 0x33, 0x97, 0xee, 0x6b, 0x95, 0x77, 0xe0, 0x5c, 0xe1, 0xfc, 0xb8, + 0x9f, 0x15, 0xdb, 0xdf, 0xb4, 0x74, 0x39, 0x78, 0x02, 0x6e, 0xa1, 0x25, 0xd3, 0x2d, 0x74, 0xbe, + 0xfb, 0xca, 0x29, 0xf0, 0x0d, 0xbd, 0xa9, 0x37, 0x9a, 0x4a, 0x75, 0xf4, 0x2a, 0x0c, 0xf9, 0x14, + 0x22, 0xcf, 0xbf, 0xec, 0xde, 0x2b, 0x32, 0x55, 0x89, 0x18, 0x3c, 0xc6, 0x82, 0x83, 0xfd, 0x3b, + 0x16, 0x0c, 0x9c, 0x40, 0x4f, 0x60, 0xb3, 0x27, 0x9e, 0x29, 0x64, 0x2d, 0x2e, 0x7b, 0xcf, 0x61, + 0xe7, 0xce, 0xf2, 0xdd, 0x84, 0x04, 0x31, 0xd3, 0xab, 0x73, 0x3b, 0xe6, 0xff, 0x96, 0x60, 0x94, + 0x56, 0x25, 0x83, 0x35, 0x5e, 0x82, 0x71, 0xdf, 0xb9, 0x4d, 0x7c, 0xe9, 0xaa, 0xce, 0x5a, 0x97, + 0xd7, 0x74, 0x24, 0x36, 0x69, 0x69, 0xe1, 0x0d, 0xdd, 0x6b, 0x2f, 0xf4, 0x17, 0x55, 0xd8, 0x70, + 0xe9, 0x63, 0x93, 0x96, 0x1a, 0x3a, 0x77, 0x9c, 0xa4, 0xb9, 0x25, 0x2c, 0x4f, 0xd5, 0xdc, 0xd7, + 0x29, 0x10, 0x73, 0x1c, 0xd5, 0xc3, 0xe4, 0xec, 0xbc, 0x45, 0x22, 0xa6, 0x87, 0x71, 0x2d, 0x57, + 0xe9, 0x61, 0xd8, 0x44, 0xe3, 0x2c, 0x3d, 0xfa, 0x24, 0x4c, 0xd0, 0xce, 0x09, 0xdb, 0x89, 0x0c, + 0x45, 0x19, 0x64, 0xa1, 0x28, 0x2c, 0xf2, 0x78, 0xdd, 0xc0, 0xe0, 0x0c, 0x25, 0xaa, 0xc3, 0x69, + 0x2f, 0x68, 0xfa, 0x6d, 0x97, 0xdc, 0x0c, 0xbc, 0xc0, 0x4b, 0x3c, 0xc7, 0xf7, 0xde, 0x25, 0xae, + 0xd0, 0x83, 0x55, 0xd4, 0xd0, 0x6a, 0x0e, 0x0d, 0xce, 0x2d, 0x69, 0xff, 0x0c, 0x9c, 0xba, 0x16, + 0x3a, 0xee, 0xa2, 0xe3, 0x3b, 0x41, 0x93, 0x44, 0xab, 0xc1, 0x66, 0xcf, 0x83, 0x70, 0xfd, 0xd8, + 0xba, 0xd4, 0xeb, 0xd8, 0xda, 0xde, 0x02, 0xa4, 0x57, 0x20, 0x42, 0xb0, 0x30, 0x0c, 0x7b, 0xbc, + 0x2a, 0x31, 0xfd, 0x1f, 0xcf, 0x57, 0x92, 0x3b, 0x5a, 0xa6, 0x05, 0x17, 0x71, 0x00, 0x96, 0x8c, + 0xa8, 0x21, 0x95, 0xa7, 0x55, 0xf7, 0xb6, 0x71, 0xed, 0x17, 0x60, 0x9a, 0x95, 0x3c, 0xa2, 0xfd, + 0xf5, 0x97, 0x2d, 0x98, 0xbc, 0x9e, 0xb9, 0x7b, 0xfa, 0x18, 0x0c, 0xc5, 0x24, 0xca, 0x71, 0x52, + 0x36, 0x18, 0x14, 0x0b, 0xec, 0xb1, 0x3b, 0x43, 0x7e, 0x64, 0x41, 0x85, 0xc5, 0xf6, 0xb6, 0xa8, + 0x2d, 0x75, 0xff, 0x95, 0xda, 0x25, 0x43, 0xa9, 0xcd, 0x35, 0xd2, 0x55, 0x73, 0x8a, 0x74, 0x5a, + 0x74, 0x55, 0xdd, 0xc9, 0xec, 0x62, 0x9f, 0xa7, 0x6c, 0xf8, 0x0d, 0xbe, 0x09, 0xf3, 0xe2, 0xa6, + 0xbc, 0xa5, 0xc9, 0x4e, 0xa2, 0x15, 0xed, 0x07, 0xe4, 0x24, 0x5a, 0xb5, 0xa7, 0x40, 0xfa, 0xd5, + 0xb5, 0x26, 0xb3, 0x5d, 0xe1, 0xd3, 0x2c, 0x62, 0x93, 0xad, 0x4d, 0x75, 0x79, 0x79, 0x56, 0x44, + 0x60, 0x0a, 0xe8, 0x21, 0x13, 0x64, 0xe2, 0x1f, 0xbf, 0x91, 0x9e, 0x16, 0xb1, 0xaf, 0xc0, 0x64, + 0xa6, 0xc3, 0xd0, 0x0b, 0x30, 0xd8, 0xda, 0x72, 0x62, 0x92, 0x89, 0xc0, 0x19, 0xac, 0x53, 0xe0, + 0xe1, 0xfe, 0xec, 0x84, 0x2a, 0xc0, 0x20, 0x98, 0x53, 0xdb, 0xff, 0xcd, 0x82, 0x81, 0xeb, 0xa1, + 0x7b, 0x12, 0x93, 0xe9, 0x15, 0x63, 0x32, 0x3d, 0x54, 0x94, 0xd9, 0xa2, 0x70, 0x1e, 0xad, 0x64, + 0xe6, 0xd1, 0xf9, 0x42, 0x0e, 0xdd, 0xa7, 0xd0, 0x0e, 0x8c, 0xb2, 0x7c, 0x19, 0x22, 0x1a, 0xe8, + 0x39, 0xc3, 0xbe, 0x9a, 0xcd, 0xd8, 0x57, 0x93, 0x1a, 0xa9, 0x66, 0x65, 0x3d, 0x01, 0xc3, 0x22, + 0x22, 0x25, 0x1b, 0x9b, 0x2a, 0x68, 0xb1, 0xc4, 0xdb, 0xbf, 0x52, 0x06, 0x23, 0x3f, 0x07, 0xfa, + 0x3d, 0x0b, 0xe6, 0x22, 0x7e, 0x1b, 0xc7, 0xad, 0xb5, 0x23, 0x2f, 0xd8, 0x6c, 0x34, 0xb7, 0x88, + 0xdb, 0xf6, 0xbd, 0x60, 0x73, 0x75, 0x33, 0x08, 0x15, 0x78, 0xf9, 0x2e, 0x69, 0xb6, 0x99, 0x83, + 0xba, 0x47, 0x32, 0x10, 0x75, 0xe2, 0x7b, 0xe9, 0x60, 0x7f, 0x76, 0x0e, 0x1f, 0x89, 0x37, 0x3e, + 0x62, 0x5b, 0xd0, 0x1f, 0x58, 0x30, 0xcf, 0xd3, 0x56, 0xf4, 0xdf, 0xfe, 0x2e, 0xd6, 0x68, 0x5d, + 0xb2, 0x4a, 0x99, 0xac, 0x93, 0x68, 0x67, 0xf1, 0xe3, 0xa2, 0x43, 0xe7, 0xeb, 0x47, 0xab, 0x0b, + 0x1f, 0xb5, 0x71, 0xf6, 0xbf, 0x28, 0xc3, 0x38, 0xed, 0xc5, 0xf4, 0x06, 0xfa, 0x0b, 0xc6, 0x94, + 0x78, 0x24, 0x33, 0x25, 0xa6, 0x0d, 0xe2, 0xe3, 0xb9, 0x7c, 0x1e, 0xc3, 0xb4, 0xef, 0xc4, 0xc9, + 0x15, 0xe2, 0x44, 0xc9, 0x6d, 0xe2, 0xb0, 0x23, 0x56, 0x31, 0xcd, 0x8f, 0x72, 0x6a, 0xab, 0xbc, + 0x58, 0xd7, 0xb2, 0xcc, 0x70, 0x27, 0x7f, 0xb4, 0x0b, 0x88, 0x1d, 0xe7, 0x46, 0x4e, 0x10, 0xf3, + 0x6f, 0xf1, 0x84, 0xf3, 0xfa, 0x68, 0xb5, 0xce, 0x88, 0x5a, 0xd1, 0xb5, 0x0e, 0x6e, 0x38, 0xa7, + 0x06, 0xed, 0x98, 0x7e, 0xb0, 0xdf, 0x63, 0xfa, 0xa1, 0x1e, 0x01, 0xe0, 0x3f, 0x0b, 0xa7, 0xe8, + 0xa8, 0x98, 0xf1, 0xc3, 0x31, 0x22, 0x30, 0xb9, 0xdd, 0xbe, 0x4d, 0x7c, 0x92, 0x48, 0x98, 0x58, + 0x4a, 0xb9, 0x7a, 0xb8, 0x59, 0x3a, 0x55, 0xf6, 0xae, 0x9a, 0x2c, 0x70, 0x96, 0xa7, 0xfd, 0xab, + 0x16, 0xb0, 0x08, 0xbd, 0x13, 0xd8, 0x8f, 0x3e, 0x65, 0xee, 0x47, 0xd5, 0x22, 0x91, 0x50, 0xb0, + 0x15, 0x3d, 0x0f, 0x53, 0x14, 0x5b, 0x8f, 0xc2, 0xbb, 0x7b, 0x52, 0x19, 0xef, 0xad, 0x02, 0xfd, + 0x1f, 0x8b, 0xaf, 0x10, 0x75, 0x5b, 0x10, 0x7d, 0x01, 0x46, 0x9a, 0x4e, 0xcb, 0x69, 0xf2, 0x4c, + 0x45, 0x85, 0xee, 0x18, 0xa3, 0xd0, 0xdc, 0x92, 0x28, 0xc1, 0xdd, 0x0b, 0x1f, 0x95, 0x5f, 0x29, + 0xc1, 0x3d, 0x5d, 0x0a, 0xaa, 0xca, 0x99, 0x6d, 0x18, 0x37, 0x98, 0xdd, 0x57, 0x5b, 0xf4, 0x0b, + 0x5c, 0x7e, 0x2b, 0x13, 0x62, 0x07, 0xa6, 0x03, 0xed, 0x3f, 0x95, 0x56, 0x52, 0xbf, 0xfd, 0x70, + 0x2f, 0x09, 0xcd, 0x44, 0x9b, 0x16, 0x81, 0x98, 0x61, 0x83, 0x3b, 0x39, 0xdb, 0x7f, 0xdb, 0x82, + 0x07, 0x74, 0x42, 0xed, 0x22, 0x67, 0x2f, 0x07, 0x6f, 0x0d, 0x46, 0xc2, 0x16, 0x89, 0x9c, 0xd4, + 0x48, 0xba, 0x28, 0x3b, 0xfd, 0x86, 0x80, 0x1f, 0xee, 0xcf, 0x9e, 0xd6, 0xb9, 0x4b, 0x38, 0x56, + 0x25, 0x91, 0x0d, 0x43, 0xac, 0x33, 0x62, 0x71, 0xc9, 0x96, 0x65, 0xf3, 0x61, 0x07, 0x43, 0x31, + 0x16, 0x18, 0xfb, 0xe7, 0x2c, 0x3e, 0xb1, 0xf4, 0xa6, 0xa3, 0x77, 0x60, 0x6a, 0x87, 0xda, 0x53, + 0xcb, 0x77, 0x5b, 0x11, 0x77, 0x4f, 0xcb, 0x7e, 0x7a, 0xaa, 0x57, 0x3f, 0x69, 0x1f, 0xb9, 0x58, + 0x15, 0x6d, 0x9e, 0x5a, 0xcb, 0x30, 0xc3, 0x1d, 0xec, 0xed, 0xbf, 0x59, 0xe2, 0x2b, 0x91, 0xa9, + 0x59, 0x4f, 0xc0, 0x70, 0x2b, 0x74, 0x97, 0x56, 0x6b, 0x58, 0xf4, 0x90, 0x92, 0x1f, 0x75, 0x0e, + 0xc6, 0x12, 0x8f, 0x2e, 0x01, 0x90, 0xbb, 0x09, 0x89, 0x02, 0xc7, 0x57, 0xc7, 0xd6, 0x4a, 0x9b, + 0x59, 0x56, 0x18, 0xac, 0x51, 0xd1, 0x32, 0xad, 0x28, 0xdc, 0xf5, 0x5c, 0x76, 0xcb, 0xa1, 0x6c, + 0x96, 0xa9, 0x2b, 0x0c, 0xd6, 0xa8, 0xa8, 0xed, 0xda, 0x0e, 0x62, 0xbe, 0x23, 0x39, 0xb7, 0x45, + 0x26, 0x99, 0x91, 0xd4, 0x76, 0xbd, 0xa9, 0x23, 0xb1, 0x49, 0x8b, 0x16, 0x60, 0x28, 0x71, 0xd8, + 0x61, 0xec, 0x60, 0x71, 0xec, 0xca, 0x3a, 0xa5, 0xd0, 0x13, 0xf6, 0xd0, 0x02, 0x58, 0x14, 0xb4, + 0xbf, 0x54, 0x01, 0x48, 0x55, 0x24, 0xf4, 0x6e, 0xc7, 0x32, 0x7e, 0xba, 0xbb, 0x52, 0x75, 0x7c, + 0x6b, 0x18, 0x7d, 0xd9, 0x82, 0x51, 0xc7, 0xf7, 0xc3, 0xa6, 0x93, 0xb0, 0x9e, 0x28, 0x75, 0x17, + 0x23, 0xa2, 0xfe, 0x85, 0xb4, 0x04, 0x6f, 0xc2, 0x73, 0xf2, 0x2c, 0x54, 0xc3, 0xf4, 0x6c, 0x85, + 0x5e, 0x31, 0xfa, 0xa8, 0xd4, 0x9c, 0xf9, 0x10, 0xce, 0x64, 0x35, 0xe7, 0x0a, 0x93, 0x98, 0x9a, + 0xd2, 0x8c, 0x6e, 0x1a, 0x49, 0x56, 0x06, 0x8a, 0xef, 0x93, 0x1a, 0x9a, 0x42, 0xaf, 0xfc, 0x2a, + 0xa8, 0xae, 0xc7, 0x4b, 0x0f, 0x16, 0x5f, 0xba, 0xd6, 0x54, 0xd2, 0x1e, 0xb1, 0xd2, 0x6f, 0xc3, + 0xa4, 0x6b, 0x6e, 0x89, 0x22, 0xea, 0xec, 0xf1, 0x22, 0xbe, 0x99, 0x1d, 0x34, 0xdd, 0x04, 0x33, + 0x08, 0x9c, 0x65, 0x8c, 0xea, 0x3c, 0x72, 0x7d, 0x35, 0xd8, 0x08, 0x45, 0xbc, 0x99, 0x5d, 0x38, + 0x96, 0x7b, 0x71, 0x42, 0x76, 0x28, 0x65, 0xba, 0xd7, 0x5d, 0x17, 0x65, 0xb1, 0xe2, 0x82, 0x5e, + 0x85, 0x21, 0x76, 0xa5, 0x28, 0xae, 0x8e, 0x14, 0x3b, 0xcf, 0xcc, 0xdb, 0xb0, 0xe9, 0xc4, 0x67, + 0x7f, 0x63, 0x2c, 0x38, 0xa0, 0x2b, 0xf2, 0x4e, 0x7b, 0xbc, 0x1a, 0xdc, 0x8c, 0x09, 0xbb, 0xd3, + 0x5e, 0x59, 0xfc, 0x70, 0x7a, 0x5d, 0x9d, 0xc3, 0x73, 0x13, 0xc9, 0x19, 0x25, 0xa9, 0x4e, 0x21, + 0xfe, 0xcb, 0xfc, 0x74, 0x55, 0x28, 0x6e, 0x9e, 0x99, 0xc3, 0x2e, 0xed, 0xce, 0x5b, 0x26, 0x0b, + 0x9c, 0xe5, 0x79, 0xa2, 0x5b, 0xdc, 0x4c, 0x00, 0x53, 0xd9, 0x85, 0x75, 0x5f, 0xb7, 0xd4, 0x1f, + 0x0e, 0xc0, 0x84, 0x39, 0x11, 0xd0, 0x3c, 0x54, 0x04, 0x13, 0x95, 0x91, 0x4a, 0xcd, 0xed, 0x35, + 0x89, 0xc0, 0x29, 0x0d, 0xcb, 0xc8, 0xc5, 0x8a, 0x6b, 0x91, 0x46, 0x69, 0x46, 0x2e, 0x85, 0xc1, + 0x1a, 0x15, 0xd5, 0x3c, 0x6f, 0x87, 0x61, 0xa2, 0xc4, 0xb5, 0x9a, 0x2d, 0x8b, 0x0c, 0x8a, 0x05, + 0x96, 0x8a, 0xe9, 0x6d, 0x12, 0x05, 0xc4, 0x37, 0xdd, 0x7f, 0x4a, 0x4c, 0x5f, 0xd5, 0x91, 0xd8, + 0xa4, 0xa5, 0xdb, 0x4e, 0x18, 0xb3, 0xe9, 0x27, 0xf4, 0xdb, 0x34, 0x72, 0xab, 0xc1, 0xaf, 0xd4, + 0x49, 0x3c, 0xfa, 0x2c, 0x3c, 0xa0, 0x6e, 0xc0, 0x61, 0xee, 0x4e, 0x95, 0x35, 0x0e, 0x19, 0xe6, + 0xe8, 0x03, 0x4b, 0xf9, 0x64, 0xb8, 0xa8, 0x3c, 0x7a, 0x05, 0x26, 0x84, 0x9a, 0x2a, 0x39, 0x0e, + 0x9b, 0x07, 0xf5, 0x57, 0x0d, 0x2c, 0xce, 0x50, 0xa3, 0x1a, 0x4c, 0x51, 0x08, 0xd3, 0x14, 0x25, + 0x07, 0x7e, 0x93, 0x4f, 0xed, 0xc7, 0x57, 0x33, 0x78, 0xdc, 0x51, 0x02, 0x2d, 0xc0, 0x24, 0xd7, + 0x23, 0xa8, 0x21, 0xc6, 0xc6, 0x41, 0x84, 0x81, 0xaa, 0x85, 0x70, 0xc3, 0x44, 0xe3, 0x2c, 0x3d, + 0x7a, 0x11, 0xc6, 0x9c, 0xa8, 0xb9, 0xe5, 0x25, 0xa4, 0x99, 0xb4, 0x23, 0x9e, 0x31, 0x42, 0x8b, + 0x74, 0x58, 0xd0, 0x70, 0xd8, 0xa0, 0xb4, 0xdf, 0x85, 0x53, 0x39, 0x11, 0xe4, 0x74, 0xe2, 0x38, + 0x2d, 0x4f, 0x7e, 0x53, 0x26, 0x06, 0x6b, 0xa1, 0xbe, 0x2a, 0xbf, 0x46, 0xa3, 0xa2, 0xb3, 0x93, + 0xf9, 0x91, 0xb5, 0x24, 0x92, 0x6a, 0x76, 0xae, 0x48, 0x04, 0x4e, 0x69, 0xec, 0xef, 0x02, 0x68, + 0x5e, 0x90, 0x3e, 0x22, 0x70, 0x5e, 0x84, 0x31, 0x99, 0xf9, 0x54, 0xcb, 0x33, 0xa8, 0x3e, 0xf3, + 0xb2, 0x86, 0xc3, 0x06, 0x25, 0x6d, 0x5b, 0x20, 0x7d, 0x3b, 0xd9, 0x88, 0x2f, 0xe5, 0xf4, 0xc1, + 0x29, 0x0d, 0x7a, 0x1a, 0x46, 0x62, 0xe2, 0x6f, 0x5c, 0xf3, 0x82, 0x6d, 0x31, 0xb1, 0x95, 0x14, + 0x6e, 0x08, 0x38, 0x56, 0x14, 0x68, 0x11, 0xca, 0x6d, 0xcf, 0x15, 0x53, 0x59, 0x6e, 0xf8, 0xe5, + 0x9b, 0xab, 0xb5, 0xc3, 0xfd, 0xd9, 0x47, 0x8a, 0x12, 0xba, 0x52, 0x7b, 0x38, 0x9e, 0xa3, 0xcb, + 0x8f, 0x16, 0xce, 0x73, 0xa8, 0x0f, 0x1d, 0xd1, 0xa1, 0x7e, 0x09, 0x40, 0x7c, 0xb5, 0x9c, 0xcb, + 0xe5, 0x74, 0xd4, 0x2e, 0x2b, 0x0c, 0xd6, 0xa8, 0xa8, 0x55, 0xdd, 0x8c, 0x88, 0x23, 0x0d, 0x4f, + 0x1e, 0x0b, 0x3d, 0x72, 0xef, 0x56, 0xf5, 0x52, 0x96, 0x19, 0xee, 0xe4, 0x8f, 0x42, 0x98, 0x76, + 0xc5, 0x85, 0xcb, 0xb4, 0xd2, 0xca, 0xd1, 0x03, 0xb0, 0x59, 0x30, 0x4a, 0x96, 0x11, 0xee, 0xe4, + 0x8d, 0xde, 0x82, 0x19, 0x09, 0xec, 0xbc, 0xe3, 0xca, 0x96, 0x4b, 0x79, 0xf1, 0xfc, 0xc1, 0xfe, + 0xec, 0x4c, 0xad, 0x90, 0x0a, 0x77, 0xe1, 0x80, 0x30, 0x0c, 0xb1, 0x03, 0x98, 0xb8, 0x3a, 0xca, + 0xf6, 0xb9, 0x27, 0x8b, 0x43, 0xf6, 0xe9, 0x5c, 0x9f, 0x63, 0x87, 0x37, 0x22, 0x68, 0x35, 0x3d, + 0xcb, 0x62, 0x40, 0x2c, 0x38, 0xa1, 0x0d, 0x18, 0x75, 0x82, 0x20, 0x4c, 0x1c, 0xae, 0x42, 0x8d, + 0x15, 0xeb, 0x7e, 0x1a, 0xe3, 0x85, 0xb4, 0x04, 0xe7, 0xae, 0xe2, 0xe0, 0x34, 0x0c, 0xd6, 0x19, + 0xa3, 0x3b, 0x30, 0x19, 0xde, 0xa1, 0xc2, 0x51, 0x9e, 0x13, 0xc4, 0xd5, 0x71, 0x56, 0xd7, 0xf3, + 0x7d, 0x3a, 0x37, 0x8d, 0xc2, 0x9a, 0xd4, 0x32, 0x99, 0xe2, 0x6c, 0x2d, 0x68, 0xce, 0x70, 0xf1, + 0x4e, 0xa4, 0xc1, 0xd7, 0xa9, 0x8b, 0x57, 0xf7, 0xe8, 0xb2, 0x3b, 0xd3, 0x3c, 0x08, 0x93, 0xad, + 0xfe, 0xc9, 0xcc, 0x9d, 0xe9, 0x14, 0x85, 0x75, 0x3a, 0xb4, 0x05, 0x63, 0xe9, 0x39, 0x4f, 0x14, + 0xb3, 0x94, 0x2a, 0xa3, 0x97, 0x2e, 0xf5, 0xf7, 0x71, 0xab, 0x5a, 0x49, 0x7e, 0x59, 0x44, 0x87, + 0x60, 0x83, 0xf3, 0xcc, 0x27, 0x60, 0x54, 0x1b, 0xd8, 0xa3, 0xc4, 0x18, 0xcf, 0xbc, 0x02, 0x53, + 0xd9, 0xa1, 0x3b, 0x52, 0x8c, 0xf2, 0xff, 0x28, 0xc1, 0x64, 0xce, 0x71, 0x0f, 0x4b, 0x0a, 0x9b, + 0x11, 0xa8, 0x69, 0x0e, 0x58, 0x53, 0x2c, 0x96, 0xfa, 0x10, 0x8b, 0x52, 0x46, 0x97, 0x0b, 0x65, + 0xb4, 0x10, 0x85, 0x03, 0xef, 0x45, 0x14, 0x9a, 0xbb, 0xcf, 0x60, 0x5f, 0xbb, 0xcf, 0x31, 0x88, + 0x4f, 0x63, 0x03, 0x1b, 0xee, 0x63, 0x03, 0xfb, 0xc5, 0x12, 0x4c, 0xa5, 0xf1, 0xd8, 0x22, 0x05, + 0xf3, 0xfd, 0x3f, 0x24, 0x78, 0xd5, 0x38, 0x24, 0xc8, 0x4f, 0xb1, 0x9c, 0x69, 0x55, 0xe1, 0x81, + 0x01, 0xce, 0x1c, 0x18, 0x3c, 0xd9, 0x17, 0xb7, 0xee, 0x87, 0x07, 0x7f, 0xa7, 0x04, 0x67, 0xb2, + 0x45, 0x96, 0x7c, 0xc7, 0xdb, 0x39, 0x81, 0xbe, 0xb9, 0x61, 0xf4, 0xcd, 0x33, 0xfd, 0x7c, 0x0d, + 0x6b, 0x5a, 0x61, 0x07, 0xbd, 0x9e, 0xe9, 0xa0, 0xf9, 0xfe, 0x59, 0x76, 0xef, 0xa5, 0xef, 0x5a, + 0x70, 0x2e, 0xb7, 0xdc, 0x09, 0x78, 0x48, 0xaf, 0x9b, 0x1e, 0xd2, 0x27, 0xfa, 0xfe, 0xa6, 0x02, + 0x97, 0xe9, 0xd7, 0xca, 0x05, 0xdf, 0xc2, 0x7c, 0x4c, 0x37, 0x60, 0xd4, 0x69, 0x36, 0x49, 0x1c, + 0xaf, 0x85, 0xae, 0xca, 0xc1, 0xf4, 0x0c, 0xdb, 0x93, 0x52, 0xf0, 0xe1, 0xfe, 0xec, 0x4c, 0x96, + 0x45, 0x8a, 0xc6, 0x3a, 0x07, 0x33, 0xaf, 0x5b, 0xe9, 0x58, 0xf3, 0xba, 0x5d, 0x02, 0xd8, 0x55, + 0x56, 0x6d, 0xd6, 0x61, 0xa5, 0xd9, 0xbb, 0x1a, 0x15, 0xfa, 0x69, 0xa6, 0x2b, 0xf2, 0x38, 0x0b, + 0x7e, 0x32, 0xf0, 0x5c, 0x9f, 0x63, 0xa5, 0xc7, 0x6c, 0xf0, 0x5b, 0x9b, 0xca, 0xb9, 0xa7, 0x58, + 0xa2, 0xcf, 0xc0, 0x54, 0xcc, 0x13, 0x03, 0x2c, 0xf9, 0x4e, 0xcc, 0x2e, 0x13, 0x08, 0x99, 0xc8, + 0xae, 0x62, 0x36, 0x32, 0x38, 0xdc, 0x41, 0x6d, 0xff, 0x83, 0x32, 0x3c, 0xd8, 0x65, 0x8a, 0xa2, + 0x05, 0xf3, 0x5c, 0xf4, 0xa9, 0xac, 0x77, 0x67, 0x26, 0xb7, 0xb0, 0xe1, 0xee, 0xc9, 0x8c, 0x71, + 0xe9, 0x3d, 0x8f, 0xf1, 0x57, 0x2c, 0xcd, 0xef, 0xc6, 0xa3, 0x27, 0x3f, 0x75, 0xc4, 0xa5, 0xf7, + 0xe3, 0xea, 0x4c, 0xff, 0xa2, 0x05, 0x8f, 0xe4, 0x7e, 0x96, 0x11, 0x5f, 0x31, 0x0f, 0x95, 0x26, + 0x05, 0x6a, 0x17, 0x7e, 0xd2, 0x5b, 0x75, 0x12, 0x81, 0x53, 0x1a, 0x23, 0x8c, 0xa2, 0xd4, 0x33, + 0x8c, 0xe2, 0x9f, 0x59, 0x70, 0x3a, 0xdb, 0x88, 0x13, 0x90, 0x4c, 0xab, 0xa6, 0x64, 0xfa, 0x70, + 0x3f, 0x43, 0x5e, 0x20, 0x94, 0xfe, 0xdd, 0x04, 0x9c, 0xed, 0xd8, 0xb9, 0x78, 0xdf, 0xed, 0xc2, + 0xf4, 0x26, 0x53, 0xe1, 0xb5, 0xab, 0x54, 0xe2, 0x63, 0x72, 0x6f, 0x9d, 0x75, 0xbd, 0x77, 0xc5, + 0xcd, 0x90, 0x0e, 0x12, 0xdc, 0x59, 0x05, 0xfa, 0xa2, 0x05, 0xa7, 0x9d, 0x3b, 0x71, 0xc7, 0x3b, + 0x1d, 0x62, 0xce, 0x3c, 0x9f, 0xeb, 0x1d, 0xeb, 0xf1, 0xae, 0xc7, 0x62, 0xf5, 0x60, 0x7f, 0xf6, + 0x74, 0x1e, 0x15, 0xce, 0xad, 0x0b, 0x61, 0x91, 0x86, 0x8e, 0x6a, 0x39, 0x5d, 0x2e, 0xfb, 0xe5, + 0x5d, 0xc5, 0xe0, 0x32, 0x4a, 0x62, 0xb0, 0xe2, 0x83, 0x6e, 0x41, 0x65, 0x53, 0xde, 0x8f, 0x12, + 0x32, 0x30, 0x77, 0x53, 0xc9, 0xbd, 0x44, 0xc5, 0xc3, 0xdc, 0x15, 0x0a, 0xa7, 0xac, 0xd0, 0x2b, + 0x50, 0x0e, 0x36, 0x62, 0x71, 0xaf, 0x38, 0x3f, 0x28, 0xc6, 0x0c, 0x3b, 0xe2, 0x97, 0x32, 0xaf, + 0xaf, 0x34, 0x30, 0x2d, 0x48, 0xcb, 0x47, 0xb7, 0x5d, 0xe1, 0xd0, 0xcd, 0x2d, 0x8f, 0x17, 0x6b, + 0x9d, 0xe5, 0xf1, 0x62, 0x0d, 0xd3, 0x82, 0x68, 0x05, 0x06, 0xd9, 0xe5, 0x0c, 0xe1, 0xad, 0xcd, + 0xbd, 0x54, 0xde, 0x71, 0xf1, 0x84, 0xe7, 0x17, 0x64, 0x60, 0xcc, 0x8b, 0xa3, 0x57, 0x61, 0xa8, + 0xc9, 0x12, 0xcc, 0x0b, 0xd3, 0x3a, 0x3f, 0x51, 0x42, 0x47, 0x0a, 0x7a, 0x7e, 0x8e, 0xc4, 0xe1, + 0x58, 0x70, 0x60, 0xbc, 0x48, 0x6b, 0x6b, 0x23, 0x16, 0x16, 0x73, 0x3e, 0xaf, 0x8e, 0xc7, 0x00, + 0x04, 0x2f, 0x06, 0xc7, 0x82, 0x03, 0xfa, 0x24, 0x94, 0x36, 0x9a, 0xe2, 0x76, 0x46, 0xae, 0x6f, + 0xd6, 0xbc, 0x2f, 0xbb, 0x38, 0x74, 0xb0, 0x3f, 0x5b, 0x5a, 0x59, 0xc2, 0xa5, 0x8d, 0x26, 0xba, + 0x0e, 0xc3, 0x1b, 0xfc, 0x56, 0xa4, 0x48, 0x26, 0xfa, 0x78, 0xfe, 0x85, 0xcd, 0x8e, 0x8b, 0x93, + 0xfc, 0x3a, 0x82, 0x40, 0x60, 0xc9, 0x04, 0xad, 0x03, 0x6c, 0xa8, 0xdb, 0x9d, 0x22, 0x9b, 0xe8, + 0x87, 0xfb, 0xb9, 0x03, 0x2a, 0x8c, 0x46, 0x05, 0xc5, 0x1a, 0x1f, 0x3a, 0x33, 0x1d, 0xf9, 0xca, + 0x05, 0xcb, 0x24, 0x5a, 0x30, 0x33, 0x73, 0x9f, 0xc2, 0xe0, 0x33, 0x53, 0xa1, 0x70, 0xca, 0x0a, + 0x6d, 0xc3, 0xf8, 0x6e, 0xdc, 0xda, 0x22, 0x72, 0x31, 0xb2, 0xa4, 0xa2, 0xa6, 0x59, 0x99, 0x66, + 0x80, 0x15, 0x84, 0x5e, 0x94, 0xb4, 0x1d, 0xbf, 0x43, 0x7e, 0xb0, 0xa4, 0x58, 0xb7, 0x74, 0x66, + 0xd8, 0xe4, 0x4d, 0xbb, 0xfa, 0x9d, 0x76, 0x78, 0x7b, 0x2f, 0x21, 0x22, 0xd5, 0x68, 0x6e, 0x57, + 0xbf, 0xc6, 0x49, 0x3a, 0xbb, 0x5a, 0x20, 0xb0, 0x64, 0xa2, 0x3a, 0x85, 0xc9, 0xbd, 0xa9, 0x1e, + 0x9d, 0xd2, 0xd1, 0xde, 0xb4, 0x53, 0x98, 0x9c, 0x4b, 0x59, 0x31, 0xf9, 0xd6, 0xda, 0x0a, 0x93, + 0x30, 0xc8, 0xc8, 0xd6, 0xe9, 0x62, 0xf9, 0x56, 0xcf, 0xa1, 0xef, 0x94, 0x6f, 0x79, 0x54, 0x38, + 0xb7, 0x2e, 0xe4, 0xc2, 0x44, 0x2b, 0x8c, 0x92, 0x3b, 0x61, 0x24, 0xe7, 0x12, 0xea, 0x62, 0x28, + 0x19, 0x94, 0xa2, 0x46, 0x16, 0x80, 0x6a, 0x62, 0x70, 0x86, 0x27, 0x1d, 0x92, 0xb8, 0xe9, 0xf8, + 0x64, 0xf5, 0x46, 0xf5, 0x54, 0xf1, 0x90, 0x34, 0x38, 0x49, 0xe7, 0x90, 0x08, 0x04, 0x96, 0x4c, + 0xa8, 0xa4, 0x61, 0x59, 0xab, 0x59, 0x6e, 0xd4, 0x02, 0x49, 0xd3, 0x11, 0x9a, 0xc9, 0x25, 0x0d, + 0x03, 0x63, 0x5e, 0x1c, 0x7d, 0x1e, 0x2a, 0x42, 0xff, 0x0b, 0xe3, 0xea, 0x99, 0x0e, 0x6d, 0x34, + 0x6d, 0x19, 0x27, 0xba, 0xd1, 0xc8, 0xdf, 0x22, 0xc5, 0x0d, 0x2c, 0x49, 0x84, 0x53, 0xa6, 0xf6, + 0x97, 0x86, 0x3a, 0x35, 0x03, 0xa6, 0xe7, 0x7f, 0xc9, 0xea, 0x38, 0x2a, 0xfd, 0x58, 0xbf, 0xc6, + 0xe9, 0x31, 0x1e, 0x9a, 0x7e, 0xd1, 0x82, 0xb3, 0xad, 0xdc, 0x8f, 0x12, 0xdb, 0x6c, 0x7f, 0x36, + 0x2e, 0xef, 0x06, 0x95, 0x75, 0x38, 0x1f, 0x8f, 0x0b, 0x6a, 0xca, 0xea, 0xc3, 0xe5, 0xf7, 0xac, + 0x0f, 0xaf, 0xc1, 0x08, 0x53, 0xe5, 0xd2, 0x0c, 0x27, 0x7d, 0xa5, 0x05, 0x61, 0x1b, 0xf6, 0x92, + 0x28, 0x88, 0x15, 0x0b, 0xf4, 0xf3, 0x16, 0x3c, 0x9c, 0x6d, 0x3a, 0x26, 0x0c, 0x2d, 0x32, 0xe6, + 0x71, 0x13, 0x63, 0x45, 0x7c, 0xff, 0xc3, 0xf5, 0x6e, 0xc4, 0x87, 0xbd, 0x08, 0x70, 0xf7, 0xca, + 0x50, 0x2d, 0xc7, 0xc6, 0x19, 0x32, 0x4f, 0x52, 0x7a, 0xdb, 0x39, 0x27, 0xab, 0xa5, 0x7f, 0xdd, + 0xca, 0x51, 0x2f, 0xb9, 0x3d, 0xf5, 0xb2, 0x69, 0x4f, 0x3d, 0x96, 0xb5, 0xa7, 0x3a, 0xbc, 0x23, + 0x86, 0x29, 0xd5, 0x7f, 0x4e, 0xcf, 0x7e, 0x93, 0xb9, 0xd8, 0x3e, 0x5c, 0xe8, 0x25, 0x66, 0x59, + 0x88, 0x93, 0xab, 0xce, 0x15, 0xd3, 0x10, 0x27, 0x77, 0xb5, 0x86, 0x19, 0xa6, 0xdf, 0xbc, 0x01, + 0xf6, 0x7f, 0xb1, 0xa0, 0x5c, 0x0f, 0xdd, 0x13, 0xf0, 0xf6, 0x7c, 0xca, 0xf0, 0xf6, 0x3c, 0x58, + 0xf0, 0xb2, 0x5a, 0xa1, 0x6f, 0x67, 0x39, 0xe3, 0xdb, 0x79, 0xb8, 0x88, 0x41, 0x77, 0x4f, 0xce, + 0xdf, 0x2d, 0x83, 0xfe, 0x0e, 0x1c, 0xfa, 0x97, 0xf7, 0x12, 0xbc, 0x5a, 0xee, 0xf6, 0x34, 0x9c, + 0xe0, 0xcc, 0x22, 0xa3, 0xe4, 0xbd, 0xb8, 0x1f, 0xb3, 0x18, 0xd6, 0xd7, 0x89, 0xb7, 0xb9, 0x95, + 0x10, 0x37, 0xfb, 0x39, 0x27, 0x17, 0xc3, 0xfa, 0x1f, 0x2d, 0x98, 0xcc, 0xd4, 0x8e, 0xfc, 0xbc, + 0x4b, 0x36, 0xf7, 0xe8, 0xbf, 0x99, 0xee, 0x79, 0x2b, 0x67, 0x0e, 0x40, 0xb9, 0xd2, 0xa5, 0x8f, + 0x84, 0xe9, 0xae, 0xca, 0xd7, 0x1e, 0x63, 0x8d, 0x02, 0xbd, 0x00, 0xa3, 0x49, 0xd8, 0x0a, 0xfd, + 0x70, 0x73, 0xef, 0x2a, 0x91, 0x99, 0x2a, 0xd4, 0x81, 0xc7, 0x7a, 0x8a, 0xc2, 0x3a, 0x9d, 0xfd, + 0x6b, 0x65, 0xc8, 0xbe, 0x1d, 0xf8, 0x67, 0x73, 0xf2, 0x83, 0x39, 0x27, 0xbf, 0x67, 0xc1, 0x14, + 0xad, 0x9d, 0x45, 0xb4, 0xc8, 0x60, 0x53, 0x95, 0xfc, 0xdf, 0xea, 0x92, 0xfc, 0xff, 0x31, 0x2a, + 0xbb, 0xdc, 0xb0, 0x9d, 0x08, 0x5f, 0x8e, 0x26, 0x9c, 0x28, 0x14, 0x0b, 0xac, 0xa0, 0x23, 0x51, + 0x24, 0xae, 0xce, 0xe8, 0x74, 0x24, 0x8a, 0xb0, 0xc0, 0xca, 0xb7, 0x01, 0x06, 0x0a, 0xde, 0x06, + 0x60, 0x39, 0x9c, 0x44, 0x14, 0x85, 0x50, 0x0d, 0xb4, 0x1c, 0x4e, 0x32, 0xbc, 0x22, 0xa5, 0xb1, + 0xbf, 0x59, 0x86, 0xb1, 0x7a, 0xe8, 0xa6, 0x01, 0xe3, 0xcf, 0x1b, 0x01, 0xe3, 0x17, 0x32, 0x01, + 0xe3, 0x53, 0x3a, 0xed, 0xf1, 0xc4, 0x8b, 0x8b, 0x0c, 0x5f, 0xec, 0xa5, 0x8a, 0x7b, 0x8c, 0x15, + 0x37, 0x32, 0x7c, 0x29, 0x46, 0xd8, 0xe4, 0xfb, 0x93, 0x14, 0x23, 0xfe, 0xa7, 0x16, 0x4c, 0xd4, + 0x43, 0x97, 0x4e, 0xd0, 0x9f, 0xa4, 0xd9, 0xa8, 0x67, 0x08, 0x1b, 0xea, 0x92, 0x21, 0xec, 0xef, + 0x59, 0x30, 0x5c, 0x0f, 0xdd, 0x13, 0xf0, 0x73, 0xbe, 0x6c, 0xfa, 0x39, 0x1f, 0x28, 0x90, 0xb2, + 0x05, 0xae, 0xcd, 0xdf, 0x2a, 0xc3, 0x38, 0x6d, 0x67, 0xb8, 0x29, 0x47, 0xc9, 0xe8, 0x11, 0xab, + 0x8f, 0x1e, 0xa1, 0xca, 0x5c, 0xe8, 0xfb, 0xe1, 0x9d, 0xec, 0x88, 0xad, 0x30, 0x28, 0x16, 0x58, + 0xf4, 0x34, 0x8c, 0xb4, 0x22, 0xb2, 0xeb, 0x85, 0xed, 0x38, 0x7b, 0xf9, 0xae, 0x2e, 0xe0, 0x58, + 0x51, 0xa0, 0xe7, 0x61, 0x2c, 0xf6, 0x82, 0x26, 0x91, 0x91, 0x15, 0x03, 0x2c, 0xb2, 0x82, 0x27, + 0x59, 0xd4, 0xe0, 0xd8, 0xa0, 0x42, 0xaf, 0x43, 0x85, 0xfd, 0x67, 0xeb, 0xe6, 0xe8, 0xa9, 0xff, + 0xb9, 0xa9, 0x2a, 0x19, 0xe0, 0x94, 0x17, 0xba, 0x04, 0x90, 0xc8, 0x18, 0x90, 0x58, 0xdc, 0x0d, + 0x55, 0x1a, 0xa5, 0x8a, 0x0e, 0x89, 0xb1, 0x46, 0x85, 0x9e, 0x82, 0x4a, 0xe2, 0x78, 0xfe, 0x35, + 0x2f, 0x20, 0xb1, 0x88, 0xa1, 0x11, 0x89, 0x8b, 0x05, 0x10, 0xa7, 0x78, 0xba, 0xa3, 0xb3, 0x9b, + 0xc7, 0xfc, 0xe1, 0x90, 0x11, 0x46, 0xcd, 0x76, 0xf4, 0x6b, 0x0a, 0x8a, 0x35, 0x0a, 0xfb, 0x45, + 0x38, 0x53, 0x0f, 0xdd, 0x7a, 0x18, 0x25, 0x2b, 0x61, 0x74, 0xc7, 0x89, 0x5c, 0x39, 0x7e, 0xb3, + 0x32, 0x87, 0x2e, 0xdd, 0x75, 0x07, 0xb9, 0x5d, 0x6f, 0x64, 0xc7, 0x7d, 0x8e, 0xed, 0xe9, 0x47, + 0xbc, 0x94, 0xf0, 0x6f, 0x4a, 0x80, 0xea, 0x2c, 0x4a, 0xc5, 0x78, 0x5d, 0xe6, 0x2d, 0x98, 0x88, + 0xc9, 0x35, 0x2f, 0x68, 0xdf, 0x15, 0xac, 0xba, 0xdd, 0xf8, 0x68, 0x2c, 0xeb, 0x94, 0xdc, 0x37, + 0x62, 0xc2, 0x70, 0x86, 0x1b, 0xed, 0xc2, 0xa8, 0x1d, 0x2c, 0xc4, 0x37, 0x63, 0x12, 0x89, 0xd7, + 0x54, 0x58, 0x17, 0x62, 0x09, 0xc4, 0x29, 0x9e, 0x4e, 0x19, 0xf6, 0xe7, 0x7a, 0x18, 0xe0, 0x30, + 0x4c, 0xe4, 0x24, 0x63, 0xf9, 0xf8, 0x35, 0x38, 0x36, 0xa8, 0xd0, 0x0a, 0xa0, 0xb8, 0xdd, 0x6a, + 0xf9, 0xec, 0x50, 0xcf, 0xf1, 0x2f, 0x47, 0x61, 0xbb, 0xc5, 0xc3, 0x8c, 0x45, 0x2a, 0xfb, 0x46, + 0x07, 0x16, 0xe7, 0x94, 0xa0, 0x82, 0x61, 0x23, 0x66, 0xbf, 0xc5, 0xe5, 0x63, 0xee, 0x9b, 0x6c, + 0x30, 0x10, 0x96, 0x38, 0xfb, 0x0b, 0x6c, 0x33, 0x63, 0x8f, 0x60, 0x24, 0xed, 0x88, 0xa0, 0x1d, + 0x18, 0x6f, 0xb1, 0x0d, 0x2b, 0x89, 0x42, 0xdf, 0x27, 0x52, 0x6f, 0xbc, 0xb7, 0x88, 0x19, 0x9e, + 0x14, 0x5f, 0x67, 0x87, 0x4d, 0xee, 0xf6, 0x97, 0x26, 0x99, 0x5c, 0x6a, 0x70, 0xa3, 0x65, 0x58, + 0xc4, 0xc1, 0x0a, 0x0d, 0x6d, 0xa6, 0xf8, 0xd1, 0xa9, 0x54, 0xd2, 0x8b, 0x58, 0x5a, 0x2c, 0xcb, + 0xa2, 0xd7, 0x58, 0x7c, 0x36, 0x17, 0x06, 0xbd, 0x9e, 0xbb, 0xe3, 0x54, 0x46, 0x6c, 0xb6, 0x28, + 0x88, 0x35, 0x26, 0xe8, 0x1a, 0x8c, 0x8b, 0x37, 0x13, 0x84, 0x0b, 0xa1, 0x6c, 0x98, 0xbf, 0xe3, + 0x58, 0x47, 0x1e, 0x66, 0x01, 0xd8, 0x2c, 0x8c, 0x36, 0xe1, 0x61, 0xed, 0x85, 0x9f, 0x9c, 0xa8, + 0x2d, 0x2e, 0x5b, 0x1e, 0x39, 0xd8, 0x9f, 0x7d, 0x78, 0xbd, 0x1b, 0x21, 0xee, 0xce, 0x07, 0xdd, + 0x80, 0x33, 0x4e, 0x33, 0xf1, 0x76, 0x49, 0x8d, 0x38, 0xae, 0xef, 0x05, 0xc4, 0xbc, 0x8d, 0x7e, + 0xee, 0x60, 0x7f, 0xf6, 0xcc, 0x42, 0x1e, 0x01, 0xce, 0x2f, 0x87, 0x5e, 0x86, 0x8a, 0x1b, 0xc4, + 0xa2, 0x0f, 0x86, 0x8c, 0xc7, 0xab, 0x2a, 0xb5, 0xeb, 0x0d, 0xf5, 0xfd, 0xe9, 0x1f, 0x9c, 0x16, + 0x40, 0x9b, 0xfc, 0x91, 0x73, 0x65, 0x91, 0x0c, 0x77, 0xa4, 0x18, 0xc8, 0xda, 0xb6, 0xc6, 0xad, + 0x10, 0xee, 0x3f, 0x53, 0x31, 0x91, 0xc6, 0x85, 0x11, 0x83, 0x31, 0x7a, 0x15, 0x50, 0x4c, 0xa2, + 0x5d, 0xaf, 0x49, 0x16, 0x9a, 0x2c, 0x0b, 0x29, 0xf3, 0xba, 0x8c, 0x18, 0x01, 0xfe, 0xa8, 0xd1, + 0x41, 0x81, 0x73, 0x4a, 0xa1, 0x2b, 0x54, 0xa2, 0xe8, 0x50, 0x11, 0xc2, 0x2a, 0xd5, 0xbc, 0x6a, + 0x8d, 0xb4, 0x22, 0xd2, 0x74, 0x12, 0xe2, 0x9a, 0x1c, 0x71, 0xa6, 0x1c, 0xdd, 0x6f, 0x54, 0x72, + 0x77, 0x30, 0x03, 0x2f, 0x3b, 0x13, 0xbc, 0x53, 0x0b, 0x69, 0x2b, 0x8c, 0x93, 0xeb, 0x24, 0xb9, + 0x13, 0x46, 0xdb, 0x22, 0x13, 0x54, 0x9a, 0xfa, 0x2d, 0x45, 0x61, 0x9d, 0x8e, 0x6a, 0x44, 0xec, + 0xe8, 0x6a, 0xb5, 0xc6, 0xce, 0x19, 0x46, 0xd2, 0x75, 0x72, 0x85, 0x83, 0xb1, 0xc4, 0x4b, 0xd2, + 0xd5, 0xfa, 0x12, 0x3b, 0x3d, 0xc8, 0x90, 0xae, 0xd6, 0x97, 0xb0, 0xc4, 0x23, 0xd2, 0xf9, 0x30, + 0xd8, 0x44, 0xf1, 0x09, 0x4d, 0xa7, 0x5c, 0xee, 0xf3, 0x6d, 0xb0, 0x00, 0xa6, 0xd4, 0x93, 0x64, + 0x3c, 0x45, 0x56, 0x5c, 0x9d, 0x2c, 0x7e, 0x6d, 0x3d, 0x37, 0xbf, 0x96, 0xf2, 0xaa, 0xad, 0x66, + 0x38, 0xe1, 0x0e, 0xde, 0x46, 0x96, 0x83, 0xa9, 0x9e, 0xc9, 0xf9, 0xe7, 0xa1, 0x12, 0xb7, 0x6f, + 0xbb, 0xe1, 0x8e, 0xe3, 0x05, 0xcc, 0xed, 0xaf, 0x3f, 0x04, 0x2e, 0x11, 0x38, 0xa5, 0x41, 0x2b, + 0x30, 0xe2, 0xc8, 0x17, 0xf2, 0x51, 0xf1, 0xb5, 0x67, 0xf5, 0x34, 0x3e, 0xf3, 0x68, 0xaa, 0x37, + 0xf1, 0x55, 0x59, 0xf4, 0x12, 0x8c, 0x8b, 0x8b, 0x40, 0x22, 0x3e, 0xf0, 0x94, 0x19, 0x8f, 0xde, + 0xd0, 0x91, 0xd8, 0xa4, 0x45, 0x3f, 0x0d, 0x13, 0x94, 0x4b, 0x2a, 0xd8, 0xaa, 0xa7, 0xfb, 0x91, + 0x88, 0x5a, 0xd2, 0x65, 0xbd, 0x30, 0xce, 0x30, 0x43, 0x2e, 0x3c, 0xe4, 0xb4, 0x93, 0x70, 0x87, + 0xce, 0x70, 0x73, 0xfe, 0xaf, 0x87, 0xdb, 0x24, 0x60, 0x7e, 0xfa, 0x91, 0xc5, 0x0b, 0x07, 0xfb, + 0xb3, 0x0f, 0x2d, 0x74, 0xa1, 0xc3, 0x5d, 0xb9, 0xa0, 0x9b, 0x30, 0x9a, 0x84, 0xbe, 0x08, 0xec, + 0x8d, 0xab, 0x67, 0x8b, 0xb3, 0xb4, 0xac, 0x2b, 0x32, 0xdd, 0x9d, 0xa0, 0x8a, 0x62, 0x9d, 0x0f, + 0x5a, 0xe7, 0x6b, 0x8c, 0x25, 0xfb, 0x23, 0x71, 0xf5, 0x81, 0xe2, 0x8e, 0x51, 0x39, 0x01, 0xcd, + 0x25, 0x28, 0x4a, 0x62, 0x9d, 0x0d, 0xba, 0x0c, 0xd3, 0xad, 0xc8, 0x0b, 0xd9, 0xc4, 0x56, 0x2e, + 0xdf, 0xaa, 0x91, 0xbf, 0x6b, 0xba, 0x9e, 0x25, 0xc0, 0x9d, 0x65, 0xd0, 0x45, 0xaa, 0xa0, 0x72, + 0x60, 0xf5, 0x1c, 0x7f, 0xb4, 0x81, 0x2b, 0xa7, 0x1c, 0x86, 0x15, 0x76, 0xe6, 0xd3, 0x30, 0xdd, + 0x21, 0x29, 0x8f, 0x14, 0x64, 0xf9, 0xeb, 0x83, 0x50, 0x51, 0xee, 0x40, 0x34, 0x6f, 0x7a, 0x79, + 0xcf, 0x65, 0xbd, 0xbc, 0x23, 0x54, 0x5f, 0xd3, 0x1d, 0xbb, 0xeb, 0x39, 0xef, 0x4e, 0x5f, 0x28, + 0x10, 0x0d, 0xfd, 0xdf, 0x88, 0x3a, 0xc2, 0x9b, 0xdc, 0xa9, 0xc1, 0x38, 0xd0, 0xd5, 0x60, 0xec, + 0xf3, 0x0d, 0x38, 0x6a, 0x1a, 0xb6, 0x42, 0x77, 0xb5, 0x9e, 0x7d, 0x14, 0xa9, 0x4e, 0x81, 0x98, + 0xe3, 0x98, 0x72, 0x4f, 0xb7, 0x75, 0xa6, 0xdc, 0x0f, 0xdf, 0xa3, 0x72, 0x2f, 0x19, 0xe0, 0x94, + 0x17, 0xf2, 0x61, 0xba, 0x69, 0xbe, 0x67, 0xa5, 0x6e, 0x41, 0x3d, 0xda, 0xf3, 0x65, 0xa9, 0xb6, + 0xf6, 0xc8, 0xc5, 0x52, 0x96, 0x0b, 0xee, 0x64, 0x8c, 0x5e, 0x82, 0x91, 0x77, 0xc2, 0x98, 0x4d, + 0x3b, 0xb1, 0xb7, 0xc9, 0x7b, 0x27, 0x23, 0xaf, 0xdd, 0x68, 0x30, 0xf8, 0xe1, 0xfe, 0xec, 0x68, + 0x3d, 0x74, 0xe5, 0x5f, 0xac, 0x0a, 0xa0, 0xbb, 0x70, 0xc6, 0x90, 0x08, 0xaa, 0xb9, 0xd0, 0x7f, + 0x73, 0x1f, 0x16, 0xd5, 0x9d, 0x59, 0xcd, 0xe3, 0x84, 0xf3, 0x2b, 0xb0, 0xbf, 0xc5, 0x9d, 0x9e, + 0xc2, 0x35, 0x42, 0xe2, 0xb6, 0x7f, 0x12, 0x99, 0xec, 0x97, 0x0d, 0xaf, 0xcd, 0x3d, 0x3b, 0xd6, + 0x7f, 0xdf, 0x62, 0x8e, 0xf5, 0x75, 0xb2, 0xd3, 0xf2, 0x9d, 0xe4, 0x24, 0x42, 0x6b, 0x5f, 0x83, + 0x91, 0x44, 0xd4, 0xd6, 0x2d, 0xf9, 0xbe, 0xd6, 0x28, 0x76, 0xb8, 0xa0, 0x36, 0x44, 0x09, 0xc5, + 0x8a, 0x8d, 0xfd, 0x4f, 0xf8, 0x08, 0x48, 0xcc, 0x09, 0xf8, 0x16, 0x6a, 0xa6, 0x6f, 0x61, 0xb6, + 0xc7, 0x17, 0x14, 0xf8, 0x18, 0xfe, 0xb1, 0xd9, 0x6e, 0x66, 0x7b, 0x7c, 0xd0, 0x4f, 0x74, 0xec, + 0x5f, 0xb6, 0xe0, 0x74, 0xde, 0x91, 0x3e, 0x55, 0x62, 0xb8, 0xe5, 0xa3, 0x4e, 0xb8, 0x54, 0x0f, + 0xde, 0x12, 0x70, 0xac, 0x28, 0xfa, 0xce, 0x90, 0x7d, 0xb4, 0xcc, 0x44, 0x37, 0xc0, 0x7c, 0xfa, + 0x0c, 0xbd, 0xc2, 0x63, 0xe5, 0x2d, 0xf5, 0x36, 0xd9, 0xd1, 0xe2, 0xe4, 0xed, 0x6f, 0x94, 0xe0, + 0x34, 0x77, 0x51, 0x2f, 0xec, 0x86, 0x9e, 0x5b, 0x0f, 0x5d, 0x71, 0x73, 0xe0, 0x0d, 0x18, 0x6b, + 0x69, 0xe6, 0x6a, 0xb7, 0xdc, 0x28, 0xba, 0x59, 0x9b, 0x9a, 0x0d, 0x3a, 0x14, 0x1b, 0xbc, 0x90, + 0x0b, 0x63, 0x64, 0xd7, 0x6b, 0x2a, 0x3f, 0x67, 0xe9, 0xc8, 0x22, 0x5d, 0xd5, 0xb2, 0xac, 0xf1, + 0xc1, 0x06, 0xd7, 0xfb, 0xf0, 0x4c, 0x85, 0xfd, 0x55, 0x0b, 0x1e, 0x28, 0xc8, 0xa4, 0x42, 0xab, + 0xbb, 0xc3, 0x0e, 0x03, 0xc4, 0x3b, 0x7a, 0xaa, 0x3a, 0x7e, 0x44, 0x80, 0x05, 0x16, 0xfd, 0x14, + 0x00, 0x77, 0xf1, 0xb3, 0x57, 0xcb, 0x4b, 0xc5, 0x31, 0x4a, 0x1d, 0x09, 0x0d, 0xb4, 0x5b, 0xef, + 0xea, 0x9d, 0x72, 0x8d, 0x97, 0xfd, 0xab, 0x65, 0x18, 0xe4, 0x8f, 0x2a, 0xaf, 0xc0, 0xf0, 0x16, + 0xcf, 0xdb, 0xda, 0x4f, 0x8a, 0xd8, 0xd4, 0x1c, 0xe1, 0x00, 0x2c, 0x0b, 0xa3, 0x35, 0x38, 0x25, + 0x6e, 0xa7, 0xd4, 0x88, 0xef, 0xec, 0x49, 0xab, 0x96, 0xbf, 0x5d, 0x20, 0x13, 0x6f, 0x9f, 0x5a, + 0xed, 0x24, 0xc1, 0x79, 0xe5, 0xd0, 0x2b, 0x1d, 0xd9, 0xda, 0x78, 0xc6, 0x5b, 0xa5, 0x03, 0xf7, + 0xc8, 0xd8, 0xf6, 0x12, 0x8c, 0xb7, 0x3a, 0xec, 0x77, 0xed, 0x3d, 0x5b, 0xd3, 0x66, 0x37, 0x69, + 0x59, 0x7c, 0x40, 0x9b, 0x45, 0x43, 0xac, 0x6f, 0x45, 0x24, 0xde, 0x0a, 0x7d, 0x57, 0x3c, 0xde, + 0x98, 0xc6, 0x07, 0x64, 0xf0, 0xb8, 0xa3, 0x04, 0xe5, 0xb2, 0xe1, 0x78, 0x7e, 0x3b, 0x22, 0x29, + 0x97, 0x21, 0x93, 0xcb, 0x4a, 0x06, 0x8f, 0x3b, 0x4a, 0xd0, 0x79, 0x74, 0x46, 0xbc, 0xfc, 0x27, + 0xef, 0x2c, 0xab, 0xa0, 0x8f, 0x61, 0x19, 0x95, 0xde, 0x25, 0xd7, 0x85, 0x38, 0xf2, 0x57, 0x6f, + 0x07, 0x6a, 0x6f, 0x4a, 0x89, 0x78, 0x74, 0xc9, 0xe5, 0x5e, 0xde, 0x9f, 0xfb, 0x13, 0x0b, 0x4e, + 0xe5, 0x04, 0x82, 0x71, 0x51, 0xb5, 0xe9, 0xc5, 0x89, 0xca, 0xa9, 0xaf, 0x89, 0x2a, 0x0e, 0xc7, + 0x8a, 0x82, 0xae, 0x07, 0x2e, 0x0c, 0xb3, 0x02, 0x50, 0x04, 0x6f, 0x08, 0xec, 0xd1, 0x04, 0x20, + 0xba, 0x00, 0x03, 0xed, 0x98, 0x44, 0xf2, 0xd1, 0x36, 0x29, 0xbf, 0x99, 0x47, 0x90, 0x61, 0xa8, + 0x46, 0xb9, 0xa9, 0x9c, 0x71, 0x9a, 0x46, 0xc9, 0xdd, 0x71, 0x1c, 0x67, 0x7f, 0xa5, 0x0c, 0x93, + 0x99, 0xb0, 0x4d, 0xda, 0x90, 0x9d, 0x30, 0xf0, 0x92, 0x50, 0x25, 0x0b, 0xe3, 0x6f, 0x4c, 0x91, + 0xd6, 0xd6, 0x9a, 0x80, 0x63, 0x45, 0x81, 0x1e, 0x33, 0x5f, 0xce, 0x4f, 0xdb, 0xbc, 0x58, 0x33, + 0x1e, 0xf4, 0xec, 0xf7, 0x4d, 0x8f, 0x47, 0x61, 0xa0, 0x15, 0xaa, 0xa7, 0x96, 0xd5, 0x78, 0xe2, + 0xc5, 0x5a, 0x3d, 0x0c, 0x7d, 0xcc, 0x90, 0xe8, 0x23, 0xe2, 0xeb, 0x33, 0xe7, 0x15, 0xd8, 0x71, + 0xc3, 0x58, 0xeb, 0x82, 0x27, 0x60, 0x78, 0x9b, 0xec, 0x45, 0x5e, 0xb0, 0x99, 0x3d, 0xad, 0xb9, + 0xca, 0xc1, 0x58, 0xe2, 0xcd, 0x14, 0xdb, 0xc3, 0xf7, 0xe5, 0xdd, 0x8e, 0x91, 0x9e, 0xbb, 0xda, + 0x6f, 0x59, 0x30, 0xc9, 0x12, 0x73, 0x8a, 0xdb, 0xf1, 0x5e, 0x18, 0x9c, 0x80, 0x9e, 0xf0, 0x28, + 0x0c, 0x46, 0xb4, 0xd2, 0x6c, 0x32, 0x7e, 0xd6, 0x12, 0xcc, 0x71, 0xe8, 0x21, 0x18, 0x60, 0x4d, + 0xa0, 0x83, 0x37, 0xc6, 0x53, 0x73, 0xd7, 0x9c, 0xc4, 0xc1, 0x0c, 0xca, 0xae, 0x29, 0x61, 0xd2, + 0xf2, 0x3d, 0xde, 0xe8, 0xd4, 0xdd, 0xfa, 0xc1, 0xb8, 0xa6, 0x94, 0xdb, 0xb4, 0xf7, 0x76, 0x4d, + 0x29, 0x9f, 0x65, 0x77, 0x1d, 0xfc, 0xbf, 0x96, 0xe0, 0x7c, 0x6e, 0xb9, 0xf4, 0x64, 0x77, 0xc5, + 0x38, 0xd9, 0xbd, 0x94, 0x39, 0xd9, 0xb5, 0xbb, 0x97, 0x3e, 0x9e, 0xb3, 0xde, 0xfc, 0x23, 0xd8, + 0xf2, 0x09, 0x1e, 0xc1, 0x0e, 0xf4, 0xab, 0xa6, 0x0c, 0xf6, 0x50, 0x53, 0xbe, 0x6b, 0xc1, 0xb9, + 0xdc, 0x2e, 0xfb, 0x80, 0xdc, 0x0b, 0xcb, 0x6d, 0x5b, 0x81, 0x0d, 0xf1, 0xa3, 0x52, 0xc1, 0xb7, + 0x30, 0x6b, 0xe2, 0x22, 0x95, 0x33, 0x0c, 0x19, 0x0b, 0xb5, 0x6b, 0x8c, 0xcb, 0x18, 0x0e, 0xc3, + 0x0a, 0x8b, 0x3c, 0xed, 0x86, 0x15, 0x6f, 0xda, 0x4b, 0x47, 0x5a, 0x32, 0x73, 0xa6, 0x77, 0x5c, + 0xbf, 0xca, 0x9f, 0xbd, 0x6d, 0xb5, 0xa6, 0x59, 0x80, 0xe5, 0xfe, 0x2d, 0xc0, 0xb1, 0x7c, 0xeb, + 0x0f, 0x2d, 0xc0, 0xe4, 0x8e, 0x17, 0xb0, 0x07, 0x33, 0x4d, 0xbd, 0x47, 0x5d, 0x4b, 0x5d, 0x33, + 0xd1, 0x38, 0x4b, 0x3f, 0xf3, 0x12, 0x8c, 0xdf, 0xbb, 0xcb, 0xea, 0x7b, 0x65, 0x78, 0xb0, 0xcb, + 0xb2, 0xe7, 0xb2, 0xde, 0x18, 0x03, 0x4d, 0xd6, 0x77, 0x8c, 0x43, 0x1d, 0x4e, 0x6f, 0xb4, 0x7d, + 0x7f, 0x8f, 0x45, 0x39, 0x11, 0x57, 0x52, 0x08, 0xc5, 0x44, 0x65, 0xdd, 0x5d, 0xc9, 0xa1, 0xc1, + 0xb9, 0x25, 0xd1, 0xab, 0x80, 0xc2, 0xdb, 0x2c, 0x13, 0xac, 0x9b, 0x26, 0x28, 0x60, 0x1d, 0x5f, + 0x4e, 0x17, 0xe3, 0x8d, 0x0e, 0x0a, 0x9c, 0x53, 0x8a, 0x6a, 0x98, 0xec, 0x99, 0x6f, 0xd5, 0xac, + 0x8c, 0x86, 0x89, 0x75, 0x24, 0x36, 0x69, 0xd1, 0x65, 0x98, 0x76, 0x76, 0x1d, 0x8f, 0x27, 0x95, + 0x92, 0x0c, 0xb8, 0x8a, 0xa9, 0x1c, 0x45, 0x0b, 0x59, 0x02, 0xdc, 0x59, 0x06, 0x6d, 0x18, 0x5e, + 0x3e, 0x9e, 0x64, 0xfe, 0x52, 0xdf, 0xb3, 0xb5, 0x6f, 0xbf, 0x9f, 0xfd, 0x1f, 0x2c, 0xba, 0x7d, + 0xe5, 0xbc, 0xd0, 0x48, 0xfb, 0x41, 0xf9, 0xaf, 0xb4, 0xdb, 0x61, 0xaa, 0x1f, 0x96, 0x74, 0x24, + 0x36, 0x69, 0xf9, 0x84, 0x88, 0xd3, 0x70, 0x69, 0x43, 0x4f, 0x14, 0xd7, 0x29, 0x15, 0x05, 0xfa, + 0x2c, 0x0c, 0xbb, 0xde, 0xae, 0x17, 0x87, 0x91, 0x58, 0x2c, 0x47, 0x7d, 0x99, 0x58, 0xc9, 0xc1, + 0x1a, 0x67, 0x83, 0x25, 0x3f, 0xfb, 0x2b, 0x25, 0x18, 0x97, 0x35, 0xbe, 0xd6, 0x0e, 0x13, 0xe7, + 0x04, 0xb6, 0xe5, 0xcb, 0xc6, 0xb6, 0xfc, 0x91, 0x6e, 0x77, 0x4a, 0x59, 0x93, 0x0a, 0xb7, 0xe3, + 0x1b, 0x99, 0xed, 0xf8, 0xf1, 0xde, 0xac, 0xba, 0x6f, 0xc3, 0xbf, 0x6b, 0xc1, 0xb4, 0x41, 0x7f, + 0x02, 0xbb, 0xc1, 0x8a, 0xb9, 0x1b, 0x3c, 0xd2, 0xf3, 0x1b, 0x0a, 0x76, 0x81, 0xaf, 0x97, 0x32, + 0x6d, 0x67, 0xd2, 0xff, 0x1d, 0x18, 0xd8, 0x72, 0x22, 0xb7, 0x5b, 0x6a, 0xc4, 0x8e, 0x42, 0x73, + 0x57, 0x9c, 0xc8, 0xe5, 0x32, 0xfc, 0x69, 0xf5, 0xba, 0x94, 0x13, 0xb9, 0x3d, 0x6f, 0x07, 0xb0, + 0xaa, 0xd0, 0x8b, 0x30, 0x14, 0x37, 0xc3, 0x96, 0x8a, 0xbd, 0xbc, 0xc0, 0x5f, 0x9e, 0xa2, 0x90, + 0xc3, 0xfd, 0x59, 0x64, 0x56, 0x47, 0xc1, 0x58, 0xd0, 0xcf, 0x6c, 0x42, 0x45, 0x55, 0x7d, 0x5f, + 0xa3, 0xca, 0xff, 0xa8, 0x0c, 0xa7, 0x72, 0xe6, 0x05, 0x8a, 0x8d, 0xde, 0x7a, 0xb6, 0xcf, 0xe9, + 0xf4, 0x1e, 0xfb, 0x2b, 0x66, 0x16, 0x8b, 0x2b, 0xc6, 0xbf, 0xef, 0x4a, 0x6f, 0xc6, 0x24, 0x5b, + 0x29, 0x05, 0xf5, 0xae, 0x94, 0x56, 0x76, 0x62, 0x5d, 0x4d, 0x2b, 0x52, 0x2d, 0xbd, 0xaf, 0x63, + 0xfa, 0x3f, 0xcb, 0x70, 0x3a, 0xef, 0x2a, 0x3a, 0xfa, 0xd9, 0xcc, 0xcb, 0x07, 0xcf, 0xf7, 0x7b, + 0x89, 0x9d, 0x3f, 0x87, 0x20, 0x32, 0xbc, 0xcc, 0x99, 0x6f, 0x21, 0xf4, 0xec, 0x66, 0x51, 0x27, + 0xbb, 0xae, 0x13, 0xf1, 0x17, 0x2b, 0xe4, 0x12, 0xff, 0x58, 0xdf, 0x0d, 0x10, 0x4f, 0x5d, 0xc4, + 0x99, 0xeb, 0x3a, 0x12, 0xdc, 0xfb, 0xba, 0x8e, 0xac, 0x79, 0xc6, 0x83, 0x51, 0xed, 0x6b, 0xee, + 0xeb, 0x88, 0x6f, 0xd3, 0x1d, 0x45, 0x6b, 0xf7, 0x7d, 0x1d, 0xf5, 0xaf, 0x5a, 0x90, 0x89, 0x93, + 0x52, 0xfe, 0x0f, 0xab, 0xd0, 0xff, 0x71, 0x01, 0x06, 0xa2, 0xd0, 0x27, 0xd9, 0x64, 0xf8, 0x38, + 0xf4, 0x09, 0x66, 0x18, 0xf5, 0x52, 0x6c, 0xb9, 0xe8, 0xa5, 0x58, 0x6a, 0x1a, 0xfb, 0x64, 0x97, + 0x48, 0x6f, 0x84, 0x92, 0xc9, 0xd7, 0x28, 0x10, 0x73, 0x9c, 0xfd, 0x1b, 0x03, 0x70, 0x2a, 0xe7, + 0x72, 0x1a, 0x35, 0x54, 0x36, 0x9d, 0x84, 0xdc, 0x71, 0xf6, 0xb2, 0xf9, 0x40, 0x2f, 0x73, 0x30, + 0x96, 0x78, 0x16, 0xcb, 0xc9, 0xd3, 0x95, 0x65, 0x7c, 0x44, 0x22, 0x4b, 0x99, 0xc0, 0xde, 0xaf, + 0xd7, 0x45, 0x2f, 0x01, 0xc4, 0xb1, 0xbf, 0x1c, 0x50, 0xe5, 0xcb, 0x15, 0x91, 0xa2, 0x69, 0x6e, + 0xbb, 0xc6, 0x35, 0x81, 0xc1, 0x1a, 0x15, 0xaa, 0xc1, 0x54, 0x2b, 0x0a, 0x13, 0xee, 0x77, 0xab, + 0xf1, 0x18, 0x85, 0x41, 0xf3, 0x9a, 0x51, 0x3d, 0x83, 0xc7, 0x1d, 0x25, 0xd0, 0x0b, 0x30, 0x2a, + 0xae, 0x1e, 0xd5, 0xc3, 0xd0, 0x17, 0x5e, 0x1a, 0x75, 0xe2, 0xdd, 0x48, 0x51, 0x58, 0xa7, 0xd3, + 0x8a, 0x31, 0x67, 0xde, 0x70, 0x6e, 0x31, 0xee, 0xd0, 0xd3, 0xe8, 0x32, 0x19, 0x29, 0x46, 0xfa, + 0xca, 0x48, 0x91, 0xfa, 0xad, 0x2a, 0x7d, 0x9f, 0x5f, 0x40, 0x4f, 0x4f, 0xcf, 0xb7, 0xca, 0x30, + 0xc4, 0x87, 0xe2, 0x04, 0x54, 0xb1, 0x15, 0xe1, 0xbb, 0xe9, 0x92, 0x07, 0x80, 0xb7, 0x65, 0xae, + 0xe6, 0x24, 0x0e, 0x17, 0x43, 0x6a, 0x35, 0xa4, 0x5e, 0x1e, 0x34, 0x67, 0xac, 0x97, 0x99, 0x8c, + 0x73, 0x02, 0x38, 0x0f, 0x6d, 0xf5, 0xbc, 0x05, 0x10, 0xb3, 0x17, 0x2e, 0x29, 0x0f, 0x91, 0xb7, + 0xf4, 0xc9, 0x2e, 0xb5, 0x37, 0x14, 0x31, 0x6f, 0x43, 0x3a, 0x05, 0x15, 0x02, 0x6b, 0x1c, 0x67, + 0x3e, 0x0e, 0x15, 0x45, 0xdc, 0xcb, 0x92, 0x1b, 0xd3, 0x85, 0xd7, 0xa7, 0x60, 0x32, 0x53, 0xd7, + 0x91, 0x0c, 0xc1, 0xdf, 0xb6, 0x60, 0x32, 0xf3, 0x5c, 0x3e, 0x7a, 0x17, 0x4e, 0xfb, 0x39, 0x8b, + 0x4e, 0x8c, 0x68, 0xff, 0x8b, 0x54, 0x19, 0x7e, 0x79, 0x58, 0x9c, 0x5b, 0x07, 0x35, 0xfe, 0xf9, + 0xdb, 0xbc, 0x8e, 0x2f, 0x22, 0x90, 0xc7, 0x78, 0xce, 0x65, 0x0e, 0xc3, 0x0a, 0x6b, 0x7f, 0xdf, + 0x82, 0xe9, 0x8e, 0x87, 0xdb, 0xdf, 0xd7, 0xb6, 0x8b, 0x94, 0xd2, 0xa5, 0x82, 0x94, 0xd2, 0xfa, + 0xa7, 0x95, 0xbb, 0x7e, 0xda, 0x37, 0x2c, 0x10, 0x33, 0xf0, 0x04, 0xd4, 0xf9, 0x4f, 0x9b, 0xea, + 0xfc, 0x4c, 0xf1, 0xa4, 0x2e, 0xd0, 0xe3, 0xff, 0xd4, 0x82, 0x29, 0x4e, 0x90, 0x1e, 0x5e, 0xbc, + 0xaf, 0xe3, 0xd0, 0xcf, 0xc3, 0x23, 0xea, 0xa5, 0xc7, 0xfc, 0x8f, 0x32, 0x06, 0x6b, 0xa0, 0xeb, + 0x60, 0xfd, 0x67, 0x0b, 0x10, 0xff, 0xfc, 0xec, 0x73, 0xc5, 0x7c, 0x53, 0xd2, 0x4c, 0xed, 0x54, + 0x08, 0x28, 0x0c, 0xd6, 0xa8, 0x8e, 0xa5, 0xe1, 0x99, 0xb3, 0xa1, 0x72, 0xef, 0xb3, 0xa1, 0x23, + 0x7c, 0xeb, 0x5f, 0x19, 0x80, 0x6c, 0x20, 0x22, 0xba, 0x05, 0x63, 0x4d, 0xa7, 0xe5, 0xdc, 0xf6, + 0x7c, 0x2f, 0xf1, 0x48, 0xdc, 0xed, 0x50, 0x79, 0x49, 0xa3, 0x13, 0x07, 0x31, 0x1a, 0x04, 0x1b, + 0x7c, 0xd0, 0x1c, 0x40, 0x2b, 0xf2, 0x76, 0x3d, 0x9f, 0x6c, 0x32, 0x5b, 0x83, 0xdd, 0x46, 0xe0, + 0x27, 0xa5, 0x12, 0x8a, 0x35, 0x8a, 0x9c, 0xe8, 0xf5, 0xf2, 0xfd, 0x8b, 0x5e, 0x1f, 0x38, 0x62, + 0xf4, 0xfa, 0x60, 0x5f, 0xd1, 0xeb, 0x18, 0xce, 0xca, 0x5d, 0x95, 0xfe, 0x5f, 0xf1, 0x7c, 0x22, + 0x54, 0x29, 0x7e, 0x47, 0x61, 0xe6, 0x60, 0x7f, 0xf6, 0x2c, 0xce, 0xa5, 0xc0, 0x05, 0x25, 0xd1, + 0x4f, 0x41, 0xd5, 0xf1, 0xfd, 0xf0, 0x8e, 0xea, 0xb5, 0xe5, 0xb8, 0xe9, 0xf8, 0x69, 0x2a, 0xd0, + 0x91, 0xc5, 0x87, 0x0e, 0xf6, 0x67, 0xab, 0x0b, 0x05, 0x34, 0xb8, 0xb0, 0xb4, 0xbd, 0x0d, 0xa7, + 0x1a, 0x24, 0x92, 0xaf, 0x67, 0xa9, 0xd5, 0xb7, 0x0e, 0x95, 0x28, 0xb3, 0xdc, 0xfb, 0xba, 0x92, + 0xae, 0x25, 0xe0, 0x92, 0xcb, 0x3b, 0x65, 0x64, 0xff, 0x6f, 0x0b, 0x86, 0x45, 0x70, 0xe3, 0x09, + 0x68, 0x19, 0x0b, 0x86, 0xc3, 0x67, 0x36, 0x5f, 0x24, 0xb2, 0xc6, 0x14, 0xba, 0x7a, 0x56, 0x33, + 0xae, 0x9e, 0x47, 0xba, 0x31, 0xe9, 0xee, 0xe4, 0xf9, 0xa5, 0x32, 0x4c, 0x98, 0x81, 0x9d, 0x27, + 0xd0, 0x05, 0xd7, 0x61, 0x38, 0x16, 0x51, 0xc4, 0xa5, 0xe2, 0x68, 0xb4, 0xec, 0x20, 0xa6, 0x67, + 0xd6, 0x22, 0x6e, 0x58, 0x32, 0xc9, 0x0d, 0x4f, 0x2e, 0xdf, 0xc7, 0xf0, 0xe4, 0x5e, 0xb1, 0xb5, + 0x03, 0xc7, 0x11, 0x5b, 0x6b, 0x7f, 0x9b, 0x09, 0x7f, 0x1d, 0x7e, 0x02, 0x3b, 0xf6, 0x65, 0x73, + 0x9b, 0xb0, 0xbb, 0xcc, 0x2c, 0xd1, 0xa8, 0x82, 0x9d, 0xfb, 0x1f, 0x5a, 0x30, 0x2a, 0x08, 0x4f, + 0xa0, 0xd9, 0x9f, 0x31, 0x9b, 0xfd, 0x60, 0x97, 0x66, 0x17, 0xb4, 0xf7, 0x6f, 0x95, 0x54, 0x7b, + 0xeb, 0xe2, 0x61, 0xf9, 0x9e, 0xa9, 0xa1, 0x47, 0xa8, 0x9d, 0x16, 0x36, 0x43, 0x5f, 0xe8, 0x65, + 0x0f, 0xa5, 0xd7, 0xd4, 0x38, 0xfc, 0x50, 0xfb, 0x8d, 0x15, 0x35, 0xbb, 0x45, 0x15, 0x46, 0x89, + 0xd8, 0x40, 0xf3, 0x9e, 0xb5, 0x77, 0x01, 0xd2, 0xd7, 0xc1, 0xc5, 0xbd, 0xce, 0xa3, 0x3f, 0x98, + 0x9f, 0xde, 0x3b, 0x53, 0xbc, 0xb0, 0xc6, 0x57, 0x5e, 0x7c, 0x60, 0x75, 0x0c, 0x9a, 0x27, 0x31, + 0xd7, 0x05, 0x1c, 0x2b, 0x0a, 0xfb, 0xe3, 0x4c, 0x26, 0xb3, 0x0e, 0x3a, 0xda, 0x95, 0xb0, 0xff, + 0x35, 0xa4, 0xba, 0x96, 0xb9, 0x61, 0x6b, 0xfa, 0xc5, 0xb3, 0xee, 0x22, 0x90, 0x56, 0xac, 0x07, + 0xf9, 0xa6, 0xb7, 0xd3, 0xd0, 0xe7, 0x3a, 0x0e, 0xe8, 0x9e, 0xe9, 0x21, 0x4b, 0x8f, 0x70, 0x24, + 0xc7, 0x32, 0xdd, 0xb1, 0x8c, 0x60, 0xab, 0xf5, 0x6c, 0xf2, 0xee, 0x25, 0x89, 0xc0, 0x29, 0x0d, + 0x9a, 0x17, 0x36, 0x1f, 0x77, 0x80, 0x3c, 0x98, 0xb1, 0xf9, 0xe4, 0xe7, 0x6b, 0x46, 0xdf, 0xb3, + 0x30, 0xaa, 0x1e, 0x2d, 0xa9, 0xf3, 0x77, 0x25, 0x2a, 0x5c, 0x97, 0x5a, 0x4e, 0xc1, 0x58, 0xa7, + 0x41, 0xeb, 0x30, 0x19, 0xf3, 0x17, 0x55, 0xe4, 0x5d, 0x04, 0x61, 0xd1, 0x3f, 0x99, 0x79, 0x87, + 0x5c, 0xa2, 0x0f, 0x19, 0x88, 0x2f, 0x56, 0x79, 0x7b, 0x21, 0xcb, 0x02, 0xbd, 0x02, 0x13, 0xbe, + 0xfe, 0xd4, 0x63, 0x5d, 0x18, 0xfc, 0x2a, 0xc8, 0xca, 0x78, 0x08, 0xb2, 0x8e, 0x33, 0xd4, 0x54, + 0x09, 0xd0, 0x21, 0x22, 0x49, 0x8d, 0x13, 0x6c, 0x92, 0x58, 0x3c, 0xe7, 0xc0, 0x94, 0x80, 0x6b, + 0x05, 0x34, 0xb8, 0xb0, 0x34, 0x7a, 0x11, 0xc6, 0xe4, 0xe7, 0x6b, 0x77, 0x73, 0xd2, 0x50, 0x3e, + 0x0d, 0x87, 0x0d, 0x4a, 0x74, 0x07, 0xce, 0xc8, 0xff, 0xeb, 0x91, 0xb3, 0xb1, 0xe1, 0x35, 0xc5, + 0xd5, 0xa8, 0x51, 0xc6, 0x62, 0x41, 0xc6, 0x35, 0x2f, 0xe7, 0x11, 0x1d, 0xee, 0xcf, 0x5e, 0x10, + 0xbd, 0x96, 0x8b, 0x67, 0x83, 0x98, 0xcf, 0x1f, 0xad, 0xc1, 0xa9, 0x2d, 0xe2, 0xf8, 0xc9, 0xd6, + 0xd2, 0x16, 0x69, 0x6e, 0xcb, 0x45, 0xc4, 0x6e, 0xfc, 0x68, 0x01, 0x70, 0x57, 0x3a, 0x49, 0x70, + 0x5e, 0xb9, 0xf7, 0x76, 0x0e, 0xfb, 0x0e, 0x2d, 0xac, 0xe9, 0x00, 0xe8, 0xf3, 0x30, 0xa6, 0xf7, + 0xb5, 0x10, 0xc3, 0x8f, 0xf5, 0x7a, 0xfc, 0x53, 0x68, 0x10, 0xaa, 0xdf, 0x75, 0x1c, 0x36, 0x38, + 0xda, 0xff, 0xbc, 0x04, 0xb3, 0x3d, 0xb2, 0x3c, 0x65, 0x9c, 0x4b, 0x56, 0x5f, 0xce, 0xa5, 0x05, + 0xf9, 0xb8, 0xc7, 0xf5, 0x4c, 0xea, 0xe8, 0xcc, 0xc3, 0x1d, 0x69, 0x02, 0xe9, 0x2c, 0x7d, 0xdf, + 0x71, 0x55, 0xba, 0x7f, 0x6a, 0xa0, 0x67, 0x78, 0x59, 0x5d, 0x77, 0x34, 0x0e, 0xf6, 0xaf, 0x90, + 0x16, 0xfa, 0x18, 0xed, 0x6f, 0x97, 0xe0, 0x8c, 0xea, 0xc2, 0x9f, 0xdc, 0x8e, 0xbb, 0xd9, 0xd9, + 0x71, 0xc7, 0xe0, 0xa1, 0xb5, 0x6f, 0xc0, 0x50, 0x63, 0x2f, 0x6e, 0x26, 0x7e, 0x1f, 0xfb, 0xf7, + 0xa3, 0xc6, 0xca, 0x49, 0x77, 0x19, 0xf6, 0x86, 0x96, 0x58, 0x48, 0xf6, 0x5f, 0xb4, 0x60, 0x72, + 0x7d, 0xa9, 0xde, 0x08, 0x9b, 0xdb, 0x24, 0x59, 0xe0, 0xfe, 0x07, 0x2c, 0xb6, 0x6f, 0xeb, 0x1e, + 0xb7, 0xe5, 0xbc, 0x0d, 0xff, 0x02, 0x0c, 0x6c, 0x85, 0x71, 0x92, 0xf5, 0xc2, 0x5f, 0x09, 0xe3, + 0x04, 0x33, 0x8c, 0xfd, 0xc7, 0x16, 0x0c, 0xb2, 0x67, 0xa3, 0x7a, 0x3d, 0x2f, 0xd6, 0xcf, 0x77, + 0xa1, 0x17, 0x60, 0x88, 0x6c, 0x6c, 0x90, 0x66, 0x22, 0x46, 0x55, 0x5e, 0xf5, 0x18, 0x5a, 0x66, + 0x50, 0xba, 0x67, 0xb1, 0xca, 0xf8, 0x5f, 0x2c, 0x88, 0xd1, 0xe7, 0xa0, 0x92, 0x78, 0x3b, 0x64, + 0xc1, 0x75, 0x85, 0x03, 0xfc, 0x68, 0xb1, 0x4e, 0x6a, 0x0f, 0x5d, 0x97, 0x4c, 0x70, 0xca, 0xcf, + 0xfe, 0x85, 0x12, 0x40, 0x7a, 0x25, 0xac, 0xd7, 0x67, 0x2e, 0x76, 0xbc, 0xa2, 0xf6, 0x58, 0xce, + 0x2b, 0x6a, 0x28, 0x65, 0x98, 0xf3, 0x86, 0x9a, 0xea, 0xaa, 0x72, 0x5f, 0x5d, 0x35, 0x70, 0x94, + 0xae, 0x5a, 0x82, 0xe9, 0xf4, 0x4a, 0x9b, 0x79, 0xbf, 0x97, 0x65, 0x6f, 0x5d, 0xcf, 0x22, 0x71, + 0x27, 0xbd, 0xfd, 0x65, 0x0b, 0x44, 0xfc, 0x6b, 0x1f, 0x13, 0xfa, 0x0d, 0xf9, 0x98, 0x92, 0x91, + 0x7a, 0xee, 0x42, 0x71, 0x40, 0xb0, 0x48, 0x38, 0xa7, 0x24, 0xbb, 0x91, 0x66, 0xce, 0xe0, 0x65, + 0xff, 0xae, 0x05, 0xa3, 0x1c, 0xbd, 0xc6, 0x8c, 0xc4, 0xde, 0xad, 0x39, 0x52, 0xee, 0x5f, 0xf6, + 0xce, 0x10, 0x65, 0xac, 0x52, 0xc4, 0xea, 0xef, 0x0c, 0x49, 0x04, 0x4e, 0x69, 0xd0, 0x13, 0x30, + 0x1c, 0xb7, 0x6f, 0x33, 0xf2, 0x4c, 0x08, 0x6c, 0x83, 0x83, 0xb1, 0xc4, 0xd3, 0x79, 0x35, 0x95, + 0x8d, 0x80, 0x46, 0x57, 0x60, 0x88, 0x8b, 0x0d, 0xb1, 0x8c, 0xbb, 0xb8, 0xfb, 0xb5, 0xb8, 0x69, + 0xe0, 0xaf, 0x49, 0x33, 0x71, 0x23, 0xca, 0xa3, 0x37, 0x61, 0xd4, 0x0d, 0xef, 0x04, 0x77, 0x9c, + 0xc8, 0x5d, 0xa8, 0xaf, 0x8a, 0x5e, 0xcf, 0x8d, 0x63, 0xab, 0xa5, 0x64, 0x7a, 0x2c, 0x36, 0x73, + 0xa0, 0xa5, 0x28, 0xac, 0xb3, 0x43, 0xeb, 0x2c, 0xcb, 0xc6, 0x86, 0xb7, 0xb9, 0xe6, 0xb4, 0xba, + 0x45, 0x76, 0x2c, 0x49, 0x22, 0x8d, 0xf3, 0xb8, 0x48, 0xc5, 0xc1, 0x11, 0x38, 0x65, 0x64, 0x7f, + 0xf1, 0x14, 0x18, 0xa3, 0x6d, 0x64, 0xe8, 0xb5, 0x8e, 0x29, 0x43, 0x2f, 0x86, 0x11, 0xb2, 0xd3, + 0x4a, 0xf6, 0x6a, 0x5e, 0xd4, 0x2d, 0x65, 0xfa, 0xb2, 0xa0, 0xe9, 0xe4, 0x29, 0x31, 0x58, 0xf1, + 0xc9, 0x4f, 0xa3, 0x5c, 0x7e, 0x1f, 0xd3, 0x28, 0x0f, 0x9c, 0x60, 0x1a, 0xe5, 0xeb, 0x30, 0xbc, + 0xe9, 0x25, 0x98, 0xb4, 0x42, 0xb1, 0x65, 0xe6, 0xce, 0x84, 0xcb, 0x9c, 0xa4, 0x33, 0x01, 0xa8, + 0x40, 0x60, 0xc9, 0x04, 0xbd, 0xaa, 0xd6, 0xc0, 0x50, 0xb1, 0x2a, 0xd8, 0xe9, 0x7f, 0xce, 0x5d, + 0x05, 0x22, 0x6d, 0xf2, 0xf0, 0xbd, 0xa6, 0x4d, 0x56, 0x69, 0x8f, 0x47, 0xde, 0x5b, 0xda, 0x63, + 0x23, 0x2d, 0x74, 0xe5, 0xf8, 0xd2, 0x42, 0x7f, 0xd9, 0x82, 0x33, 0xad, 0xbc, 0x0c, 0xe9, 0x22, + 0x95, 0xf1, 0x0b, 0x7d, 0x67, 0x8a, 0x37, 0x2a, 0x64, 0xa9, 0x1e, 0x72, 0xc9, 0x70, 0x7e, 0x75, + 0x32, 0xbf, 0xf4, 0xe8, 0xbd, 0xe6, 0x97, 0xbe, 0x3f, 0x39, 0x8f, 0xd3, 0x6c, 0xd3, 0xe3, 0xc7, + 0x98, 0x6d, 0x7a, 0xe2, 0x3d, 0x67, 0x9b, 0xd6, 0x32, 0x46, 0x4f, 0x1e, 0x47, 0xc6, 0xe8, 0xb7, + 0x4c, 0x61, 0xcf, 0x13, 0x19, 0x3f, 0xd5, 0x43, 0xd8, 0x1b, 0x7c, 0xbb, 0x8b, 0x7b, 0x9e, 0x1d, + 0x7b, 0xfa, 0x9e, 0xb2, 0x63, 0x1b, 0x79, 0xa7, 0xd1, 0xf1, 0xe5, 0x9d, 0xbe, 0xa5, 0x6f, 0x41, + 0xa7, 0x8a, 0xf9, 0xaa, 0x9d, 0xa6, 0x93, 0x6f, 0xde, 0x26, 0xd4, 0x99, 0xcf, 0xfa, 0xf4, 0xc9, + 0xe4, 0xb3, 0x3e, 0x73, 0xec, 0xf9, 0xac, 0xcf, 0x9e, 0x40, 0x3e, 0xeb, 0x07, 0xde, 0xd7, 0x7c, + 0xd6, 0xd5, 0xfb, 0x9b, 0xcf, 0xfa, 0xdc, 0x71, 0xe4, 0xb3, 0xbe, 0x05, 0x95, 0x96, 0xbc, 0x24, + 0x57, 0x9d, 0x29, 0x1e, 0x92, 0xdc, 0x9b, 0x74, 0x7c, 0x48, 0x14, 0x0a, 0xa7, 0xac, 0x28, 0xdf, + 0x34, 0xbf, 0xf5, 0x83, 0xc5, 0x7c, 0x73, 0xcd, 0xf6, 0x2e, 0x59, 0xad, 0xff, 0x52, 0x09, 0xce, + 0x77, 0x9f, 0xd7, 0xa9, 0xcd, 0x5f, 0x4f, 0x5d, 0xac, 0x19, 0x9b, 0x9f, 0x29, 0x5d, 0x1a, 0x55, + 0xdf, 0x37, 0x89, 0x2f, 0xc3, 0xb4, 0x8a, 0x15, 0xf2, 0xbd, 0xe6, 0x9e, 0xf6, 0xfc, 0x8c, 0x0a, + 0x3f, 0x6f, 0x64, 0x09, 0x70, 0x67, 0x19, 0xb4, 0x00, 0x93, 0x06, 0x70, 0xb5, 0x26, 0x54, 0x72, + 0xe5, 0x64, 0x68, 0x98, 0x68, 0x9c, 0xa5, 0xb7, 0xbf, 0x6e, 0xc1, 0x03, 0x05, 0xa9, 0x31, 0xfb, + 0xbe, 0x28, 0xbb, 0x01, 0x93, 0x2d, 0xb3, 0x68, 0x8f, 0xfb, 0xf4, 0x46, 0x02, 0x4e, 0xd5, 0xd6, + 0x0c, 0x02, 0x67, 0x99, 0x2e, 0x5e, 0xfc, 0xce, 0x0f, 0xce, 0x7f, 0xe8, 0x0f, 0x7f, 0x70, 0xfe, + 0x43, 0xdf, 0xff, 0xc1, 0xf9, 0x0f, 0xfd, 0xb9, 0x83, 0xf3, 0xd6, 0x77, 0x0e, 0xce, 0x5b, 0x7f, + 0x78, 0x70, 0xde, 0xfa, 0xfe, 0xc1, 0x79, 0xeb, 0x4f, 0x0e, 0xce, 0x5b, 0xbf, 0xf0, 0xc3, 0xf3, + 0x1f, 0x7a, 0xa3, 0xb4, 0xfb, 0xec, 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff, 0xc9, 0x6a, 0xe4, 0x7c, + 0xae, 0xc8, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/api/v1/generated.proto b/vendor/k8s.io/api/core/v1/generated.proto similarity index 99% rename from vendor/k8s.io/client-go/pkg/api/v1/generated.proto rename to vendor/k8s.io/api/core/v1/generated.proto index 2accf2a6c..a073471f8 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/generated.proto +++ b/vendor/k8s.io/api/core/v1/generated.proto @@ -19,7 +19,7 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.client_go.pkg.api.v1; +package k8s.io.api.core.v1; import "k8s.io/apimachinery/pkg/api/resource/generated.proto"; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; @@ -1958,6 +1958,7 @@ message ObjectMeta { } // ObjectReference contains enough information to let you inspect or modify the referred object. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object message ObjectReference { // Kind of the referent. // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds @@ -2788,9 +2789,25 @@ message PodSpec { // HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts // file if specified. This is only valid for non-hostNetwork pods. // +optional - // +patchMergeKey=IP + // +patchMergeKey=ip // +patchStrategy=merge - repeated HostAlias hostMappings = 23; + repeated HostAlias hostAliases = 23; + + // If specified, indicates the pod's priority. "SYSTEM" is a special keyword + // which indicates the highest priority. Any other name must be defined by + // creating a PriorityClass object with that name. + // If not specified, the pod priority will be default or zero if there is no + // default. + // +optional + optional string priorityClassName = 24; + + // The priority value. Various system components use this field to find the + // priority of the pod. When Priority Admission Controller is enabled, it + // prevents users from setting this field. The admission controller populates + // this field from PriorityClassName. + // The higher the value, the higher the priority. + // +optional + optional int32 priority = 25; } // PodStatus represents information about the status of a pod. Status may trail the actual @@ -2813,7 +2830,7 @@ message PodStatus { optional string message = 3; // A brief CamelCase message indicating details about why the pod is in this state. - // e.g. 'OutOfDisk' + // e.g. 'Evicted' // +optional optional string reason = 4; @@ -3523,6 +3540,15 @@ message SecurityContext { // Default is false. // +optional optional bool readOnlyRootFilesystem = 6; + + // AllowPrivilegeEscalation controls whether a process can gain more + // privileges than it's parent process. This bool directly controls if + // the no_new_privs flag will be set on the container process. + // AllowPrivilegeEscalation is true always when the container is: + // 1) run as Privileged + // 2) has CAP_SYS_ADMIN + // +optional + optional bool allowPrivilegeEscalation = 7; } // SerializedReference is a reference to serialized object. diff --git a/vendor/k8s.io/client-go/pkg/api/v1/meta.go b/vendor/k8s.io/api/core/v1/meta.go similarity index 100% rename from vendor/k8s.io/client-go/pkg/api/v1/meta.go rename to vendor/k8s.io/api/core/v1/meta.go diff --git a/vendor/k8s.io/client-go/pkg/api/v1/objectreference.go b/vendor/k8s.io/api/core/v1/objectreference.go similarity index 100% rename from vendor/k8s.io/client-go/pkg/api/v1/objectreference.go rename to vendor/k8s.io/api/core/v1/objectreference.go diff --git a/vendor/k8s.io/client-go/pkg/api/v1/register.go b/vendor/k8s.io/api/core/v1/register.go similarity index 86% rename from vendor/k8s.io/client-go/pkg/api/v1/register.go rename to vendor/k8s.io/api/core/v1/register.go index c70d6ac56..73252bb14 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/register.go +++ b/vendor/k8s.io/api/core/v1/register.go @@ -14,6 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +//TODO: this file is going to be moved to k8s.io/api + package v1 import ( @@ -34,19 +36,12 @@ func Resource(resource string) schema.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, addConversionFuncs, addFastPathConversionFuncs) -} + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + AddToScheme = SchemeBuilder.AddToScheme +) // Adds the list of known types to api.Scheme. func addKnownTypes(scheme *runtime.Scheme) error { diff --git a/vendor/k8s.io/client-go/pkg/api/v1/resource.go b/vendor/k8s.io/api/core/v1/resource.go similarity index 100% rename from vendor/k8s.io/client-go/pkg/api/v1/resource.go rename to vendor/k8s.io/api/core/v1/resource.go diff --git a/vendor/k8s.io/client-go/pkg/api/v1/taint.go b/vendor/k8s.io/api/core/v1/taint.go similarity index 100% rename from vendor/k8s.io/client-go/pkg/api/v1/taint.go rename to vendor/k8s.io/api/core/v1/taint.go diff --git a/vendor/k8s.io/client-go/pkg/api/v1/toleration.go b/vendor/k8s.io/api/core/v1/toleration.go similarity index 100% rename from vendor/k8s.io/client-go/pkg/api/v1/toleration.go rename to vendor/k8s.io/api/core/v1/toleration.go diff --git a/vendor/k8s.io/client-go/pkg/api/v1/types.generated.go b/vendor/k8s.io/api/core/v1/types.generated.go similarity index 99% rename from vendor/k8s.io/client-go/pkg/api/v1/types.generated.go rename to vendor/k8s.io/api/core/v1/types.generated.go index dc5ef1f52..3a422a59f 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/types.generated.go +++ b/vendor/k8s.io/api/core/v1/types.generated.go @@ -35760,7 +35760,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [23]bool + var yyq2 [25]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = len(x.Volumes) != 0 @@ -35785,9 +35785,11 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[20] = x.SchedulerName != "" yyq2[21] = len(x.Tolerations) != 0 yyq2[22] = len(x.HostAliases) != 0 + yyq2[23] = x.PriorityClassName != "" + yyq2[24] = x.Priority != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(23) + r.EncodeArrayStart(25) } else { yynn2 = 1 for _, b := range yyq2 { @@ -36415,7 +36417,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { if yyq2[22] { z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("hostMappings")) + r.EncodeString(codecSelferC_UTF81234, string("hostAliases")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.HostAliases == nil { r.EncodeNil() @@ -36429,6 +36431,66 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[23] { + yym79 := z.EncBinary() + _ = yym79 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.PriorityClassName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[23] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("priorityClassName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym80 := z.EncBinary() + _ = yym80 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.PriorityClassName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[24] { + if x.Priority == nil { + r.EncodeNil() + } else { + yy82 := *x.Priority + yym83 := z.EncBinary() + _ = yym83 + if false { + } else { + r.EncodeInt(int64(yy82)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[24] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("priority")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Priority == nil { + r.EncodeNil() + } else { + yy84 := *x.Priority + yym85 := z.EncBinary() + _ = yym85 + if false { + } else { + r.EncodeInt(int64(yy84)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -36754,7 +36816,7 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceToleration((*[]Toleration)(yyv42), d) } } - case "hostMappings": + case "hostAliases": if r.TryDecodeAsNil() { x.HostAliases = nil } else { @@ -36766,6 +36828,34 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceHostAlias((*[]HostAlias)(yyv44), d) } } + case "priorityClassName": + if r.TryDecodeAsNil() { + x.PriorityClassName = "" + } else { + yyv46 := &x.PriorityClassName + yym47 := z.DecBinary() + _ = yym47 + if false { + } else { + *((*string)(yyv46)) = r.DecodeString() + } + } + case "priority": + if r.TryDecodeAsNil() { + if x.Priority != nil { + x.Priority = nil + } + } else { + if x.Priority == nil { + x.Priority = new(int32) + } + yym49 := z.DecBinary() + _ = yym49 + if false { + } else { + *((*int32)(x.Priority)) = int32(r.DecodeInt(32)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -36777,16 +36867,16 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj46 int - var yyb46 bool - var yyhl46 bool = l >= 0 - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + var yyj50 int + var yyb50 bool + var yyhl50 bool = l >= 0 + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36794,21 +36884,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Volumes = nil } else { - yyv47 := &x.Volumes - yym48 := z.DecBinary() - _ = yym48 + yyv51 := &x.Volumes + yym52 := z.DecBinary() + _ = yym52 if false { } else { - h.decSliceVolume((*[]Volume)(yyv47), d) + h.decSliceVolume((*[]Volume)(yyv51), d) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36816,21 +36906,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.InitContainers = nil } else { - yyv49 := &x.InitContainers - yym50 := z.DecBinary() - _ = yym50 + yyv53 := &x.InitContainers + yym54 := z.DecBinary() + _ = yym54 if false { } else { - h.decSliceContainer((*[]Container)(yyv49), d) + h.decSliceContainer((*[]Container)(yyv53), d) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36838,21 +36928,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Containers = nil } else { - yyv51 := &x.Containers - yym52 := z.DecBinary() - _ = yym52 + yyv55 := &x.Containers + yym56 := z.DecBinary() + _ = yym56 if false { } else { - h.decSliceContainer((*[]Container)(yyv51), d) + h.decSliceContainer((*[]Container)(yyv55), d) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36860,16 +36950,16 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.RestartPolicy = "" } else { - yyv53 := &x.RestartPolicy - yyv53.CodecDecodeSelf(d) + yyv57 := &x.RestartPolicy + yyv57.CodecDecodeSelf(d) } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36882,20 +36972,20 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.TerminationGracePeriodSeconds == nil { x.TerminationGracePeriodSeconds = new(int64) } - yym55 := z.DecBinary() - _ = yym55 + yym59 := z.DecBinary() + _ = yym59 if false { } else { *((*int64)(x.TerminationGracePeriodSeconds)) = int64(r.DecodeInt(64)) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36908,20 +36998,20 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.ActiveDeadlineSeconds == nil { x.ActiveDeadlineSeconds = new(int64) } - yym57 := z.DecBinary() - _ = yym57 + yym61 := z.DecBinary() + _ = yym61 if false { } else { *((*int64)(x.ActiveDeadlineSeconds)) = int64(r.DecodeInt(64)) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36929,16 +37019,16 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.DNSPolicy = "" } else { - yyv58 := &x.DNSPolicy - yyv58.CodecDecodeSelf(d) + yyv62 := &x.DNSPolicy + yyv62.CodecDecodeSelf(d) } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36946,21 +37036,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.NodeSelector = nil } else { - yyv59 := &x.NodeSelector - yym60 := z.DecBinary() - _ = yym60 + yyv63 := &x.NodeSelector + yym64 := z.DecBinary() + _ = yym64 if false { } else { - z.F.DecMapStringStringX(yyv59, false, d) + z.F.DecMapStringStringX(yyv63, false, d) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36968,21 +37058,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.ServiceAccountName = "" } else { - yyv61 := &x.ServiceAccountName - yym62 := z.DecBinary() - _ = yym62 + yyv65 := &x.ServiceAccountName + yym66 := z.DecBinary() + _ = yym66 if false { } else { - *((*string)(yyv61)) = r.DecodeString() + *((*string)(yyv65)) = r.DecodeString() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -36990,21 +37080,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.DeprecatedServiceAccount = "" } else { - yyv63 := &x.DeprecatedServiceAccount - yym64 := z.DecBinary() - _ = yym64 + yyv67 := &x.DeprecatedServiceAccount + yym68 := z.DecBinary() + _ = yym68 if false { } else { - *((*string)(yyv63)) = r.DecodeString() + *((*string)(yyv67)) = r.DecodeString() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37017,20 +37107,20 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.AutomountServiceAccountToken == nil { x.AutomountServiceAccountToken = new(bool) } - yym66 := z.DecBinary() - _ = yym66 + yym70 := z.DecBinary() + _ = yym70 if false { } else { *((*bool)(x.AutomountServiceAccountToken)) = r.DecodeBool() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37038,21 +37128,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.NodeName = "" } else { - yyv67 := &x.NodeName - yym68 := z.DecBinary() - _ = yym68 + yyv71 := &x.NodeName + yym72 := z.DecBinary() + _ = yym72 if false { } else { - *((*string)(yyv67)) = r.DecodeString() + *((*string)(yyv71)) = r.DecodeString() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37060,51 +37150,7 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.HostNetwork = false } else { - yyv69 := &x.HostNetwork - yym70 := z.DecBinary() - _ = yym70 - if false { - } else { - *((*bool)(yyv69)) = r.DecodeBool() - } - } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l - } else { - yyb46 = r.CheckBreak() - } - if yyb46 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.HostPID = false - } else { - yyv71 := &x.HostPID - yym72 := z.DecBinary() - _ = yym72 - if false { - } else { - *((*bool)(yyv71)) = r.DecodeBool() - } - } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l - } else { - yyb46 = r.CheckBreak() - } - if yyb46 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.HostIPC = false - } else { - yyv73 := &x.HostIPC + yyv73 := &x.HostNetwork yym74 := z.DecBinary() _ = yym74 if false { @@ -37112,13 +37158,57 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { *((*bool)(yyv73)) = r.DecodeBool() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.HostPID = false + } else { + yyv75 := &x.HostPID + yym76 := z.DecBinary() + _ = yym76 + if false { + } else { + *((*bool)(yyv75)) = r.DecodeBool() + } + } + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l + } else { + yyb50 = r.CheckBreak() + } + if yyb50 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.HostIPC = false + } else { + yyv77 := &x.HostIPC + yym78 := z.DecBinary() + _ = yym78 + if false { + } else { + *((*bool)(yyv77)) = r.DecodeBool() + } + } + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l + } else { + yyb50 = r.CheckBreak() + } + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37133,13 +37223,13 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.SecurityContext.CodecDecodeSelf(d) } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37147,21 +37237,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.ImagePullSecrets = nil } else { - yyv76 := &x.ImagePullSecrets - yym77 := z.DecBinary() - _ = yym77 + yyv80 := &x.ImagePullSecrets + yym81 := z.DecBinary() + _ = yym81 if false { } else { - h.decSliceLocalObjectReference((*[]LocalObjectReference)(yyv76), d) + h.decSliceLocalObjectReference((*[]LocalObjectReference)(yyv80), d) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37169,21 +37259,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Hostname = "" } else { - yyv78 := &x.Hostname - yym79 := z.DecBinary() - _ = yym79 + yyv82 := &x.Hostname + yym83 := z.DecBinary() + _ = yym83 if false { } else { - *((*string)(yyv78)) = r.DecodeString() + *((*string)(yyv82)) = r.DecodeString() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37191,21 +37281,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Subdomain = "" } else { - yyv80 := &x.Subdomain - yym81 := z.DecBinary() - _ = yym81 + yyv84 := &x.Subdomain + yym85 := z.DecBinary() + _ = yym85 if false { } else { - *((*string)(yyv80)) = r.DecodeString() + *((*string)(yyv84)) = r.DecodeString() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37220,13 +37310,13 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Affinity.CodecDecodeSelf(d) } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37234,21 +37324,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.SchedulerName = "" } else { - yyv83 := &x.SchedulerName - yym84 := z.DecBinary() - _ = yym84 + yyv87 := &x.SchedulerName + yym88 := z.DecBinary() + _ = yym88 if false { } else { - *((*string)(yyv83)) = r.DecodeString() + *((*string)(yyv87)) = r.DecodeString() } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37256,21 +37346,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Tolerations = nil } else { - yyv85 := &x.Tolerations - yym86 := z.DecBinary() - _ = yym86 + yyv89 := &x.Tolerations + yym90 := z.DecBinary() + _ = yym90 if false { } else { - h.decSliceToleration((*[]Toleration)(yyv85), d) + h.decSliceToleration((*[]Toleration)(yyv89), d) } } - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -37278,26 +37368,74 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.HostAliases = nil } else { - yyv87 := &x.HostAliases - yym88 := z.DecBinary() - _ = yym88 + yyv91 := &x.HostAliases + yym92 := z.DecBinary() + _ = yym92 if false { } else { - h.decSliceHostAlias((*[]HostAlias)(yyv87), d) + h.decSliceHostAlias((*[]HostAlias)(yyv91), d) + } + } + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l + } else { + yyb50 = r.CheckBreak() + } + if yyb50 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.PriorityClassName = "" + } else { + yyv93 := &x.PriorityClassName + yym94 := z.DecBinary() + _ = yym94 + if false { + } else { + *((*string)(yyv93)) = r.DecodeString() + } + } + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l + } else { + yyb50 = r.CheckBreak() + } + if yyb50 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Priority != nil { + x.Priority = nil + } + } else { + if x.Priority == nil { + x.Priority = new(int32) + } + yym96 := z.DecBinary() + _ = yym96 + if false { + } else { + *((*int32)(x.Priority)) = int32(r.DecodeInt(32)) } } for { - yyj46++ - if yyhl46 { - yyb46 = yyj46 > l + yyj50++ + if yyhl50 { + yyb50 = yyj50 > l } else { - yyb46 = r.CheckBreak() + yyb50 = r.CheckBreak() } - if yyb46 { + if yyb50 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj46-1, "") + z.DecStructFieldNotFound(yyj50-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -37619,7 +37757,6 @@ func (x *PodSecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { yym8 := z.EncBinary() _ = yym8 if false { - } else if z.HasExtensions() && z.EncExt(yy7) { } else { r.EncodeInt(int64(yy7)) } @@ -37639,7 +37776,6 @@ func (x *PodSecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { yym10 := z.EncBinary() _ = yym10 if false { - } else if z.HasExtensions() && z.EncExt(yy9) { } else { r.EncodeInt(int64(yy9)) } @@ -37691,7 +37827,7 @@ func (x *PodSecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym17 if false { } else { - h.encSlicetypes_UnixGroupID(([]pkg1_types.UnixGroupID)(x.SupplementalGroups), e) + z.F.EncSliceInt64V(x.SupplementalGroups, false, e) } } } else { @@ -37709,7 +37845,7 @@ func (x *PodSecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym18 if false { } else { - h.encSlicetypes_UnixGroupID(([]pkg1_types.UnixGroupID)(x.SupplementalGroups), e) + z.F.EncSliceInt64V(x.SupplementalGroups, false, e) } } } @@ -37724,7 +37860,6 @@ func (x *PodSecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { yym21 := z.EncBinary() _ = yym21 if false { - } else if z.HasExtensions() && z.EncExt(yy20) { } else { r.EncodeInt(int64(yy20)) } @@ -37744,7 +37879,6 @@ func (x *PodSecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { yym23 := z.EncBinary() _ = yym23 if false { - } else if z.HasExtensions() && z.EncExt(yy22) { } else { r.EncodeInt(int64(yy22)) } @@ -37830,12 +37964,11 @@ func (x *PodSecurityContext) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) } } else { if x.RunAsUser == nil { - x.RunAsUser = new(pkg1_types.UnixUserID) + x.RunAsUser = new(int64) } yym6 := z.DecBinary() _ = yym6 if false { - } else if z.HasExtensions() && z.DecExt(x.RunAsUser) { } else { *((*int64)(x.RunAsUser)) = int64(r.DecodeInt(64)) } @@ -37865,7 +37998,7 @@ func (x *PodSecurityContext) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) _ = yym10 if false { } else { - h.decSlicetypes_UnixGroupID((*[]pkg1_types.UnixGroupID)(yyv9), d) + z.F.DecSliceInt64X(yyv9, false, d) } } case "fsGroup": @@ -37875,12 +38008,11 @@ func (x *PodSecurityContext) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) } } else { if x.FSGroup == nil { - x.FSGroup = new(pkg1_types.UnixGroupID) + x.FSGroup = new(int64) } yym12 := z.DecBinary() _ = yym12 if false { - } else if z.HasExtensions() && z.DecExt(x.FSGroup) { } else { *((*int64)(x.FSGroup)) = int64(r.DecodeInt(64)) } @@ -37937,12 +38069,11 @@ func (x *PodSecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decode } } else { if x.RunAsUser == nil { - x.RunAsUser = new(pkg1_types.UnixUserID) + x.RunAsUser = new(int64) } yym16 := z.DecBinary() _ = yym16 if false { - } else if z.HasExtensions() && z.DecExt(x.RunAsUser) { } else { *((*int64)(x.RunAsUser)) = int64(r.DecodeInt(64)) } @@ -37992,7 +38123,7 @@ func (x *PodSecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decode _ = yym20 if false { } else { - h.decSlicetypes_UnixGroupID((*[]pkg1_types.UnixGroupID)(yyv19), d) + z.F.DecSliceInt64X(yyv19, false, d) } } yyj13++ @@ -38012,12 +38143,11 @@ func (x *PodSecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decode } } else { if x.FSGroup == nil { - x.FSGroup = new(pkg1_types.UnixGroupID) + x.FSGroup = new(int64) } yym22 := z.DecBinary() _ = yym22 if false { - } else if z.HasExtensions() && z.DecExt(x.FSGroup) { } else { *((*int64)(x.FSGroup)) = int64(r.DecodeInt(64)) } @@ -67856,7 +67986,7 @@ func (x *SecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [6]bool + var yyq2 [7]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Capabilities != nil @@ -67865,9 +67995,10 @@ func (x *SecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[3] = x.RunAsUser != nil yyq2[4] = x.RunAsNonRoot != nil yyq2[5] = x.ReadOnlyRootFilesystem != nil + yyq2[6] = x.AllowPrivilegeEscalation != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(6) + r.EncodeArrayStart(7) } else { yynn2 = 0 for _, b := range yyq2 { @@ -67969,7 +68100,6 @@ func (x *SecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { yym16 := z.EncBinary() _ = yym16 if false { - } else if z.HasExtensions() && z.EncExt(yy15) { } else { r.EncodeInt(int64(yy15)) } @@ -67989,7 +68119,6 @@ func (x *SecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { yym18 := z.EncBinary() _ = yym18 if false { - } else if z.HasExtensions() && z.EncExt(yy17) { } else { r.EncodeInt(int64(yy17)) } @@ -68066,6 +68195,41 @@ func (x *SecurityContext) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[6] { + if x.AllowPrivilegeEscalation == nil { + r.EncodeNil() + } else { + yy30 := *x.AllowPrivilegeEscalation + yym31 := z.EncBinary() + _ = yym31 + if false { + } else { + r.EncodeBool(bool(yy30)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[6] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("allowPrivilegeEscalation")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.AllowPrivilegeEscalation == nil { + r.EncodeNil() + } else { + yy32 := *x.AllowPrivilegeEscalation + yym33 := z.EncBinary() + _ = yym33 + if false { + } else { + r.EncodeBool(bool(yy32)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -68172,12 +68336,11 @@ func (x *SecurityContext) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } } else { if x.RunAsUser == nil { - x.RunAsUser = new(pkg1_types.UnixUserID) + x.RunAsUser = new(int64) } yym9 := z.DecBinary() _ = yym9 if false { - } else if z.HasExtensions() && z.DecExt(x.RunAsUser) { } else { *((*int64)(x.RunAsUser)) = int64(r.DecodeInt(64)) } @@ -68214,6 +68377,22 @@ func (x *SecurityContext) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*bool)(x.ReadOnlyRootFilesystem)) = r.DecodeBool() } } + case "allowPrivilegeEscalation": + if r.TryDecodeAsNil() { + if x.AllowPrivilegeEscalation != nil { + x.AllowPrivilegeEscalation = nil + } + } else { + if x.AllowPrivilegeEscalation == nil { + x.AllowPrivilegeEscalation = new(bool) + } + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*bool)(x.AllowPrivilegeEscalation)) = r.DecodeBool() + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -68225,16 +68404,16 @@ func (x *SecurityContext) 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 + 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 } @@ -68249,13 +68428,13 @@ func (x *SecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) } x.Capabilities.CodecDecodeSelf(d) } - 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 } @@ -68268,20 +68447,20 @@ func (x *SecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if x.Privileged == nil { x.Privileged = new(bool) } - yym17 := z.DecBinary() - _ = yym17 + yym19 := z.DecBinary() + _ = yym19 if false { } else { *((*bool)(x.Privileged)) = r.DecodeBool() } } - 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 } @@ -68296,13 +68475,13 @@ func (x *SecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) } x.SELinuxOptions.CodecDecodeSelf(d) } - 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 } @@ -68313,23 +68492,22 @@ func (x *SecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) } } else { if x.RunAsUser == nil { - x.RunAsUser = new(pkg1_types.UnixUserID) + x.RunAsUser = new(int64) } - yym20 := z.DecBinary() - _ = yym20 + yym22 := z.DecBinary() + _ = yym22 if false { - } else if z.HasExtensions() && z.DecExt(x.RunAsUser) { } else { *((*int64)(x.RunAsUser)) = 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 } @@ -68342,20 +68520,20 @@ func (x *SecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if x.RunAsNonRoot == nil { x.RunAsNonRoot = new(bool) } - yym22 := z.DecBinary() - _ = yym22 + yym24 := z.DecBinary() + _ = yym24 if false { } else { *((*bool)(x.RunAsNonRoot)) = r.DecodeBool() } } - 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 } @@ -68368,25 +68546,51 @@ func (x *SecurityContext) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if x.ReadOnlyRootFilesystem == nil { x.ReadOnlyRootFilesystem = new(bool) } - yym24 := z.DecBinary() - _ = yym24 + yym26 := z.DecBinary() + _ = yym26 if false { } else { *((*bool)(x.ReadOnlyRootFilesystem)) = r.DecodeBool() } } - for { - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l + } else { + yyb16 = r.CheckBreak() + } + if yyb16 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.AllowPrivilegeEscalation != nil { + x.AllowPrivilegeEscalation = nil } - if yyb14 { + } else { + if x.AllowPrivilegeEscalation == nil { + x.AllowPrivilegeEscalation = new(bool) + } + yym28 := z.DecBinary() + _ = yym28 + if false { + } else { + *((*bool)(x.AllowPrivilegeEscalation)) = r.DecodeBool() + } + } + for { + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l + } else { + yyb16 = r.CheckBreak() + } + if yyb16 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj14-1, "") + z.DecStructFieldNotFound(yyj16-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -72192,143 +72396,6 @@ func (x codecSelfer1234) decSliceHostAlias(v *[]HostAlias, d *codec1978.Decoder) } } -func (x codecSelfer1234) encSlicetypes_UnixGroupID(v []pkg1_types.UnixGroupID, 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) - yym2 := z.EncBinary() - _ = yym2 - if false { - } else if z.HasExtensions() && z.EncExt(yyv1) { - } else { - r.EncodeInt(int64(yyv1)) - } - } - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) -} - -func (x codecSelfer1234) decSlicetypes_UnixGroupID(v *[]pkg1_types.UnixGroupID, 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 = []pkg1_types.UnixGroupID{} - 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, 8) - if yyrt1 { - if yyrl1 <= cap(yyv1) { - yyv1 = yyv1[:yyrl1] - } else { - yyv1 = make([]pkg1_types.UnixGroupID, yyrl1) - } - } else { - yyv1 = make([]pkg1_types.UnixGroupID, 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] = 0 - } else { - yyv2 := &yyv1[yyj1] - yym3 := z.DecBinary() - _ = yym3 - if false { - } else if z.HasExtensions() && z.DecExt(yyv2) { - } else { - *((*int64)(yyv2)) = int64(r.DecodeInt(64)) - } - } - - } - if yyrt1 { - for ; yyj1 < yyl1; yyj1++ { - yyv1 = append(yyv1, 0) - yyh1.ElemContainerState(yyj1) - if r.TryDecodeAsNil() { - yyv1[yyj1] = 0 - } else { - yyv4 := &yyv1[yyj1] - yym5 := z.DecBinary() - _ = yym5 - if false { - } else if z.HasExtensions() && z.DecExt(yyv4) { - } else { - *((*int64)(yyv4)) = int64(r.DecodeInt(64)) - } - } - - } - } - - } else { - yyj1 := 0 - for ; !r.CheckBreak(); yyj1++ { - - if yyj1 >= len(yyv1) { - yyv1 = append(yyv1, 0) // var yyz1 pkg1_types.UnixGroupID - yyc1 = true - } - yyh1.ElemContainerState(yyj1) - if yyj1 < len(yyv1) { - if r.TryDecodeAsNil() { - yyv1[yyj1] = 0 - } else { - yyv6 := &yyv1[yyj1] - yym7 := z.DecBinary() - _ = yym7 - if false { - } else if z.HasExtensions() && z.DecExt(yyv6) { - } else { - *((*int64)(yyv6)) = int64(r.DecodeInt(64)) - } - } - - } else { - z.DecSwallow() - } - - } - if yyj1 < len(yyv1) { - yyv1 = yyv1[:yyj1] - yyc1 = true - } else if yyj1 == 0 && yyv1 == nil { - yyv1 = []pkg1_types.UnixGroupID{} - yyc1 = true - } - } - yyh1.End() - if yyc1 { - *v = yyv1 - } -} - func (x codecSelfer1234) encSlicePodCondition(v []PodCondition, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -72606,7 +72673,7 @@ func (x codecSelfer1234) decSlicePod(v *[]Pod, d *codec1978.Decoder) { yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 768) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 792) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -72725,7 +72792,7 @@ func (x codecSelfer1234) decSlicePodTemplate(v *[]PodTemplate, d *codec1978.Deco yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 824) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 848) 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/api/core/v1/types.go similarity index 97% rename from vendor/k8s.io/client-go/pkg/api/v1/types.go rename to vendor/k8s.io/api/core/v1/types.go index ba7723296..c2c574e34 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/types.go +++ b/vendor/k8s.io/api/core/v1/types.go @@ -464,8 +464,9 @@ const ( AlphaStorageNodeAffinityAnnotation = "volume.alpha.kubernetes.io/node-affinity" ) -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // PersistentVolume (PV) is a storage resource provisioned by an administrator. // It is analogous to a node. @@ -551,6 +552,8 @@ type PersistentVolumeStatus struct { Reason string `json:"reason,omitempty" protobuf:"bytes,3,opt,name=reason"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PersistentVolumeList is a list of PersistentVolume items. type PersistentVolumeList struct { metav1.TypeMeta `json:",inline"` @@ -563,7 +566,8 @@ type PersistentVolumeList struct { Items []PersistentVolume `json:"items" protobuf:"bytes,2,rep,name=items"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // PersistentVolumeClaim is a user's request for and claim to a persistent volume type PersistentVolumeClaim struct { @@ -585,6 +589,8 @@ type PersistentVolumeClaim struct { Status PersistentVolumeClaimStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PersistentVolumeClaimList is a list of PersistentVolumeClaim items. type PersistentVolumeClaimList struct { metav1.TypeMeta `json:",inline"` @@ -2517,9 +2523,23 @@ type PodSpec struct { // HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts // file if specified. This is only valid for non-hostNetwork pods. // +optional - // +patchMergeKey=IP + // +patchMergeKey=ip // +patchStrategy=merge - HostAliases []HostAlias `json:"hostMappings,omitempty" patchStrategy:"merge" patchMergeKey:"IP" protobuf:"bytes,23,rep,name=hostMappings"` + HostAliases []HostAlias `json:"hostAliases,omitempty" patchStrategy:"merge" patchMergeKey:"ip" protobuf:"bytes,23,rep,name=hostAliases"` + // If specified, indicates the pod's priority. "SYSTEM" is a special keyword + // which indicates the highest priority. Any other name must be defined by + // creating a PriorityClass object with that name. + // If not specified, the pod priority will be default or zero if there is no + // default. + // +optional + PriorityClassName string `json:"priorityClassName,omitempty" protobuf:"bytes,24,opt,name=priorityClassName"` + // The priority value. Various system components use this field to find the + // priority of the pod. When Priority Admission Controller is enabled, it + // prevents users from setting this field. The admission controller populates + // this field from PriorityClassName. + // The higher the value, the higher the priority. + // +optional + Priority *int32 `json:"priority,omitempty" protobuf:"bytes,25,opt,name=priority"` } // HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the @@ -2548,7 +2568,7 @@ type PodSecurityContext struct { // PodSecurityContext, the value specified in SecurityContext takes precedence // for that container. // +optional - RunAsUser *types.UnixUserID `json:"runAsUser,omitempty" protobuf:"varint,2,opt,name=runAsUser,casttype=k8s.io/apimachinery/pkg/types.UnixUserID"` + RunAsUser *int64 `json:"runAsUser,omitempty" protobuf:"varint,2,opt,name=runAsUser"` // Indicates that the container must run as a non-root user. // If true, the Kubelet will validate the image at runtime to ensure that it // does not run as UID 0 (root) and fail to start the container if it does. @@ -2561,7 +2581,7 @@ type PodSecurityContext struct { // to the container's primary GID. If unspecified, no groups will be added to // any container. // +optional - SupplementalGroups []types.UnixGroupID `json:"supplementalGroups,omitempty" protobuf:"varint,4,rep,name=supplementalGroups,casttype=k8s.io/apimachinery/pkg/types.UnixGroupID"` + SupplementalGroups []int64 `json:"supplementalGroups,omitempty" protobuf:"varint,4,rep,name=supplementalGroups"` // A special supplemental group that applies to all containers in a pod. // Some volume types allow the Kubelet to change the ownership of that volume // to be owned by the pod: @@ -2572,7 +2592,7 @@ type PodSecurityContext struct { // // If unset, the Kubelet will not modify the ownership and permissions of any volume. // +optional - FSGroup *types.UnixGroupID `json:"fsGroup,omitempty" protobuf:"varint,5,opt,name=fsGroup,casttype=k8s.io/apimachinery/pkg/types.UnixGroupID"` + FSGroup *int64 `json:"fsGroup,omitempty" protobuf:"varint,5,opt,name=fsGroup"` } // PodQOSClass defines the supported qos classes of Pods. @@ -2604,7 +2624,7 @@ type PodStatus struct { // +optional Message string `json:"message,omitempty" protobuf:"bytes,3,opt,name=message"` // A brief CamelCase message indicating details about why the pod is in this state. - // e.g. 'OutOfDisk' + // e.g. 'Evicted' // +optional Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"` @@ -2639,6 +2659,8 @@ type PodStatus struct { QOSClass PodQOSClass `json:"qosClass,omitempty" protobuf:"bytes,9,rep,name=qosClass"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded type PodStatusResult struct { metav1.TypeMeta `json:",inline"` @@ -2655,7 +2677,8 @@ type PodStatusResult struct { Status PodStatus `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Pod is a collection of containers that can run on a host. This resource is created // by clients and scheduled onto hosts. @@ -2680,6 +2703,8 @@ type Pod struct { Status PodStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodList is a list of Pods. type PodList struct { metav1.TypeMeta `json:",inline"` @@ -2706,7 +2731,8 @@ type PodTemplateSpec struct { Spec PodSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // PodTemplate describes a template for creating copies of a predefined pod. type PodTemplate struct { @@ -2722,6 +2748,8 @@ type PodTemplate struct { Template PodTemplateSpec `json:"template,omitempty" protobuf:"bytes,2,opt,name=template"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodTemplateList is a list of PodTemplates. type PodTemplateList struct { metav1.TypeMeta `json:",inline"` @@ -2827,7 +2855,8 @@ type ReplicationControllerCondition struct { Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ReplicationController represents the configuration of a replication controller. type ReplicationController struct { @@ -2853,6 +2882,8 @@ type ReplicationController struct { Status ReplicationControllerStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ReplicationControllerList is a collection of replication controllers. type ReplicationControllerList struct { metav1.TypeMeta `json:",inline"` @@ -3078,7 +3109,8 @@ type ServicePort struct { NodePort int32 `json:"nodePort,omitempty" protobuf:"varint,5,opt,name=nodePort"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // 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 @@ -3109,6 +3141,8 @@ const ( ClusterIPNone = "None" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ServiceList holds a list of services. type ServiceList struct { metav1.TypeMeta `json:",inline"` @@ -3121,7 +3155,8 @@ type ServiceList struct { Items []Service `json:"items" protobuf:"bytes,2,rep,name=items"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ServiceAccount binds together: // * a name, understood by users, and perhaps by peripheral systems, for an identity @@ -3154,6 +3189,8 @@ type ServiceAccount struct { AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty" protobuf:"varint,4,opt,name=automountServiceAccountToken"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ServiceAccountList is a list of ServiceAccount objects type ServiceAccountList struct { metav1.TypeMeta `json:",inline"` @@ -3167,7 +3204,8 @@ type ServiceAccountList struct { Items []ServiceAccount `json:"items" protobuf:"bytes,2,rep,name=items"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Endpoints is a collection of endpoints that implement the actual service. Example: // Name: "mysvc", @@ -3261,6 +3299,8 @@ type EndpointPort struct { Protocol Protocol `json:"protocol,omitempty" protobuf:"bytes,3,opt,name=protocol,casttype=Protocol"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // EndpointsList is a list of endpoints. type EndpointsList struct { metav1.TypeMeta `json:",inline"` @@ -3547,8 +3587,9 @@ const ( // ResourceList is a set of (resource name, quantity) pairs. type ResourceList map[ResourceName]resource.Quantity -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Node is a worker node in Kubernetes. // Each node will have a unique identifier in the cache (i.e. in etcd). @@ -3572,6 +3613,8 @@ type Node struct { Status NodeStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // NodeList is the whole list of all Nodes which have been registered with master. type NodeList struct { metav1.TypeMeta `json:",inline"` @@ -3619,8 +3662,9 @@ const ( NamespaceTerminating NamespacePhase = "Terminating" ) -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Namespace provides a scope for Names. // Use of multiple namespaces is optional. @@ -3642,6 +3686,8 @@ type Namespace struct { Status NamespaceStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // NamespaceList is a list of Namespaces. type NamespaceList struct { metav1.TypeMeta `json:",inline"` @@ -3655,6 +3701,8 @@ type NamespaceList struct { Items []Namespace `json:"items" protobuf:"bytes,2,rep,name=items"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // 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 { @@ -3690,6 +3738,8 @@ const ( DeletePropagationForeground DeletionPropagation = "Foreground" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // DeleteOptions may be provided when deleting an API object // DEPRECATED: This type has been moved to meta/v1 and will be removed soon. // +k8s:openapi-gen=false @@ -3723,6 +3773,8 @@ type DeleteOptions struct { PropagationPolicy *DeletionPropagation `protobuf:"bytes,4,opt,name=propagationPolicy,casttype=DeletionPropagation"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ListOptions is the query options to a standard REST list call. // DEPRECATED: This type has been moved to meta/v1 and will be removed soon. // +k8s:openapi-gen=false @@ -3757,6 +3809,8 @@ type ListOptions struct { TimeoutSeconds *int64 `json:"timeoutSeconds,omitempty" protobuf:"varint,5,opt,name=timeoutSeconds"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodLogOptions is the query options for a Pod's logs REST call. type PodLogOptions struct { metav1.TypeMeta `json:",inline"` @@ -3797,6 +3851,8 @@ type PodLogOptions struct { LimitBytes *int64 `json:"limitBytes,omitempty" protobuf:"varint,8,opt,name=limitBytes"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodAttachOptions is the query options to a Pod's remote attach call. // --- // TODO: merge w/ PodExecOptions below for stdin, stdout, etc @@ -3832,6 +3888,8 @@ type PodAttachOptions struct { Container string `json:"container,omitempty" protobuf:"bytes,5,opt,name=container"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodExecOptions is the query options to a Pod's remote exec call. // --- // TODO: This is largely identical to PodAttachOptions above, make sure they stay in sync and see about merging @@ -3868,6 +3926,8 @@ type PodExecOptions struct { Command []string `json:"command" protobuf:"bytes,6,rep,name=command"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodPortForwardOptions is the query options to a Pod's port forward call // when using WebSockets. // The `port` query parameter must specify the port or @@ -3883,6 +3943,8 @@ type PodPortForwardOptions struct { Ports []int32 `json:"ports,omitempty" protobuf:"varint,1,rep,name=ports"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodProxyOptions is the query options to a Pod's proxy call. type PodProxyOptions struct { metav1.TypeMeta `json:",inline"` @@ -3892,6 +3954,8 @@ type PodProxyOptions struct { Path string `json:"path,omitempty" protobuf:"bytes,1,opt,name=path"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // NodeProxyOptions is the query options to a Node's proxy call. type NodeProxyOptions struct { metav1.TypeMeta `json:",inline"` @@ -3901,6 +3965,8 @@ type NodeProxyOptions struct { Path string `json:"path,omitempty" protobuf:"bytes,1,opt,name=path"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ServiceProxyOptions is the query options to a Service's proxy call. type ServiceProxyOptions struct { metav1.TypeMeta `json:",inline"` @@ -3915,6 +3981,7 @@ type ServiceProxyOptions struct { } // ObjectReference contains enough information to let you inspect or modify the referred object. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type ObjectReference struct { // Kind of the referent. // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds @@ -3962,6 +4029,8 @@ type LocalObjectReference struct { Name string `json:"name,omitempty" protobuf:"bytes,1,opt,name=name"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // SerializedReference is a reference to serialized object. type SerializedReference struct { metav1.TypeMeta `json:",inline"` @@ -3988,7 +4057,8 @@ const ( EventTypeWarning string = "Warning" ) -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Event is a report of an event somewhere in the cluster. // TODO: Decide whether to store these separately or with the object they apply to. @@ -4033,6 +4103,8 @@ type Event struct { Type string `json:"type,omitempty" protobuf:"bytes,9,opt,name=type"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // EventList is a list of events. type EventList struct { metav1.TypeMeta `json:",inline"` @@ -4045,6 +4117,8 @@ type EventList struct { Items []Event `json:"items" protobuf:"bytes,2,rep,name=items"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // List holds a list of objects, which may not be known by the server. type List struct { metav1.TypeMeta `json:",inline"` @@ -4097,7 +4171,8 @@ type LimitRangeSpec struct { Limits []LimitRangeItem `json:"limits" protobuf:"bytes,1,rep,name=limits"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // LimitRange sets resource usage limits for each kind of resource in a Namespace. type LimitRange struct { @@ -4113,6 +4188,8 @@ type LimitRange struct { Spec LimitRangeSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // LimitRangeList is a list of LimitRange items. type LimitRangeList struct { metav1.TypeMeta `json:",inline"` @@ -4195,7 +4272,8 @@ type ResourceQuotaStatus struct { Used ResourceList `json:"used,omitempty" protobuf:"bytes,2,rep,name=used,casttype=ResourceList,castkey=ResourceName"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ResourceQuota sets aggregate quota restrictions enforced per namespace type ResourceQuota struct { @@ -4216,6 +4294,8 @@ type ResourceQuota struct { Status ResourceQuotaStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ResourceQuotaList is a list of ResourceQuota items. type ResourceQuotaList struct { metav1.TypeMeta `json:",inline"` @@ -4229,7 +4309,8 @@ type ResourceQuotaList struct { Items []ResourceQuota `json:"items" protobuf:"bytes,2,rep,name=items"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Secret holds secret data of a certain type. The total bytes of the values in // the Data field must be less than MaxSecretSize bytes. @@ -4343,6 +4424,8 @@ const ( TLSPrivateKeyKey = "tls.key" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // SecretList is a list of Secret. type SecretList struct { metav1.TypeMeta `json:",inline"` @@ -4356,7 +4439,8 @@ type SecretList struct { Items []Secret `json:"items" protobuf:"bytes,2,rep,name=items"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ConfigMap holds configuration data for pods to consume. type ConfigMap struct { @@ -4372,6 +4456,8 @@ type ConfigMap struct { Data map[string]string `json:"data,omitempty" protobuf:"bytes,2,rep,name=data"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ConfigMapList is a resource containing a list of ConfigMap objects. type ConfigMapList struct { metav1.TypeMeta `json:",inline"` @@ -4410,8 +4496,9 @@ type ComponentCondition struct { Error string `json:"error,omitempty" protobuf:"bytes,4,opt,name=error"` } -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ComponentStatus (and ComponentStatusList) holds the cluster validation info. type ComponentStatus struct { @@ -4428,6 +4515,8 @@ type ComponentStatus struct { Conditions []ComponentCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,2,rep,name=conditions"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // Status of all the conditions for the component as a list of ComponentStatus objects. type ComponentStatusList struct { metav1.TypeMeta `json:",inline"` @@ -4511,7 +4600,7 @@ type SecurityContext struct { // May also be set in PodSecurityContext. If set in both SecurityContext and // PodSecurityContext, the value specified in SecurityContext takes precedence. // +optional - RunAsUser *types.UnixUserID `json:"runAsUser,omitempty" protobuf:"varint,4,opt,name=runAsUser,casttype=k8s.io/apimachinery/pkg/types.UnixUserID"` + RunAsUser *int64 `json:"runAsUser,omitempty" protobuf:"varint,4,opt,name=runAsUser"` // Indicates that the container must run as a non-root user. // If true, the Kubelet will validate the image at runtime to ensure that it // does not run as UID 0 (root) and fail to start the container if it does. @@ -4524,6 +4613,14 @@ type SecurityContext struct { // Default is false. // +optional ReadOnlyRootFilesystem *bool `json:"readOnlyRootFilesystem,omitempty" protobuf:"varint,6,opt,name=readOnlyRootFilesystem"` + // AllowPrivilegeEscalation controls whether a process can gain more + // privileges than it's parent process. This bool directly controls if + // the no_new_privs flag will be set on the container process. + // AllowPrivilegeEscalation is true always when the container is: + // 1) run as Privileged + // 2) has CAP_SYS_ADMIN + // +optional + AllowPrivilegeEscalation *bool `json:"allowPrivilegeEscalation,omitempty" protobuf:"varint,7,opt,name=allowPrivilegeEscalation"` } // SELinuxOptions are the labels to be applied to the container @@ -4542,6 +4639,8 @@ type SELinuxOptions struct { Level string `json:"level,omitempty" protobuf:"bytes,4,opt,name=level"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // RangeAllocation is not a public type. type RangeAllocation struct { metav1.TypeMeta `json:",inline"` @@ -4592,7 +4691,7 @@ const ( // Enable TTY for remote command execution ExecTTYParam = "tty" // Command to run for remote command execution - ExecCommandParamm = "command" + ExecCommandParam = "command" // Name of header that specifies stream type StreamType = "streamType" diff --git a/vendor/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go b/vendor/k8s.io/api/core/v1/types_swagger_doc_generated.go similarity index 98% rename from vendor/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go rename to vendor/k8s.io/api/core/v1/types_swagger_doc_generated.go index 73bcc6197..365825019 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/api/core/v1/types_swagger_doc_generated.go @@ -1375,7 +1375,9 @@ var map_PodSpec = map[string]string{ "affinity": "If specified, the pod's scheduling constraints", "schedulerName": "If specified, the pod will be dispatched by specified scheduler. If not specified, the pod will be dispatched by default scheduler.", "tolerations": "If specified, the pod's tolerations.", - "hostMappings": "HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts file if specified. This is only valid for non-hostNetwork pods.", + "hostAliases": "HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts file if specified. This is only valid for non-hostNetwork pods.", + "priorityClassName": "If specified, indicates the pod's priority. \"SYSTEM\" is a special keyword which indicates the highest priority. Any other name must be defined by creating a PriorityClass object with that name. If not specified, the pod priority will be default or zero if there is no default.", + "priority": "The priority value. Various system components use this field to find the priority of the pod. When Priority Admission Controller is enabled, it prevents users from setting this field. The admission controller populates this field from PriorityClassName. The higher the value, the higher the priority.", } func (PodSpec) SwaggerDoc() map[string]string { @@ -1387,7 +1389,7 @@ var map_PodStatus = map[string]string{ "phase": "Current condition of the pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-phase", "conditions": "Current service state of pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions", "message": "A human readable message indicating details about why the pod is in this condition.", - "reason": "A brief CamelCase message indicating details about why the pod is in this state. e.g. 'OutOfDisk'", + "reason": "A brief CamelCase message indicating details about why the pod is in this state. e.g. 'Evicted'", "hostIP": "IP address of the host to which the pod is assigned. Empty if not yet scheduled.", "podIP": "IP address allocated to the pod. Routable at least within the cluster. Empty if not yet allocated.", "startTime": "RFC 3339 date and time at which the object was acknowledged by the Kubelet. This is before the Kubelet pulled the container image(s) for the pod.", @@ -1761,13 +1763,14 @@ func (SecretVolumeSource) SwaggerDoc() map[string]string { } var map_SecurityContext = map[string]string{ - "": "SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.", - "capabilities": "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime.", - "privileged": "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false.", - "seLinuxOptions": "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.", - "runAsUser": "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.", - "runAsNonRoot": "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.", - "readOnlyRootFilesystem": "Whether this container has a read-only root filesystem. Default is false.", + "": "SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.", + "capabilities": "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime.", + "privileged": "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false.", + "seLinuxOptions": "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.", + "runAsUser": "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.", + "runAsNonRoot": "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.", + "readOnlyRootFilesystem": "Whether this container has a read-only root filesystem. Default is false.", + "allowPrivilegeEscalation": "AllowPrivilegeEscalation controls whether a process can gain more privileges than it's parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN", } func (SecurityContext) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/api/core/v1/zz_generated.deepcopy.go b/vendor/k8s.io/api/core/v1/zz_generated.deepcopy.go new file mode 100644 index 000000000..8dc98c772 --- /dev/null +++ b/vendor/k8s.io/api/core/v1/zz_generated.deepcopy.go @@ -0,0 +1,6046 @@ +// +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" + types "k8s.io/apimachinery/pkg/types" + reflect "reflect" +) + +// Deprecated: register deep-copy functions. +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// Deprecated: 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: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AWSElasticBlockStoreVolumeSource).DeepCopyInto(out.(*AWSElasticBlockStoreVolumeSource)) + return nil + }, InType: reflect.TypeOf(&AWSElasticBlockStoreVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Affinity).DeepCopyInto(out.(*Affinity)) + return nil + }, InType: reflect.TypeOf(&Affinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AttachedVolume).DeepCopyInto(out.(*AttachedVolume)) + return nil + }, InType: reflect.TypeOf(&AttachedVolume{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AvoidPods).DeepCopyInto(out.(*AvoidPods)) + return nil + }, InType: reflect.TypeOf(&AvoidPods{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AzureDiskVolumeSource).DeepCopyInto(out.(*AzureDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&AzureDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AzureFileVolumeSource).DeepCopyInto(out.(*AzureFileVolumeSource)) + return nil + }, InType: reflect.TypeOf(&AzureFileVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Binding).DeepCopyInto(out.(*Binding)) + return nil + }, InType: reflect.TypeOf(&Binding{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Capabilities).DeepCopyInto(out.(*Capabilities)) + return nil + }, InType: reflect.TypeOf(&Capabilities{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*CephFSVolumeSource).DeepCopyInto(out.(*CephFSVolumeSource)) + return nil + }, InType: reflect.TypeOf(&CephFSVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*CinderVolumeSource).DeepCopyInto(out.(*CinderVolumeSource)) + return nil + }, InType: reflect.TypeOf(&CinderVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ComponentCondition).DeepCopyInto(out.(*ComponentCondition)) + return nil + }, InType: reflect.TypeOf(&ComponentCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ComponentStatus).DeepCopyInto(out.(*ComponentStatus)) + return nil + }, InType: reflect.TypeOf(&ComponentStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ComponentStatusList).DeepCopyInto(out.(*ComponentStatusList)) + return nil + }, InType: reflect.TypeOf(&ComponentStatusList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMap).DeepCopyInto(out.(*ConfigMap)) + return nil + }, InType: reflect.TypeOf(&ConfigMap{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapEnvSource).DeepCopyInto(out.(*ConfigMapEnvSource)) + return nil + }, InType: reflect.TypeOf(&ConfigMapEnvSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapKeySelector).DeepCopyInto(out.(*ConfigMapKeySelector)) + return nil + }, InType: reflect.TypeOf(&ConfigMapKeySelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapList).DeepCopyInto(out.(*ConfigMapList)) + return nil + }, InType: reflect.TypeOf(&ConfigMapList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapProjection).DeepCopyInto(out.(*ConfigMapProjection)) + return nil + }, InType: reflect.TypeOf(&ConfigMapProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapVolumeSource).DeepCopyInto(out.(*ConfigMapVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ConfigMapVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Container).DeepCopyInto(out.(*Container)) + return nil + }, InType: reflect.TypeOf(&Container{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerImage).DeepCopyInto(out.(*ContainerImage)) + return nil + }, InType: reflect.TypeOf(&ContainerImage{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerPort).DeepCopyInto(out.(*ContainerPort)) + return nil + }, InType: reflect.TypeOf(&ContainerPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerState).DeepCopyInto(out.(*ContainerState)) + return nil + }, InType: reflect.TypeOf(&ContainerState{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStateRunning).DeepCopyInto(out.(*ContainerStateRunning)) + return nil + }, InType: reflect.TypeOf(&ContainerStateRunning{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStateTerminated).DeepCopyInto(out.(*ContainerStateTerminated)) + return nil + }, InType: reflect.TypeOf(&ContainerStateTerminated{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStateWaiting).DeepCopyInto(out.(*ContainerStateWaiting)) + return nil + }, InType: reflect.TypeOf(&ContainerStateWaiting{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStatus).DeepCopyInto(out.(*ContainerStatus)) + return nil + }, InType: reflect.TypeOf(&ContainerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DaemonEndpoint).DeepCopyInto(out.(*DaemonEndpoint)) + return nil + }, InType: reflect.TypeOf(&DaemonEndpoint{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DeleteOptions).DeepCopyInto(out.(*DeleteOptions)) + return nil + }, InType: reflect.TypeOf(&DeleteOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DownwardAPIProjection).DeepCopyInto(out.(*DownwardAPIProjection)) + return nil + }, InType: reflect.TypeOf(&DownwardAPIProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DownwardAPIVolumeFile).DeepCopyInto(out.(*DownwardAPIVolumeFile)) + return nil + }, InType: reflect.TypeOf(&DownwardAPIVolumeFile{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DownwardAPIVolumeSource).DeepCopyInto(out.(*DownwardAPIVolumeSource)) + return nil + }, InType: reflect.TypeOf(&DownwardAPIVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EmptyDirVolumeSource).DeepCopyInto(out.(*EmptyDirVolumeSource)) + return nil + }, InType: reflect.TypeOf(&EmptyDirVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointAddress).DeepCopyInto(out.(*EndpointAddress)) + return nil + }, InType: reflect.TypeOf(&EndpointAddress{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointPort).DeepCopyInto(out.(*EndpointPort)) + return nil + }, InType: reflect.TypeOf(&EndpointPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointSubset).DeepCopyInto(out.(*EndpointSubset)) + return nil + }, InType: reflect.TypeOf(&EndpointSubset{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Endpoints).DeepCopyInto(out.(*Endpoints)) + return nil + }, InType: reflect.TypeOf(&Endpoints{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointsList).DeepCopyInto(out.(*EndpointsList)) + return nil + }, InType: reflect.TypeOf(&EndpointsList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EnvFromSource).DeepCopyInto(out.(*EnvFromSource)) + return nil + }, InType: reflect.TypeOf(&EnvFromSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EnvVar).DeepCopyInto(out.(*EnvVar)) + return nil + }, InType: reflect.TypeOf(&EnvVar{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EnvVarSource).DeepCopyInto(out.(*EnvVarSource)) + return nil + }, InType: reflect.TypeOf(&EnvVarSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Event).DeepCopyInto(out.(*Event)) + return nil + }, InType: reflect.TypeOf(&Event{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EventList).DeepCopyInto(out.(*EventList)) + return nil + }, InType: reflect.TypeOf(&EventList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EventSource).DeepCopyInto(out.(*EventSource)) + return nil + }, InType: reflect.TypeOf(&EventSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ExecAction).DeepCopyInto(out.(*ExecAction)) + return nil + }, InType: reflect.TypeOf(&ExecAction{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*FCVolumeSource).DeepCopyInto(out.(*FCVolumeSource)) + return nil + }, InType: reflect.TypeOf(&FCVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*FlexVolumeSource).DeepCopyInto(out.(*FlexVolumeSource)) + return nil + }, InType: reflect.TypeOf(&FlexVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*FlockerVolumeSource).DeepCopyInto(out.(*FlockerVolumeSource)) + return nil + }, InType: reflect.TypeOf(&FlockerVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GCEPersistentDiskVolumeSource).DeepCopyInto(out.(*GCEPersistentDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&GCEPersistentDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GitRepoVolumeSource).DeepCopyInto(out.(*GitRepoVolumeSource)) + return nil + }, InType: reflect.TypeOf(&GitRepoVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GlusterfsVolumeSource).DeepCopyInto(out.(*GlusterfsVolumeSource)) + return nil + }, InType: reflect.TypeOf(&GlusterfsVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HTTPGetAction).DeepCopyInto(out.(*HTTPGetAction)) + return nil + }, InType: reflect.TypeOf(&HTTPGetAction{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HTTPHeader).DeepCopyInto(out.(*HTTPHeader)) + return nil + }, InType: reflect.TypeOf(&HTTPHeader{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Handler).DeepCopyInto(out.(*Handler)) + return nil + }, InType: reflect.TypeOf(&Handler{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HostAlias).DeepCopyInto(out.(*HostAlias)) + return nil + }, InType: reflect.TypeOf(&HostAlias{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HostPathVolumeSource).DeepCopyInto(out.(*HostPathVolumeSource)) + return nil + }, InType: reflect.TypeOf(&HostPathVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ISCSIVolumeSource).DeepCopyInto(out.(*ISCSIVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ISCSIVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*KeyToPath).DeepCopyInto(out.(*KeyToPath)) + return nil + }, InType: reflect.TypeOf(&KeyToPath{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Lifecycle).DeepCopyInto(out.(*Lifecycle)) + return nil + }, InType: reflect.TypeOf(&Lifecycle{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRange).DeepCopyInto(out.(*LimitRange)) + return nil + }, InType: reflect.TypeOf(&LimitRange{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRangeItem).DeepCopyInto(out.(*LimitRangeItem)) + return nil + }, InType: reflect.TypeOf(&LimitRangeItem{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRangeList).DeepCopyInto(out.(*LimitRangeList)) + return nil + }, InType: reflect.TypeOf(&LimitRangeList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRangeSpec).DeepCopyInto(out.(*LimitRangeSpec)) + return nil + }, InType: reflect.TypeOf(&LimitRangeSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*List).DeepCopyInto(out.(*List)) + return nil + }, InType: reflect.TypeOf(&List{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ListOptions).DeepCopyInto(out.(*ListOptions)) + return nil + }, InType: reflect.TypeOf(&ListOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LoadBalancerIngress).DeepCopyInto(out.(*LoadBalancerIngress)) + return nil + }, InType: reflect.TypeOf(&LoadBalancerIngress{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LoadBalancerStatus).DeepCopyInto(out.(*LoadBalancerStatus)) + return nil + }, InType: reflect.TypeOf(&LoadBalancerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LocalObjectReference).DeepCopyInto(out.(*LocalObjectReference)) + return nil + }, InType: reflect.TypeOf(&LocalObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LocalVolumeSource).DeepCopyInto(out.(*LocalVolumeSource)) + return nil + }, InType: reflect.TypeOf(&LocalVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NFSVolumeSource).DeepCopyInto(out.(*NFSVolumeSource)) + return nil + }, InType: reflect.TypeOf(&NFSVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Namespace).DeepCopyInto(out.(*Namespace)) + return nil + }, InType: reflect.TypeOf(&Namespace{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NamespaceList).DeepCopyInto(out.(*NamespaceList)) + return nil + }, InType: reflect.TypeOf(&NamespaceList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NamespaceSpec).DeepCopyInto(out.(*NamespaceSpec)) + return nil + }, InType: reflect.TypeOf(&NamespaceSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NamespaceStatus).DeepCopyInto(out.(*NamespaceStatus)) + return nil + }, InType: reflect.TypeOf(&NamespaceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Node).DeepCopyInto(out.(*Node)) + return nil + }, InType: reflect.TypeOf(&Node{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeAddress).DeepCopyInto(out.(*NodeAddress)) + return nil + }, InType: reflect.TypeOf(&NodeAddress{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeAffinity).DeepCopyInto(out.(*NodeAffinity)) + return nil + }, InType: reflect.TypeOf(&NodeAffinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeCondition).DeepCopyInto(out.(*NodeCondition)) + return nil + }, InType: reflect.TypeOf(&NodeCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeDaemonEndpoints).DeepCopyInto(out.(*NodeDaemonEndpoints)) + return nil + }, InType: reflect.TypeOf(&NodeDaemonEndpoints{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeList).DeepCopyInto(out.(*NodeList)) + return nil + }, InType: reflect.TypeOf(&NodeList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeProxyOptions).DeepCopyInto(out.(*NodeProxyOptions)) + return nil + }, InType: reflect.TypeOf(&NodeProxyOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeResources).DeepCopyInto(out.(*NodeResources)) + return nil + }, InType: reflect.TypeOf(&NodeResources{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSelector).DeepCopyInto(out.(*NodeSelector)) + return nil + }, InType: reflect.TypeOf(&NodeSelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSelectorRequirement).DeepCopyInto(out.(*NodeSelectorRequirement)) + return nil + }, InType: reflect.TypeOf(&NodeSelectorRequirement{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSelectorTerm).DeepCopyInto(out.(*NodeSelectorTerm)) + return nil + }, InType: reflect.TypeOf(&NodeSelectorTerm{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSpec).DeepCopyInto(out.(*NodeSpec)) + return nil + }, InType: reflect.TypeOf(&NodeSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeStatus).DeepCopyInto(out.(*NodeStatus)) + return nil + }, InType: reflect.TypeOf(&NodeStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSystemInfo).DeepCopyInto(out.(*NodeSystemInfo)) + return nil + }, InType: reflect.TypeOf(&NodeSystemInfo{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ObjectFieldSelector).DeepCopyInto(out.(*ObjectFieldSelector)) + return nil + }, InType: reflect.TypeOf(&ObjectFieldSelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ObjectMeta).DeepCopyInto(out.(*ObjectMeta)) + return nil + }, InType: reflect.TypeOf(&ObjectMeta{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ObjectReference).DeepCopyInto(out.(*ObjectReference)) + return nil + }, InType: reflect.TypeOf(&ObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolume).DeepCopyInto(out.(*PersistentVolume)) + return nil + }, InType: reflect.TypeOf(&PersistentVolume{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaim).DeepCopyInto(out.(*PersistentVolumeClaim)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaim{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimList).DeepCopyInto(out.(*PersistentVolumeClaimList)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimSpec).DeepCopyInto(out.(*PersistentVolumeClaimSpec)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimStatus).DeepCopyInto(out.(*PersistentVolumeClaimStatus)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimVolumeSource).DeepCopyInto(out.(*PersistentVolumeClaimVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeList).DeepCopyInto(out.(*PersistentVolumeList)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeSource).DeepCopyInto(out.(*PersistentVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeSpec).DeepCopyInto(out.(*PersistentVolumeSpec)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeStatus).DeepCopyInto(out.(*PersistentVolumeStatus)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PhotonPersistentDiskVolumeSource).DeepCopyInto(out.(*PhotonPersistentDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PhotonPersistentDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Pod).DeepCopyInto(out.(*Pod)) + return nil + }, InType: reflect.TypeOf(&Pod{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAffinity).DeepCopyInto(out.(*PodAffinity)) + return nil + }, InType: reflect.TypeOf(&PodAffinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAffinityTerm).DeepCopyInto(out.(*PodAffinityTerm)) + return nil + }, InType: reflect.TypeOf(&PodAffinityTerm{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAntiAffinity).DeepCopyInto(out.(*PodAntiAffinity)) + return nil + }, InType: reflect.TypeOf(&PodAntiAffinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAttachOptions).DeepCopyInto(out.(*PodAttachOptions)) + return nil + }, InType: reflect.TypeOf(&PodAttachOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodCondition).DeepCopyInto(out.(*PodCondition)) + return nil + }, InType: reflect.TypeOf(&PodCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodExecOptions).DeepCopyInto(out.(*PodExecOptions)) + return nil + }, InType: reflect.TypeOf(&PodExecOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodList).DeepCopyInto(out.(*PodList)) + return nil + }, InType: reflect.TypeOf(&PodList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodLogOptions).DeepCopyInto(out.(*PodLogOptions)) + return nil + }, InType: reflect.TypeOf(&PodLogOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodPortForwardOptions).DeepCopyInto(out.(*PodPortForwardOptions)) + return nil + }, InType: reflect.TypeOf(&PodPortForwardOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodProxyOptions).DeepCopyInto(out.(*PodProxyOptions)) + return nil + }, InType: reflect.TypeOf(&PodProxyOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodSecurityContext).DeepCopyInto(out.(*PodSecurityContext)) + return nil + }, InType: reflect.TypeOf(&PodSecurityContext{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodSignature).DeepCopyInto(out.(*PodSignature)) + return nil + }, InType: reflect.TypeOf(&PodSignature{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodSpec).DeepCopyInto(out.(*PodSpec)) + return nil + }, InType: reflect.TypeOf(&PodSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodStatus).DeepCopyInto(out.(*PodStatus)) + return nil + }, InType: reflect.TypeOf(&PodStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodStatusResult).DeepCopyInto(out.(*PodStatusResult)) + return nil + }, InType: reflect.TypeOf(&PodStatusResult{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodTemplate).DeepCopyInto(out.(*PodTemplate)) + return nil + }, InType: reflect.TypeOf(&PodTemplate{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodTemplateList).DeepCopyInto(out.(*PodTemplateList)) + return nil + }, InType: reflect.TypeOf(&PodTemplateList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodTemplateSpec).DeepCopyInto(out.(*PodTemplateSpec)) + return nil + }, InType: reflect.TypeOf(&PodTemplateSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PortworxVolumeSource).DeepCopyInto(out.(*PortworxVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PortworxVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Preconditions).DeepCopyInto(out.(*Preconditions)) + return nil + }, InType: reflect.TypeOf(&Preconditions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PreferAvoidPodsEntry).DeepCopyInto(out.(*PreferAvoidPodsEntry)) + return nil + }, InType: reflect.TypeOf(&PreferAvoidPodsEntry{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PreferredSchedulingTerm).DeepCopyInto(out.(*PreferredSchedulingTerm)) + return nil + }, InType: reflect.TypeOf(&PreferredSchedulingTerm{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Probe).DeepCopyInto(out.(*Probe)) + return nil + }, InType: reflect.TypeOf(&Probe{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ProjectedVolumeSource).DeepCopyInto(out.(*ProjectedVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ProjectedVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*QuobyteVolumeSource).DeepCopyInto(out.(*QuobyteVolumeSource)) + return nil + }, InType: reflect.TypeOf(&QuobyteVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*RBDVolumeSource).DeepCopyInto(out.(*RBDVolumeSource)) + return nil + }, InType: reflect.TypeOf(&RBDVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*RangeAllocation).DeepCopyInto(out.(*RangeAllocation)) + return nil + }, InType: reflect.TypeOf(&RangeAllocation{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationController).DeepCopyInto(out.(*ReplicationController)) + return nil + }, InType: reflect.TypeOf(&ReplicationController{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerCondition).DeepCopyInto(out.(*ReplicationControllerCondition)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerList).DeepCopyInto(out.(*ReplicationControllerList)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerSpec).DeepCopyInto(out.(*ReplicationControllerSpec)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerStatus).DeepCopyInto(out.(*ReplicationControllerStatus)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceFieldSelector).DeepCopyInto(out.(*ResourceFieldSelector)) + return nil + }, InType: reflect.TypeOf(&ResourceFieldSelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuota).DeepCopyInto(out.(*ResourceQuota)) + return nil + }, InType: reflect.TypeOf(&ResourceQuota{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuotaList).DeepCopyInto(out.(*ResourceQuotaList)) + return nil + }, InType: reflect.TypeOf(&ResourceQuotaList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuotaSpec).DeepCopyInto(out.(*ResourceQuotaSpec)) + return nil + }, InType: reflect.TypeOf(&ResourceQuotaSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuotaStatus).DeepCopyInto(out.(*ResourceQuotaStatus)) + return nil + }, InType: reflect.TypeOf(&ResourceQuotaStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceRequirements).DeepCopyInto(out.(*ResourceRequirements)) + return nil + }, InType: reflect.TypeOf(&ResourceRequirements{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SELinuxOptions).DeepCopyInto(out.(*SELinuxOptions)) + return nil + }, InType: reflect.TypeOf(&SELinuxOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ScaleIOVolumeSource).DeepCopyInto(out.(*ScaleIOVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ScaleIOVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Secret).DeepCopyInto(out.(*Secret)) + return nil + }, InType: reflect.TypeOf(&Secret{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretEnvSource).DeepCopyInto(out.(*SecretEnvSource)) + return nil + }, InType: reflect.TypeOf(&SecretEnvSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretKeySelector).DeepCopyInto(out.(*SecretKeySelector)) + return nil + }, InType: reflect.TypeOf(&SecretKeySelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretList).DeepCopyInto(out.(*SecretList)) + return nil + }, InType: reflect.TypeOf(&SecretList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretProjection).DeepCopyInto(out.(*SecretProjection)) + return nil + }, InType: reflect.TypeOf(&SecretProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretVolumeSource).DeepCopyInto(out.(*SecretVolumeSource)) + return nil + }, InType: reflect.TypeOf(&SecretVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecurityContext).DeepCopyInto(out.(*SecurityContext)) + return nil + }, InType: reflect.TypeOf(&SecurityContext{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SerializedReference).DeepCopyInto(out.(*SerializedReference)) + return nil + }, InType: reflect.TypeOf(&SerializedReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Service).DeepCopyInto(out.(*Service)) + return nil + }, InType: reflect.TypeOf(&Service{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceAccount).DeepCopyInto(out.(*ServiceAccount)) + return nil + }, InType: reflect.TypeOf(&ServiceAccount{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceAccountList).DeepCopyInto(out.(*ServiceAccountList)) + return nil + }, InType: reflect.TypeOf(&ServiceAccountList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceList).DeepCopyInto(out.(*ServiceList)) + return nil + }, InType: reflect.TypeOf(&ServiceList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServicePort).DeepCopyInto(out.(*ServicePort)) + return nil + }, InType: reflect.TypeOf(&ServicePort{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceProxyOptions).DeepCopyInto(out.(*ServiceProxyOptions)) + return nil + }, InType: reflect.TypeOf(&ServiceProxyOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceSpec).DeepCopyInto(out.(*ServiceSpec)) + return nil + }, InType: reflect.TypeOf(&ServiceSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceStatus).DeepCopyInto(out.(*ServiceStatus)) + return nil + }, InType: reflect.TypeOf(&ServiceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*StorageOSPersistentVolumeSource).DeepCopyInto(out.(*StorageOSPersistentVolumeSource)) + return nil + }, InType: reflect.TypeOf(&StorageOSPersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*StorageOSVolumeSource).DeepCopyInto(out.(*StorageOSVolumeSource)) + return nil + }, InType: reflect.TypeOf(&StorageOSVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Sysctl).DeepCopyInto(out.(*Sysctl)) + return nil + }, InType: reflect.TypeOf(&Sysctl{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*TCPSocketAction).DeepCopyInto(out.(*TCPSocketAction)) + return nil + }, InType: reflect.TypeOf(&TCPSocketAction{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Taint).DeepCopyInto(out.(*Taint)) + return nil + }, InType: reflect.TypeOf(&Taint{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Toleration).DeepCopyInto(out.(*Toleration)) + return nil + }, InType: reflect.TypeOf(&Toleration{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Volume).DeepCopyInto(out.(*Volume)) + return nil + }, InType: reflect.TypeOf(&Volume{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VolumeMount).DeepCopyInto(out.(*VolumeMount)) + return nil + }, InType: reflect.TypeOf(&VolumeMount{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VolumeProjection).DeepCopyInto(out.(*VolumeProjection)) + return nil + }, InType: reflect.TypeOf(&VolumeProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VolumeSource).DeepCopyInto(out.(*VolumeSource)) + return nil + }, InType: reflect.TypeOf(&VolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VsphereVirtualDiskVolumeSource).DeepCopyInto(out.(*VsphereVirtualDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&VsphereVirtualDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*WeightedPodAffinityTerm).DeepCopyInto(out.(*WeightedPodAffinityTerm)) + return nil + }, InType: reflect.TypeOf(&WeightedPodAffinityTerm{})}, + ) +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AWSElasticBlockStoreVolumeSource) DeepCopyInto(out *AWSElasticBlockStoreVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new AWSElasticBlockStoreVolumeSource. +func (x *AWSElasticBlockStoreVolumeSource) DeepCopy() *AWSElasticBlockStoreVolumeSource { + if x == nil { + return nil + } + out := new(AWSElasticBlockStoreVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Affinity) DeepCopyInto(out *Affinity) { + *out = *in + if in.NodeAffinity != nil { + in, out := &in.NodeAffinity, &out.NodeAffinity + if *in == nil { + *out = nil + } else { + *out = new(NodeAffinity) + (*in).DeepCopyInto(*out) + } + } + if in.PodAffinity != nil { + in, out := &in.PodAffinity, &out.PodAffinity + if *in == nil { + *out = nil + } else { + *out = new(PodAffinity) + (*in).DeepCopyInto(*out) + } + } + if in.PodAntiAffinity != nil { + in, out := &in.PodAntiAffinity, &out.PodAntiAffinity + if *in == nil { + *out = nil + } else { + *out = new(PodAntiAffinity) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Affinity. +func (x *Affinity) DeepCopy() *Affinity { + if x == nil { + return nil + } + out := new(Affinity) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AttachedVolume) DeepCopyInto(out *AttachedVolume) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new AttachedVolume. +func (x *AttachedVolume) DeepCopy() *AttachedVolume { + if x == nil { + return nil + } + out := new(AttachedVolume) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AvoidPods) DeepCopyInto(out *AvoidPods) { + *out = *in + if in.PreferAvoidPods != nil { + in, out := &in.PreferAvoidPods, &out.PreferAvoidPods + *out = make([]PreferAvoidPodsEntry, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new AvoidPods. +func (x *AvoidPods) DeepCopy() *AvoidPods { + if x == nil { + return nil + } + out := new(AvoidPods) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureDiskVolumeSource) DeepCopyInto(out *AzureDiskVolumeSource) { + *out = *in + if in.CachingMode != nil { + in, out := &in.CachingMode, &out.CachingMode + if *in == nil { + *out = nil + } else { + *out = new(AzureDataDiskCachingMode) + **out = **in + } + } + if in.FSType != nil { + in, out := &in.FSType, &out.FSType + if *in == nil { + *out = nil + } else { + *out = new(string) + **out = **in + } + } + if in.ReadOnly != nil { + in, out := &in.ReadOnly, &out.ReadOnly + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + if *in == nil { + *out = nil + } else { + *out = new(AzureDataDiskKind) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new AzureDiskVolumeSource. +func (x *AzureDiskVolumeSource) DeepCopy() *AzureDiskVolumeSource { + if x == nil { + return nil + } + out := new(AzureDiskVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureFileVolumeSource) DeepCopyInto(out *AzureFileVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new AzureFileVolumeSource. +func (x *AzureFileVolumeSource) DeepCopy() *AzureFileVolumeSource { + if x == nil { + return nil + } + out := new(AzureFileVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Binding) DeepCopyInto(out *Binding) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + out.Target = in.Target + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Binding. +func (x *Binding) DeepCopy() *Binding { + if x == nil { + return nil + } + out := new(Binding) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Binding) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Capabilities) DeepCopyInto(out *Capabilities) { + *out = *in + if in.Add != nil { + in, out := &in.Add, &out.Add + *out = make([]Capability, len(*in)) + copy(*out, *in) + } + if in.Drop != nil { + in, out := &in.Drop, &out.Drop + *out = make([]Capability, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Capabilities. +func (x *Capabilities) DeepCopy() *Capabilities { + if x == nil { + return nil + } + out := new(Capabilities) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CephFSVolumeSource) DeepCopyInto(out *CephFSVolumeSource) { + *out = *in + if in.Monitors != nil { + in, out := &in.Monitors, &out.Monitors + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(LocalObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new CephFSVolumeSource. +func (x *CephFSVolumeSource) DeepCopy() *CephFSVolumeSource { + if x == nil { + return nil + } + out := new(CephFSVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CinderVolumeSource) DeepCopyInto(out *CinderVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new CinderVolumeSource. +func (x *CinderVolumeSource) DeepCopy() *CinderVolumeSource { + if x == nil { + return nil + } + out := new(CinderVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentCondition) DeepCopyInto(out *ComponentCondition) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ComponentCondition. +func (x *ComponentCondition) DeepCopy() *ComponentCondition { + if x == nil { + return nil + } + out := new(ComponentCondition) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]ComponentCondition, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatus. +func (x *ComponentStatus) DeepCopy() *ComponentStatus { + if x == nil { + return nil + } + out := new(ComponentStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ComponentStatus) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentStatusList) DeepCopyInto(out *ComponentStatusList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ComponentStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatusList. +func (x *ComponentStatusList) DeepCopy() *ComponentStatusList { + if x == nil { + return nil + } + out := new(ComponentStatusList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ComponentStatusList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMap) DeepCopyInto(out *ConfigMap) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Data != nil { + in, out := &in.Data, &out.Data + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMap. +func (x *ConfigMap) DeepCopy() *ConfigMap { + if x == nil { + return nil + } + out := new(ConfigMap) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ConfigMap) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapEnvSource) DeepCopyInto(out *ConfigMapEnvSource) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapEnvSource. +func (x *ConfigMapEnvSource) DeepCopy() *ConfigMapEnvSource { + if x == nil { + return nil + } + out := new(ConfigMapEnvSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapKeySelector) DeepCopyInto(out *ConfigMapKeySelector) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapKeySelector. +func (x *ConfigMapKeySelector) DeepCopy() *ConfigMapKeySelector { + if x == nil { + return nil + } + out := new(ConfigMapKeySelector) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapList) DeepCopyInto(out *ConfigMapList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ConfigMap, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapList. +func (x *ConfigMapList) DeepCopy() *ConfigMapList { + if x == nil { + return nil + } + out := new(ConfigMapList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ConfigMapList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapProjection) DeepCopyInto(out *ConfigMapProjection) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapProjection. +func (x *ConfigMapProjection) DeepCopy() *ConfigMapProjection { + if x == nil { + return nil + } + out := new(ConfigMapProjection) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapVolumeSource) DeepCopyInto(out *ConfigMapVolumeSource) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapVolumeSource. +func (x *ConfigMapVolumeSource) DeepCopy() *ConfigMapVolumeSource { + if x == nil { + return nil + } + out := new(ConfigMapVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Container) DeepCopyInto(out *Container) { + *out = *in + if in.Command != nil { + in, out := &in.Command, &out.Command + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Args != nil { + in, out := &in.Args, &out.Args + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]ContainerPort, len(*in)) + copy(*out, *in) + } + if in.EnvFrom != nil { + in, out := &in.EnvFrom, &out.EnvFrom + *out = make([]EnvFromSource, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Env != nil { + in, out := &in.Env, &out.Env + *out = make([]EnvVar, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + in.Resources.DeepCopyInto(&out.Resources) + if in.VolumeMounts != nil { + in, out := &in.VolumeMounts, &out.VolumeMounts + *out = make([]VolumeMount, len(*in)) + copy(*out, *in) + } + if in.LivenessProbe != nil { + in, out := &in.LivenessProbe, &out.LivenessProbe + if *in == nil { + *out = nil + } else { + *out = new(Probe) + (*in).DeepCopyInto(*out) + } + } + if in.ReadinessProbe != nil { + in, out := &in.ReadinessProbe, &out.ReadinessProbe + if *in == nil { + *out = nil + } else { + *out = new(Probe) + (*in).DeepCopyInto(*out) + } + } + if in.Lifecycle != nil { + in, out := &in.Lifecycle, &out.Lifecycle + if *in == nil { + *out = nil + } else { + *out = new(Lifecycle) + (*in).DeepCopyInto(*out) + } + } + if in.SecurityContext != nil { + in, out := &in.SecurityContext, &out.SecurityContext + if *in == nil { + *out = nil + } else { + *out = new(SecurityContext) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Container. +func (x *Container) DeepCopy() *Container { + if x == nil { + return nil + } + out := new(Container) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerImage) DeepCopyInto(out *ContainerImage) { + *out = *in + if in.Names != nil { + in, out := &in.Names, &out.Names + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ContainerImage. +func (x *ContainerImage) DeepCopy() *ContainerImage { + if x == nil { + return nil + } + out := new(ContainerImage) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerPort) DeepCopyInto(out *ContainerPort) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ContainerPort. +func (x *ContainerPort) DeepCopy() *ContainerPort { + if x == nil { + return nil + } + out := new(ContainerPort) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerState) DeepCopyInto(out *ContainerState) { + *out = *in + if in.Waiting != nil { + in, out := &in.Waiting, &out.Waiting + if *in == nil { + *out = nil + } else { + *out = new(ContainerStateWaiting) + **out = **in + } + } + if in.Running != nil { + in, out := &in.Running, &out.Running + if *in == nil { + *out = nil + } else { + *out = new(ContainerStateRunning) + (*in).DeepCopyInto(*out) + } + } + if in.Terminated != nil { + in, out := &in.Terminated, &out.Terminated + if *in == nil { + *out = nil + } else { + *out = new(ContainerStateTerminated) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ContainerState. +func (x *ContainerState) DeepCopy() *ContainerState { + if x == nil { + return nil + } + out := new(ContainerState) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStateRunning) DeepCopyInto(out *ContainerStateRunning) { + *out = *in + in.StartedAt.DeepCopyInto(&out.StartedAt) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStateRunning. +func (x *ContainerStateRunning) DeepCopy() *ContainerStateRunning { + if x == nil { + return nil + } + out := new(ContainerStateRunning) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStateTerminated) DeepCopyInto(out *ContainerStateTerminated) { + *out = *in + in.StartedAt.DeepCopyInto(&out.StartedAt) + in.FinishedAt.DeepCopyInto(&out.FinishedAt) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStateTerminated. +func (x *ContainerStateTerminated) DeepCopy() *ContainerStateTerminated { + if x == nil { + return nil + } + out := new(ContainerStateTerminated) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStateWaiting) DeepCopyInto(out *ContainerStateWaiting) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStateWaiting. +func (x *ContainerStateWaiting) DeepCopy() *ContainerStateWaiting { + if x == nil { + return nil + } + out := new(ContainerStateWaiting) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStatus) DeepCopyInto(out *ContainerStatus) { + *out = *in + in.State.DeepCopyInto(&out.State) + in.LastTerminationState.DeepCopyInto(&out.LastTerminationState) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStatus. +func (x *ContainerStatus) DeepCopy() *ContainerStatus { + if x == nil { + return nil + } + out := new(ContainerStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DaemonEndpoint) DeepCopyInto(out *DaemonEndpoint) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new DaemonEndpoint. +func (x *DaemonEndpoint) DeepCopy() *DaemonEndpoint { + if x == nil { + return nil + } + out := new(DaemonEndpoint) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeleteOptions) DeepCopyInto(out *DeleteOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.GracePeriodSeconds != nil { + in, out := &in.GracePeriodSeconds, &out.GracePeriodSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.Preconditions != nil { + in, out := &in.Preconditions, &out.Preconditions + if *in == nil { + *out = nil + } else { + *out = new(Preconditions) + (*in).DeepCopyInto(*out) + } + } + if in.OrphanDependents != nil { + in, out := &in.OrphanDependents, &out.OrphanDependents + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.PropagationPolicy != nil { + in, out := &in.PropagationPolicy, &out.PropagationPolicy + if *in == nil { + *out = nil + } else { + *out = new(DeletionPropagation) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new DeleteOptions. +func (x *DeleteOptions) DeepCopy() *DeleteOptions { + if x == nil { + return nil + } + out := new(DeleteOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *DeleteOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DownwardAPIProjection) DeepCopyInto(out *DownwardAPIProjection) { + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]DownwardAPIVolumeFile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new DownwardAPIProjection. +func (x *DownwardAPIProjection) DeepCopy() *DownwardAPIProjection { + if x == nil { + return nil + } + out := new(DownwardAPIProjection) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DownwardAPIVolumeFile) DeepCopyInto(out *DownwardAPIVolumeFile) { + *out = *in + if in.FieldRef != nil { + in, out := &in.FieldRef, &out.FieldRef + if *in == nil { + *out = nil + } else { + *out = new(ObjectFieldSelector) + **out = **in + } + } + if in.ResourceFieldRef != nil { + in, out := &in.ResourceFieldRef, &out.ResourceFieldRef + if *in == nil { + *out = nil + } else { + *out = new(ResourceFieldSelector) + (*in).DeepCopyInto(*out) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new DownwardAPIVolumeFile. +func (x *DownwardAPIVolumeFile) DeepCopy() *DownwardAPIVolumeFile { + if x == nil { + return nil + } + out := new(DownwardAPIVolumeFile) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DownwardAPIVolumeSource) DeepCopyInto(out *DownwardAPIVolumeSource) { + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]DownwardAPIVolumeFile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new DownwardAPIVolumeSource. +func (x *DownwardAPIVolumeSource) DeepCopy() *DownwardAPIVolumeSource { + if x == nil { + return nil + } + out := new(DownwardAPIVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EmptyDirVolumeSource) DeepCopyInto(out *EmptyDirVolumeSource) { + *out = *in + out.SizeLimit = in.SizeLimit.DeepCopy() + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EmptyDirVolumeSource. +func (x *EmptyDirVolumeSource) DeepCopy() *EmptyDirVolumeSource { + if x == nil { + return nil + } + out := new(EmptyDirVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointAddress) DeepCopyInto(out *EndpointAddress) { + *out = *in + if in.NodeName != nil { + in, out := &in.NodeName, &out.NodeName + if *in == nil { + *out = nil + } else { + *out = new(string) + **out = **in + } + } + if in.TargetRef != nil { + in, out := &in.TargetRef, &out.TargetRef + if *in == nil { + *out = nil + } else { + *out = new(ObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EndpointAddress. +func (x *EndpointAddress) DeepCopy() *EndpointAddress { + if x == nil { + return nil + } + out := new(EndpointAddress) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointPort) DeepCopyInto(out *EndpointPort) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EndpointPort. +func (x *EndpointPort) DeepCopy() *EndpointPort { + if x == nil { + return nil + } + out := new(EndpointPort) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointSubset) DeepCopyInto(out *EndpointSubset) { + *out = *in + if in.Addresses != nil { + in, out := &in.Addresses, &out.Addresses + *out = make([]EndpointAddress, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotReadyAddresses != nil { + in, out := &in.NotReadyAddresses, &out.NotReadyAddresses + *out = make([]EndpointAddress, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]EndpointPort, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSubset. +func (x *EndpointSubset) DeepCopy() *EndpointSubset { + if x == nil { + return nil + } + out := new(EndpointSubset) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Endpoints) DeepCopyInto(out *Endpoints) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Subsets != nil { + in, out := &in.Subsets, &out.Subsets + *out = make([]EndpointSubset, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Endpoints. +func (x *Endpoints) DeepCopy() *Endpoints { + if x == nil { + return nil + } + out := new(Endpoints) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Endpoints) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointsList) DeepCopyInto(out *EndpointsList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Endpoints, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EndpointsList. +func (x *EndpointsList) DeepCopy() *EndpointsList { + if x == nil { + return nil + } + out := new(EndpointsList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *EndpointsList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvFromSource) DeepCopyInto(out *EnvFromSource) { + *out = *in + if in.ConfigMapRef != nil { + in, out := &in.ConfigMapRef, &out.ConfigMapRef + if *in == nil { + *out = nil + } else { + *out = new(ConfigMapEnvSource) + (*in).DeepCopyInto(*out) + } + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(SecretEnvSource) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EnvFromSource. +func (x *EnvFromSource) DeepCopy() *EnvFromSource { + if x == nil { + return nil + } + out := new(EnvFromSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvVar) DeepCopyInto(out *EnvVar) { + *out = *in + if in.ValueFrom != nil { + in, out := &in.ValueFrom, &out.ValueFrom + if *in == nil { + *out = nil + } else { + *out = new(EnvVarSource) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EnvVar. +func (x *EnvVar) DeepCopy() *EnvVar { + if x == nil { + return nil + } + out := new(EnvVar) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvVarSource) DeepCopyInto(out *EnvVarSource) { + *out = *in + if in.FieldRef != nil { + in, out := &in.FieldRef, &out.FieldRef + if *in == nil { + *out = nil + } else { + *out = new(ObjectFieldSelector) + **out = **in + } + } + if in.ResourceFieldRef != nil { + in, out := &in.ResourceFieldRef, &out.ResourceFieldRef + if *in == nil { + *out = nil + } else { + *out = new(ResourceFieldSelector) + (*in).DeepCopyInto(*out) + } + } + if in.ConfigMapKeyRef != nil { + in, out := &in.ConfigMapKeyRef, &out.ConfigMapKeyRef + if *in == nil { + *out = nil + } else { + *out = new(ConfigMapKeySelector) + (*in).DeepCopyInto(*out) + } + } + if in.SecretKeyRef != nil { + in, out := &in.SecretKeyRef, &out.SecretKeyRef + if *in == nil { + *out = nil + } else { + *out = new(SecretKeySelector) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EnvVarSource. +func (x *EnvVarSource) DeepCopy() *EnvVarSource { + if x == nil { + return nil + } + out := new(EnvVarSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Event) DeepCopyInto(out *Event) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + out.InvolvedObject = in.InvolvedObject + out.Source = in.Source + in.FirstTimestamp.DeepCopyInto(&out.FirstTimestamp) + in.LastTimestamp.DeepCopyInto(&out.LastTimestamp) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Event. +func (x *Event) DeepCopy() *Event { + if x == nil { + return nil + } + out := new(Event) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Event) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventList) DeepCopyInto(out *EventList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Event, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EventList. +func (x *EventList) DeepCopy() *EventList { + if x == nil { + return nil + } + out := new(EventList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *EventList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventSource) DeepCopyInto(out *EventSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new EventSource. +func (x *EventSource) DeepCopy() *EventSource { + if x == nil { + return nil + } + out := new(EventSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExecAction) DeepCopyInto(out *ExecAction) { + *out = *in + if in.Command != nil { + in, out := &in.Command, &out.Command + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ExecAction. +func (x *ExecAction) DeepCopy() *ExecAction { + if x == nil { + return nil + } + out := new(ExecAction) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FCVolumeSource) DeepCopyInto(out *FCVolumeSource) { + *out = *in + if in.TargetWWNs != nil { + in, out := &in.TargetWWNs, &out.TargetWWNs + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new FCVolumeSource. +func (x *FCVolumeSource) DeepCopy() *FCVolumeSource { + if x == nil { + return nil + } + out := new(FCVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexVolumeSource) DeepCopyInto(out *FlexVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(LocalObjectReference) + **out = **in + } + } + if in.Options != nil { + in, out := &in.Options, &out.Options + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new FlexVolumeSource. +func (x *FlexVolumeSource) DeepCopy() *FlexVolumeSource { + if x == nil { + return nil + } + out := new(FlexVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlockerVolumeSource) DeepCopyInto(out *FlockerVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new FlockerVolumeSource. +func (x *FlockerVolumeSource) DeepCopy() *FlockerVolumeSource { + if x == nil { + return nil + } + out := new(FlockerVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GCEPersistentDiskVolumeSource) DeepCopyInto(out *GCEPersistentDiskVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GCEPersistentDiskVolumeSource. +func (x *GCEPersistentDiskVolumeSource) DeepCopy() *GCEPersistentDiskVolumeSource { + if x == nil { + return nil + } + out := new(GCEPersistentDiskVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GitRepoVolumeSource) DeepCopyInto(out *GitRepoVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoVolumeSource. +func (x *GitRepoVolumeSource) DeepCopy() *GitRepoVolumeSource { + if x == nil { + return nil + } + out := new(GitRepoVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlusterfsVolumeSource) DeepCopyInto(out *GlusterfsVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GlusterfsVolumeSource. +func (x *GlusterfsVolumeSource) DeepCopy() *GlusterfsVolumeSource { + if x == nil { + return nil + } + out := new(GlusterfsVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPGetAction) DeepCopyInto(out *HTTPGetAction) { + *out = *in + out.Port = in.Port + if in.HTTPHeaders != nil { + in, out := &in.HTTPHeaders, &out.HTTPHeaders + *out = make([]HTTPHeader, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new HTTPGetAction. +func (x *HTTPGetAction) DeepCopy() *HTTPGetAction { + if x == nil { + return nil + } + out := new(HTTPGetAction) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPHeader) DeepCopyInto(out *HTTPHeader) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new HTTPHeader. +func (x *HTTPHeader) DeepCopy() *HTTPHeader { + if x == nil { + return nil + } + out := new(HTTPHeader) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Handler) DeepCopyInto(out *Handler) { + *out = *in + if in.Exec != nil { + in, out := &in.Exec, &out.Exec + if *in == nil { + *out = nil + } else { + *out = new(ExecAction) + (*in).DeepCopyInto(*out) + } + } + if in.HTTPGet != nil { + in, out := &in.HTTPGet, &out.HTTPGet + if *in == nil { + *out = nil + } else { + *out = new(HTTPGetAction) + (*in).DeepCopyInto(*out) + } + } + if in.TCPSocket != nil { + in, out := &in.TCPSocket, &out.TCPSocket + if *in == nil { + *out = nil + } else { + *out = new(TCPSocketAction) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Handler. +func (x *Handler) DeepCopy() *Handler { + if x == nil { + return nil + } + out := new(Handler) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostAlias) DeepCopyInto(out *HostAlias) { + *out = *in + if in.Hostnames != nil { + in, out := &in.Hostnames, &out.Hostnames + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new HostAlias. +func (x *HostAlias) DeepCopy() *HostAlias { + if x == nil { + return nil + } + out := new(HostAlias) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostPathVolumeSource) DeepCopyInto(out *HostPathVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new HostPathVolumeSource. +func (x *HostPathVolumeSource) DeepCopy() *HostPathVolumeSource { + if x == nil { + return nil + } + out := new(HostPathVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ISCSIVolumeSource) DeepCopyInto(out *ISCSIVolumeSource) { + *out = *in + if in.Portals != nil { + in, out := &in.Portals, &out.Portals + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(LocalObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ISCSIVolumeSource. +func (x *ISCSIVolumeSource) DeepCopy() *ISCSIVolumeSource { + if x == nil { + return nil + } + out := new(ISCSIVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyToPath) DeepCopyInto(out *KeyToPath) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new KeyToPath. +func (x *KeyToPath) DeepCopy() *KeyToPath { + if x == nil { + return nil + } + out := new(KeyToPath) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Lifecycle) DeepCopyInto(out *Lifecycle) { + *out = *in + if in.PostStart != nil { + in, out := &in.PostStart, &out.PostStart + if *in == nil { + *out = nil + } else { + *out = new(Handler) + (*in).DeepCopyInto(*out) + } + } + if in.PreStop != nil { + in, out := &in.PreStop, &out.PreStop + if *in == nil { + *out = nil + } else { + *out = new(Handler) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Lifecycle. +func (x *Lifecycle) DeepCopy() *Lifecycle { + if x == nil { + return nil + } + out := new(Lifecycle) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRange) DeepCopyInto(out *LimitRange) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LimitRange. +func (x *LimitRange) DeepCopy() *LimitRange { + if x == nil { + return nil + } + out := new(LimitRange) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *LimitRange) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRangeItem) DeepCopyInto(out *LimitRangeItem) { + *out = *in + if in.Max != nil { + in, out := &in.Max, &out.Max + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Min != nil { + in, out := &in.Min, &out.Min + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Default != nil { + in, out := &in.Default, &out.Default + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.DefaultRequest != nil { + in, out := &in.DefaultRequest, &out.DefaultRequest + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.MaxLimitRequestRatio != nil { + in, out := &in.MaxLimitRequestRatio, &out.MaxLimitRequestRatio + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LimitRangeItem. +func (x *LimitRangeItem) DeepCopy() *LimitRangeItem { + if x == nil { + return nil + } + out := new(LimitRangeItem) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRangeList) DeepCopyInto(out *LimitRangeList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LimitRange, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LimitRangeList. +func (x *LimitRangeList) DeepCopy() *LimitRangeList { + if x == nil { + return nil + } + out := new(LimitRangeList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *LimitRangeList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRangeSpec) DeepCopyInto(out *LimitRangeSpec) { + *out = *in + if in.Limits != nil { + in, out := &in.Limits, &out.Limits + *out = make([]LimitRangeItem, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LimitRangeSpec. +func (x *LimitRangeSpec) DeepCopy() *LimitRangeSpec { + if x == nil { + return nil + } + out := new(LimitRangeSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *List) DeepCopyInto(out *List) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]runtime.RawExtension, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new List. +func (x *List) DeepCopy() *List { + if x == nil { + return nil + } + out := new(List) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *List) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ListOptions) DeepCopyInto(out *ListOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.TimeoutSeconds != nil { + in, out := &in.TimeoutSeconds, &out.TimeoutSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ListOptions. +func (x *ListOptions) DeepCopy() *ListOptions { + if x == nil { + return nil + } + out := new(ListOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ListOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerIngress) DeepCopyInto(out *LoadBalancerIngress) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerIngress. +func (x *LoadBalancerIngress) DeepCopy() *LoadBalancerIngress { + if x == nil { + return nil + } + out := new(LoadBalancerIngress) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerStatus) DeepCopyInto(out *LoadBalancerStatus) { + *out = *in + if in.Ingress != nil { + in, out := &in.Ingress, &out.Ingress + *out = make([]LoadBalancerIngress, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerStatus. +func (x *LoadBalancerStatus) DeepCopy() *LoadBalancerStatus { + if x == nil { + return nil + } + out := new(LoadBalancerStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LocalObjectReference. +func (x *LocalObjectReference) DeepCopy() *LocalObjectReference { + if x == nil { + return nil + } + out := new(LocalObjectReference) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LocalVolumeSource) DeepCopyInto(out *LocalVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LocalVolumeSource. +func (x *LocalVolumeSource) DeepCopy() *LocalVolumeSource { + if x == nil { + return nil + } + out := new(LocalVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NFSVolumeSource) DeepCopyInto(out *NFSVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NFSVolumeSource. +func (x *NFSVolumeSource) DeepCopy() *NFSVolumeSource { + if x == nil { + return nil + } + out := new(NFSVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Namespace) DeepCopyInto(out *Namespace) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + out.Status = in.Status + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Namespace. +func (x *Namespace) DeepCopy() *Namespace { + if x == nil { + return nil + } + out := new(Namespace) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Namespace) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceList) DeepCopyInto(out *NamespaceList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Namespace, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceList. +func (x *NamespaceList) DeepCopy() *NamespaceList { + if x == nil { + return nil + } + out := new(NamespaceList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *NamespaceList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceSpec) DeepCopyInto(out *NamespaceSpec) { + *out = *in + if in.Finalizers != nil { + in, out := &in.Finalizers, &out.Finalizers + *out = make([]FinalizerName, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceSpec. +func (x *NamespaceSpec) DeepCopy() *NamespaceSpec { + if x == nil { + return nil + } + out := new(NamespaceSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceStatus) DeepCopyInto(out *NamespaceStatus) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceStatus. +func (x *NamespaceStatus) DeepCopy() *NamespaceStatus { + if x == nil { + return nil + } + out := new(NamespaceStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Node) DeepCopyInto(out *Node) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Node. +func (x *Node) DeepCopy() *Node { + if x == nil { + return nil + } + out := new(Node) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Node) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeAddress) DeepCopyInto(out *NodeAddress) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeAddress. +func (x *NodeAddress) DeepCopy() *NodeAddress { + if x == nil { + return nil + } + out := new(NodeAddress) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeAffinity) DeepCopyInto(out *NodeAffinity) { + *out = *in + if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution + if *in == nil { + *out = nil + } else { + *out = new(NodeSelector) + (*in).DeepCopyInto(*out) + } + } + if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution + *out = make([]PreferredSchedulingTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeAffinity. +func (x *NodeAffinity) DeepCopy() *NodeAffinity { + if x == nil { + return nil + } + out := new(NodeAffinity) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeCondition) DeepCopyInto(out *NodeCondition) { + *out = *in + in.LastHeartbeatTime.DeepCopyInto(&out.LastHeartbeatTime) + in.LastTransitionTime.DeepCopyInto(&out.LastTransitionTime) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeCondition. +func (x *NodeCondition) DeepCopy() *NodeCondition { + if x == nil { + return nil + } + out := new(NodeCondition) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeDaemonEndpoints) DeepCopyInto(out *NodeDaemonEndpoints) { + *out = *in + out.KubeletEndpoint = in.KubeletEndpoint + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeDaemonEndpoints. +func (x *NodeDaemonEndpoints) DeepCopy() *NodeDaemonEndpoints { + if x == nil { + return nil + } + out := new(NodeDaemonEndpoints) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeList) DeepCopyInto(out *NodeList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Node, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeList. +func (x *NodeList) DeepCopy() *NodeList { + if x == nil { + return nil + } + out := new(NodeList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *NodeList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeProxyOptions) DeepCopyInto(out *NodeProxyOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeProxyOptions. +func (x *NodeProxyOptions) DeepCopy() *NodeProxyOptions { + if x == nil { + return nil + } + out := new(NodeProxyOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *NodeProxyOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeResources) DeepCopyInto(out *NodeResources) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeResources. +func (x *NodeResources) DeepCopy() *NodeResources { + if x == nil { + return nil + } + out := new(NodeResources) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSelector) DeepCopyInto(out *NodeSelector) { + *out = *in + if in.NodeSelectorTerms != nil { + in, out := &in.NodeSelectorTerms, &out.NodeSelectorTerms + *out = make([]NodeSelectorTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeSelector. +func (x *NodeSelector) DeepCopy() *NodeSelector { + if x == nil { + return nil + } + out := new(NodeSelector) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSelectorRequirement) DeepCopyInto(out *NodeSelectorRequirement) { + *out = *in + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeSelectorRequirement. +func (x *NodeSelectorRequirement) DeepCopy() *NodeSelectorRequirement { + if x == nil { + return nil + } + out := new(NodeSelectorRequirement) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSelectorTerm) DeepCopyInto(out *NodeSelectorTerm) { + *out = *in + if in.MatchExpressions != nil { + in, out := &in.MatchExpressions, &out.MatchExpressions + *out = make([]NodeSelectorRequirement, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeSelectorTerm. +func (x *NodeSelectorTerm) DeepCopy() *NodeSelectorTerm { + if x == nil { + return nil + } + out := new(NodeSelectorTerm) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSpec) DeepCopyInto(out *NodeSpec) { + *out = *in + if in.Taints != nil { + in, out := &in.Taints, &out.Taints + *out = make([]Taint, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeSpec. +func (x *NodeSpec) DeepCopy() *NodeSpec { + if x == nil { + return nil + } + out := new(NodeSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeStatus) DeepCopyInto(out *NodeStatus) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Allocatable != nil { + in, out := &in.Allocatable, &out.Allocatable + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]NodeCondition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Addresses != nil { + in, out := &in.Addresses, &out.Addresses + *out = make([]NodeAddress, len(*in)) + copy(*out, *in) + } + out.DaemonEndpoints = in.DaemonEndpoints + out.NodeInfo = in.NodeInfo + if in.Images != nil { + in, out := &in.Images, &out.Images + *out = make([]ContainerImage, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VolumesInUse != nil { + in, out := &in.VolumesInUse, &out.VolumesInUse + *out = make([]UniqueVolumeName, len(*in)) + copy(*out, *in) + } + if in.VolumesAttached != nil { + in, out := &in.VolumesAttached, &out.VolumesAttached + *out = make([]AttachedVolume, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeStatus. +func (x *NodeStatus) DeepCopy() *NodeStatus { + if x == nil { + return nil + } + out := new(NodeStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSystemInfo) DeepCopyInto(out *NodeSystemInfo) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NodeSystemInfo. +func (x *NodeSystemInfo) DeepCopy() *NodeSystemInfo { + if x == nil { + return nil + } + out := new(NodeSystemInfo) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectFieldSelector) DeepCopyInto(out *ObjectFieldSelector) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ObjectFieldSelector. +func (x *ObjectFieldSelector) DeepCopy() *ObjectFieldSelector { + if x == nil { + return nil + } + out := new(ObjectFieldSelector) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectMeta) DeepCopyInto(out *ObjectMeta) { + *out = *in + in.CreationTimestamp.DeepCopyInto(&out.CreationTimestamp) + if in.DeletionTimestamp != nil { + in, out := &in.DeletionTimestamp, &out.DeletionTimestamp + if *in == nil { + *out = nil + } else { + *out = new(meta_v1.Time) + (*in).DeepCopyInto(*out) + } + } + if in.DeletionGracePeriodSeconds != nil { + in, out := &in.DeletionGracePeriodSeconds, &out.DeletionGracePeriodSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.OwnerReferences != nil { + in, out := &in.OwnerReferences, &out.OwnerReferences + *out = make([]meta_v1.OwnerReference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Initializers != nil { + in, out := &in.Initializers, &out.Initializers + if *in == nil { + *out = nil + } else { + *out = new(meta_v1.Initializers) + (*in).DeepCopyInto(*out) + } + } + if in.Finalizers != nil { + in, out := &in.Finalizers, &out.Finalizers + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ObjectMeta. +func (x *ObjectMeta) DeepCopy() *ObjectMeta { + if x == nil { + return nil + } + out := new(ObjectMeta) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectReference) DeepCopyInto(out *ObjectReference) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ObjectReference. +func (x *ObjectReference) DeepCopy() *ObjectReference { + if x == nil { + return nil + } + out := new(ObjectReference) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ObjectReference) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolume) DeepCopyInto(out *PersistentVolume) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + out.Status = in.Status + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolume. +func (x *PersistentVolume) DeepCopy() *PersistentVolume { + if x == nil { + return nil + } + out := new(PersistentVolume) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PersistentVolume) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaim) DeepCopyInto(out *PersistentVolumeClaim) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaim. +func (x *PersistentVolumeClaim) DeepCopy() *PersistentVolumeClaim { + if x == nil { + return nil + } + out := new(PersistentVolumeClaim) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PersistentVolumeClaim) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimList) DeepCopyInto(out *PersistentVolumeClaimList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PersistentVolumeClaim, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimList. +func (x *PersistentVolumeClaimList) DeepCopy() *PersistentVolumeClaimList { + if x == nil { + return nil + } + out := new(PersistentVolumeClaimList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PersistentVolumeClaimList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimSpec) DeepCopyInto(out *PersistentVolumeClaimSpec) { + *out = *in + if in.AccessModes != nil { + in, out := &in.AccessModes, &out.AccessModes + *out = make([]PersistentVolumeAccessMode, len(*in)) + copy(*out, *in) + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + if *in == nil { + *out = nil + } else { + *out = new(meta_v1.LabelSelector) + (*in).DeepCopyInto(*out) + } + } + in.Resources.DeepCopyInto(&out.Resources) + if in.StorageClassName != nil { + in, out := &in.StorageClassName, &out.StorageClassName + if *in == nil { + *out = nil + } else { + *out = new(string) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimSpec. +func (x *PersistentVolumeClaimSpec) DeepCopy() *PersistentVolumeClaimSpec { + if x == nil { + return nil + } + out := new(PersistentVolumeClaimSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimStatus) DeepCopyInto(out *PersistentVolumeClaimStatus) { + *out = *in + if in.AccessModes != nil { + in, out := &in.AccessModes, &out.AccessModes + *out = make([]PersistentVolumeAccessMode, len(*in)) + copy(*out, *in) + } + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimStatus. +func (x *PersistentVolumeClaimStatus) DeepCopy() *PersistentVolumeClaimStatus { + if x == nil { + return nil + } + out := new(PersistentVolumeClaimStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimVolumeSource) DeepCopyInto(out *PersistentVolumeClaimVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimVolumeSource. +func (x *PersistentVolumeClaimVolumeSource) DeepCopy() *PersistentVolumeClaimVolumeSource { + if x == nil { + return nil + } + out := new(PersistentVolumeClaimVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeList) DeepCopyInto(out *PersistentVolumeList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PersistentVolume, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeList. +func (x *PersistentVolumeList) DeepCopy() *PersistentVolumeList { + if x == nil { + return nil + } + out := new(PersistentVolumeList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PersistentVolumeList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeSource) DeepCopyInto(out *PersistentVolumeSource) { + *out = *in + if in.GCEPersistentDisk != nil { + in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk + if *in == nil { + *out = nil + } else { + *out = new(GCEPersistentDiskVolumeSource) + **out = **in + } + } + if in.AWSElasticBlockStore != nil { + in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore + if *in == nil { + *out = nil + } else { + *out = new(AWSElasticBlockStoreVolumeSource) + **out = **in + } + } + if in.HostPath != nil { + in, out := &in.HostPath, &out.HostPath + if *in == nil { + *out = nil + } else { + *out = new(HostPathVolumeSource) + **out = **in + } + } + if in.Glusterfs != nil { + in, out := &in.Glusterfs, &out.Glusterfs + if *in == nil { + *out = nil + } else { + *out = new(GlusterfsVolumeSource) + **out = **in + } + } + if in.NFS != nil { + in, out := &in.NFS, &out.NFS + if *in == nil { + *out = nil + } else { + *out = new(NFSVolumeSource) + **out = **in + } + } + if in.RBD != nil { + in, out := &in.RBD, &out.RBD + if *in == nil { + *out = nil + } else { + *out = new(RBDVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.ISCSI != nil { + in, out := &in.ISCSI, &out.ISCSI + if *in == nil { + *out = nil + } else { + *out = new(ISCSIVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.Cinder != nil { + in, out := &in.Cinder, &out.Cinder + if *in == nil { + *out = nil + } else { + *out = new(CinderVolumeSource) + **out = **in + } + } + if in.CephFS != nil { + in, out := &in.CephFS, &out.CephFS + if *in == nil { + *out = nil + } else { + *out = new(CephFSVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.FC != nil { + in, out := &in.FC, &out.FC + if *in == nil { + *out = nil + } else { + *out = new(FCVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.Flocker != nil { + in, out := &in.Flocker, &out.Flocker + if *in == nil { + *out = nil + } else { + *out = new(FlockerVolumeSource) + **out = **in + } + } + if in.FlexVolume != nil { + in, out := &in.FlexVolume, &out.FlexVolume + if *in == nil { + *out = nil + } else { + *out = new(FlexVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.AzureFile != nil { + in, out := &in.AzureFile, &out.AzureFile + if *in == nil { + *out = nil + } else { + *out = new(AzureFileVolumeSource) + **out = **in + } + } + if in.VsphereVolume != nil { + in, out := &in.VsphereVolume, &out.VsphereVolume + if *in == nil { + *out = nil + } else { + *out = new(VsphereVirtualDiskVolumeSource) + **out = **in + } + } + if in.Quobyte != nil { + in, out := &in.Quobyte, &out.Quobyte + if *in == nil { + *out = nil + } else { + *out = new(QuobyteVolumeSource) + **out = **in + } + } + if in.AzureDisk != nil { + in, out := &in.AzureDisk, &out.AzureDisk + if *in == nil { + *out = nil + } else { + *out = new(AzureDiskVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.PhotonPersistentDisk != nil { + in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk + if *in == nil { + *out = nil + } else { + *out = new(PhotonPersistentDiskVolumeSource) + **out = **in + } + } + if in.PortworxVolume != nil { + in, out := &in.PortworxVolume, &out.PortworxVolume + if *in == nil { + *out = nil + } else { + *out = new(PortworxVolumeSource) + **out = **in + } + } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + if *in == nil { + *out = nil + } else { + *out = new(ScaleIOVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.Local != nil { + in, out := &in.Local, &out.Local + if *in == nil { + *out = nil + } else { + *out = new(LocalVolumeSource) + **out = **in + } + } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + if *in == nil { + *out = nil + } else { + *out = new(StorageOSPersistentVolumeSource) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeSource. +func (x *PersistentVolumeSource) DeepCopy() *PersistentVolumeSource { + if x == nil { + return nil + } + out := new(PersistentVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeSpec) DeepCopyInto(out *PersistentVolumeSpec) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + in.PersistentVolumeSource.DeepCopyInto(&out.PersistentVolumeSource) + if in.AccessModes != nil { + in, out := &in.AccessModes, &out.AccessModes + *out = make([]PersistentVolumeAccessMode, len(*in)) + copy(*out, *in) + } + if in.ClaimRef != nil { + in, out := &in.ClaimRef, &out.ClaimRef + if *in == nil { + *out = nil + } else { + *out = new(ObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeSpec. +func (x *PersistentVolumeSpec) DeepCopy() *PersistentVolumeSpec { + if x == nil { + return nil + } + out := new(PersistentVolumeSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeStatus) DeepCopyInto(out *PersistentVolumeStatus) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeStatus. +func (x *PersistentVolumeStatus) DeepCopy() *PersistentVolumeStatus { + if x == nil { + return nil + } + out := new(PersistentVolumeStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PhotonPersistentDiskVolumeSource) DeepCopyInto(out *PhotonPersistentDiskVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PhotonPersistentDiskVolumeSource. +func (x *PhotonPersistentDiskVolumeSource) DeepCopy() *PhotonPersistentDiskVolumeSource { + if x == nil { + return nil + } + out := new(PhotonPersistentDiskVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Pod) DeepCopyInto(out *Pod) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Pod. +func (x *Pod) DeepCopy() *Pod { + if x == nil { + return nil + } + out := new(Pod) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Pod) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAffinity) DeepCopyInto(out *PodAffinity) { + *out = *in + if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution + *out = make([]PodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution + *out = make([]WeightedPodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodAffinity. +func (x *PodAffinity) DeepCopy() *PodAffinity { + if x == nil { + return nil + } + out := new(PodAffinity) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAffinityTerm) DeepCopyInto(out *PodAffinityTerm) { + *out = *in + if in.LabelSelector != nil { + in, out := &in.LabelSelector, &out.LabelSelector + if *in == nil { + *out = nil + } else { + *out = new(meta_v1.LabelSelector) + (*in).DeepCopyInto(*out) + } + } + if in.Namespaces != nil { + in, out := &in.Namespaces, &out.Namespaces + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodAffinityTerm. +func (x *PodAffinityTerm) DeepCopy() *PodAffinityTerm { + if x == nil { + return nil + } + out := new(PodAffinityTerm) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAntiAffinity) DeepCopyInto(out *PodAntiAffinity) { + *out = *in + if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution + *out = make([]PodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution + *out = make([]WeightedPodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodAntiAffinity. +func (x *PodAntiAffinity) DeepCopy() *PodAntiAffinity { + if x == nil { + return nil + } + out := new(PodAntiAffinity) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAttachOptions) DeepCopyInto(out *PodAttachOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodAttachOptions. +func (x *PodAttachOptions) DeepCopy() *PodAttachOptions { + if x == nil { + return nil + } + out := new(PodAttachOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodAttachOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodCondition) DeepCopyInto(out *PodCondition) { + *out = *in + in.LastProbeTime.DeepCopyInto(&out.LastProbeTime) + in.LastTransitionTime.DeepCopyInto(&out.LastTransitionTime) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodCondition. +func (x *PodCondition) DeepCopy() *PodCondition { + if x == nil { + return nil + } + out := new(PodCondition) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodExecOptions) DeepCopyInto(out *PodExecOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Command != nil { + in, out := &in.Command, &out.Command + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodExecOptions. +func (x *PodExecOptions) DeepCopy() *PodExecOptions { + if x == nil { + return nil + } + out := new(PodExecOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodExecOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodList) DeepCopyInto(out *PodList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Pod, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodList. +func (x *PodList) DeepCopy() *PodList { + if x == nil { + return nil + } + out := new(PodList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodLogOptions) DeepCopyInto(out *PodLogOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.SinceSeconds != nil { + in, out := &in.SinceSeconds, &out.SinceSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.SinceTime != nil { + in, out := &in.SinceTime, &out.SinceTime + if *in == nil { + *out = nil + } else { + *out = new(meta_v1.Time) + (*in).DeepCopyInto(*out) + } + } + if in.TailLines != nil { + in, out := &in.TailLines, &out.TailLines + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.LimitBytes != nil { + in, out := &in.LimitBytes, &out.LimitBytes + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodLogOptions. +func (x *PodLogOptions) DeepCopy() *PodLogOptions { + if x == nil { + return nil + } + out := new(PodLogOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodLogOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodPortForwardOptions) DeepCopyInto(out *PodPortForwardOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]int32, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodPortForwardOptions. +func (x *PodPortForwardOptions) DeepCopy() *PodPortForwardOptions { + if x == nil { + return nil + } + out := new(PodPortForwardOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodPortForwardOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodProxyOptions) DeepCopyInto(out *PodProxyOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodProxyOptions. +func (x *PodProxyOptions) DeepCopy() *PodProxyOptions { + if x == nil { + return nil + } + out := new(PodProxyOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodProxyOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodSecurityContext) DeepCopyInto(out *PodSecurityContext) { + *out = *in + if in.SELinuxOptions != nil { + in, out := &in.SELinuxOptions, &out.SELinuxOptions + if *in == nil { + *out = nil + } else { + *out = new(SELinuxOptions) + **out = **in + } + } + if in.RunAsUser != nil { + in, out := &in.RunAsUser, &out.RunAsUser + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.RunAsNonRoot != nil { + in, out := &in.RunAsNonRoot, &out.RunAsNonRoot + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.SupplementalGroups != nil { + in, out := &in.SupplementalGroups, &out.SupplementalGroups + *out = make([]int64, len(*in)) + copy(*out, *in) + } + if in.FSGroup != nil { + in, out := &in.FSGroup, &out.FSGroup + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodSecurityContext. +func (x *PodSecurityContext) DeepCopy() *PodSecurityContext { + if x == nil { + return nil + } + out := new(PodSecurityContext) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodSignature) DeepCopyInto(out *PodSignature) { + *out = *in + if in.PodController != nil { + in, out := &in.PodController, &out.PodController + if *in == nil { + *out = nil + } else { + *out = new(meta_v1.OwnerReference) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodSignature. +func (x *PodSignature) DeepCopy() *PodSignature { + if x == nil { + return nil + } + out := new(PodSignature) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodSpec) DeepCopyInto(out *PodSpec) { + *out = *in + if in.Volumes != nil { + in, out := &in.Volumes, &out.Volumes + *out = make([]Volume, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InitContainers != nil { + in, out := &in.InitContainers, &out.InitContainers + *out = make([]Container, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Containers != nil { + in, out := &in.Containers, &out.Containers + *out = make([]Container, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TerminationGracePeriodSeconds != nil { + in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.ActiveDeadlineSeconds != nil { + in, out := &in.ActiveDeadlineSeconds, &out.ActiveDeadlineSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.NodeSelector != nil { + in, out := &in.NodeSelector, &out.NodeSelector + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.AutomountServiceAccountToken != nil { + in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.SecurityContext != nil { + in, out := &in.SecurityContext, &out.SecurityContext + if *in == nil { + *out = nil + } else { + *out = new(PodSecurityContext) + (*in).DeepCopyInto(*out) + } + } + if in.ImagePullSecrets != nil { + in, out := &in.ImagePullSecrets, &out.ImagePullSecrets + *out = make([]LocalObjectReference, len(*in)) + copy(*out, *in) + } + if in.Affinity != nil { + in, out := &in.Affinity, &out.Affinity + if *in == nil { + *out = nil + } else { + *out = new(Affinity) + (*in).DeepCopyInto(*out) + } + } + if in.Tolerations != nil { + in, out := &in.Tolerations, &out.Tolerations + *out = make([]Toleration, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HostAliases != nil { + in, out := &in.HostAliases, &out.HostAliases + *out = make([]HostAlias, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodSpec. +func (x *PodSpec) DeepCopy() *PodSpec { + if x == nil { + return nil + } + out := new(PodSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodStatus) DeepCopyInto(out *PodStatus) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]PodCondition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + if *in == nil { + *out = nil + } else { + *out = new(meta_v1.Time) + (*in).DeepCopyInto(*out) + } + } + if in.InitContainerStatuses != nil { + in, out := &in.InitContainerStatuses, &out.InitContainerStatuses + *out = make([]ContainerStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContainerStatuses != nil { + in, out := &in.ContainerStatuses, &out.ContainerStatuses + *out = make([]ContainerStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodStatus. +func (x *PodStatus) DeepCopy() *PodStatus { + if x == nil { + return nil + } + out := new(PodStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodStatusResult) DeepCopyInto(out *PodStatusResult) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodStatusResult. +func (x *PodStatusResult) DeepCopy() *PodStatusResult { + if x == nil { + return nil + } + out := new(PodStatusResult) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodStatusResult) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodTemplate) DeepCopyInto(out *PodTemplate) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Template.DeepCopyInto(&out.Template) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplate. +func (x *PodTemplate) DeepCopy() *PodTemplate { + if x == nil { + return nil + } + out := new(PodTemplate) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodTemplate) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodTemplateList) DeepCopyInto(out *PodTemplateList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PodTemplate, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplateList. +func (x *PodTemplateList) DeepCopy() *PodTemplateList { + if x == nil { + return nil + } + out := new(PodTemplateList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PodTemplateList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodTemplateSpec) DeepCopyInto(out *PodTemplateSpec) { + *out = *in + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplateSpec. +func (x *PodTemplateSpec) DeepCopy() *PodTemplateSpec { + if x == nil { + return nil + } + out := new(PodTemplateSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PortworxVolumeSource) DeepCopyInto(out *PortworxVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PortworxVolumeSource. +func (x *PortworxVolumeSource) DeepCopy() *PortworxVolumeSource { + if x == nil { + return nil + } + out := new(PortworxVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Preconditions) DeepCopyInto(out *Preconditions) { + *out = *in + if in.UID != nil { + in, out := &in.UID, &out.UID + if *in == nil { + *out = nil + } else { + *out = new(types.UID) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Preconditions. +func (x *Preconditions) DeepCopy() *Preconditions { + if x == nil { + return nil + } + out := new(Preconditions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PreferAvoidPodsEntry) DeepCopyInto(out *PreferAvoidPodsEntry) { + *out = *in + in.PodSignature.DeepCopyInto(&out.PodSignature) + in.EvictionTime.DeepCopyInto(&out.EvictionTime) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PreferAvoidPodsEntry. +func (x *PreferAvoidPodsEntry) DeepCopy() *PreferAvoidPodsEntry { + if x == nil { + return nil + } + out := new(PreferAvoidPodsEntry) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PreferredSchedulingTerm) DeepCopyInto(out *PreferredSchedulingTerm) { + *out = *in + in.Preference.DeepCopyInto(&out.Preference) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PreferredSchedulingTerm. +func (x *PreferredSchedulingTerm) DeepCopy() *PreferredSchedulingTerm { + if x == nil { + return nil + } + out := new(PreferredSchedulingTerm) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Probe) DeepCopyInto(out *Probe) { + *out = *in + in.Handler.DeepCopyInto(&out.Handler) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Probe. +func (x *Probe) DeepCopy() *Probe { + if x == nil { + return nil + } + out := new(Probe) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProjectedVolumeSource) DeepCopyInto(out *ProjectedVolumeSource) { + *out = *in + if in.Sources != nil { + in, out := &in.Sources, &out.Sources + *out = make([]VolumeProjection, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ProjectedVolumeSource. +func (x *ProjectedVolumeSource) DeepCopy() *ProjectedVolumeSource { + if x == nil { + return nil + } + out := new(ProjectedVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QuobyteVolumeSource) DeepCopyInto(out *QuobyteVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new QuobyteVolumeSource. +func (x *QuobyteVolumeSource) DeepCopy() *QuobyteVolumeSource { + if x == nil { + return nil + } + out := new(QuobyteVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RBDVolumeSource) DeepCopyInto(out *RBDVolumeSource) { + *out = *in + if in.CephMonitors != nil { + in, out := &in.CephMonitors, &out.CephMonitors + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(LocalObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new RBDVolumeSource. +func (x *RBDVolumeSource) DeepCopy() *RBDVolumeSource { + if x == nil { + return nil + } + out := new(RBDVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RangeAllocation) DeepCopyInto(out *RangeAllocation) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Data != nil { + in, out := &in.Data, &out.Data + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new RangeAllocation. +func (x *RangeAllocation) DeepCopy() *RangeAllocation { + if x == nil { + return nil + } + out := new(RangeAllocation) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *RangeAllocation) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationController) DeepCopyInto(out *ReplicationController) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationController. +func (x *ReplicationController) DeepCopy() *ReplicationController { + if x == nil { + return nil + } + out := new(ReplicationController) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ReplicationController) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerCondition) DeepCopyInto(out *ReplicationControllerCondition) { + *out = *in + in.LastTransitionTime.DeepCopyInto(&out.LastTransitionTime) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerCondition. +func (x *ReplicationControllerCondition) DeepCopy() *ReplicationControllerCondition { + if x == nil { + return nil + } + out := new(ReplicationControllerCondition) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerList) DeepCopyInto(out *ReplicationControllerList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ReplicationController, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerList. +func (x *ReplicationControllerList) DeepCopy() *ReplicationControllerList { + if x == nil { + return nil + } + out := new(ReplicationControllerList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ReplicationControllerList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerSpec) DeepCopyInto(out *ReplicationControllerSpec) { + *out = *in + if in.Replicas != nil { + in, out := &in.Replicas, &out.Replicas + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Template != nil { + in, out := &in.Template, &out.Template + if *in == nil { + *out = nil + } else { + *out = new(PodTemplateSpec) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerSpec. +func (x *ReplicationControllerSpec) DeepCopy() *ReplicationControllerSpec { + if x == nil { + return nil + } + out := new(ReplicationControllerSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerStatus) DeepCopyInto(out *ReplicationControllerStatus) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]ReplicationControllerCondition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerStatus. +func (x *ReplicationControllerStatus) DeepCopy() *ReplicationControllerStatus { + if x == nil { + return nil + } + out := new(ReplicationControllerStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceFieldSelector) DeepCopyInto(out *ResourceFieldSelector) { + *out = *in + out.Divisor = in.Divisor.DeepCopy() + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceFieldSelector. +func (x *ResourceFieldSelector) DeepCopy() *ResourceFieldSelector { + if x == nil { + return nil + } + out := new(ResourceFieldSelector) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuota) DeepCopyInto(out *ResourceQuota) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuota. +func (x *ResourceQuota) DeepCopy() *ResourceQuota { + if x == nil { + return nil + } + out := new(ResourceQuota) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ResourceQuota) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaList) DeepCopyInto(out *ResourceQuotaList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ResourceQuota, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaList. +func (x *ResourceQuotaList) DeepCopy() *ResourceQuotaList { + if x == nil { + return nil + } + out := new(ResourceQuotaList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ResourceQuotaList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaSpec) DeepCopyInto(out *ResourceQuotaSpec) { + *out = *in + if in.Hard != nil { + in, out := &in.Hard, &out.Hard + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]ResourceQuotaScope, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaSpec. +func (x *ResourceQuotaSpec) DeepCopy() *ResourceQuotaSpec { + if x == nil { + return nil + } + out := new(ResourceQuotaSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaStatus) DeepCopyInto(out *ResourceQuotaStatus) { + *out = *in + if in.Hard != nil { + in, out := &in.Hard, &out.Hard + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Used != nil { + in, out := &in.Used, &out.Used + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaStatus. +func (x *ResourceQuotaStatus) DeepCopy() *ResourceQuotaStatus { + if x == nil { + return nil + } + out := new(ResourceQuotaStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceRequirements) DeepCopyInto(out *ResourceRequirements) { + *out = *in + if in.Limits != nil { + in, out := &in.Limits, &out.Limits + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Requests != nil { + in, out := &in.Requests, &out.Requests + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequirements. +func (x *ResourceRequirements) DeepCopy() *ResourceRequirements { + if x == nil { + return nil + } + out := new(ResourceRequirements) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SELinuxOptions) DeepCopyInto(out *SELinuxOptions) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SELinuxOptions. +func (x *SELinuxOptions) DeepCopy() *SELinuxOptions { + if x == nil { + return nil + } + out := new(SELinuxOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScaleIOVolumeSource) DeepCopyInto(out *ScaleIOVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(LocalObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ScaleIOVolumeSource. +func (x *ScaleIOVolumeSource) DeepCopy() *ScaleIOVolumeSource { + if x == nil { + return nil + } + out := new(ScaleIOVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Secret) DeepCopyInto(out *Secret) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Data != nil { + in, out := &in.Data, &out.Data + *out = make(map[string][]byte, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = make([]byte, len(val)) + copy((*out)[key], val) + } + } + } + if in.StringData != nil { + in, out := &in.StringData, &out.StringData + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Secret. +func (x *Secret) DeepCopy() *Secret { + if x == nil { + return nil + } + out := new(Secret) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Secret) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretEnvSource) DeepCopyInto(out *SecretEnvSource) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SecretEnvSource. +func (x *SecretEnvSource) DeepCopy() *SecretEnvSource { + if x == nil { + return nil + } + out := new(SecretEnvSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretKeySelector) DeepCopyInto(out *SecretKeySelector) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SecretKeySelector. +func (x *SecretKeySelector) DeepCopy() *SecretKeySelector { + if x == nil { + return nil + } + out := new(SecretKeySelector) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretList) DeepCopyInto(out *SecretList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Secret, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SecretList. +func (x *SecretList) DeepCopy() *SecretList { + if x == nil { + return nil + } + out := new(SecretList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *SecretList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretProjection) DeepCopyInto(out *SecretProjection) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SecretProjection. +func (x *SecretProjection) DeepCopy() *SecretProjection { + if x == nil { + return nil + } + out := new(SecretProjection) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretVolumeSource) DeepCopyInto(out *SecretVolumeSource) { + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SecretVolumeSource. +func (x *SecretVolumeSource) DeepCopy() *SecretVolumeSource { + if x == nil { + return nil + } + out := new(SecretVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityContext) DeepCopyInto(out *SecurityContext) { + *out = *in + if in.Capabilities != nil { + in, out := &in.Capabilities, &out.Capabilities + if *in == nil { + *out = nil + } else { + *out = new(Capabilities) + (*in).DeepCopyInto(*out) + } + } + if in.Privileged != nil { + in, out := &in.Privileged, &out.Privileged + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.SELinuxOptions != nil { + in, out := &in.SELinuxOptions, &out.SELinuxOptions + if *in == nil { + *out = nil + } else { + *out = new(SELinuxOptions) + **out = **in + } + } + if in.RunAsUser != nil { + in, out := &in.RunAsUser, &out.RunAsUser + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.RunAsNonRoot != nil { + in, out := &in.RunAsNonRoot, &out.RunAsNonRoot + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.ReadOnlyRootFilesystem != nil { + in, out := &in.ReadOnlyRootFilesystem, &out.ReadOnlyRootFilesystem + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.AllowPrivilegeEscalation != nil { + in, out := &in.AllowPrivilegeEscalation, &out.AllowPrivilegeEscalation + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SecurityContext. +func (x *SecurityContext) DeepCopy() *SecurityContext { + if x == nil { + return nil + } + out := new(SecurityContext) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SerializedReference) DeepCopyInto(out *SerializedReference) { + *out = *in + out.TypeMeta = in.TypeMeta + out.Reference = in.Reference + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SerializedReference. +func (x *SerializedReference) DeepCopy() *SerializedReference { + if x == nil { + return nil + } + out := new(SerializedReference) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *SerializedReference) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service) DeepCopyInto(out *Service) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Service. +func (x *Service) DeepCopy() *Service { + if x == nil { + return nil + } + out := new(Service) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Service) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccount) DeepCopyInto(out *ServiceAccount) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Secrets != nil { + in, out := &in.Secrets, &out.Secrets + *out = make([]ObjectReference, len(*in)) + copy(*out, *in) + } + if in.ImagePullSecrets != nil { + in, out := &in.ImagePullSecrets, &out.ImagePullSecrets + *out = make([]LocalObjectReference, len(*in)) + copy(*out, *in) + } + if in.AutomountServiceAccountToken != nil { + in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccount. +func (x *ServiceAccount) DeepCopy() *ServiceAccount { + if x == nil { + return nil + } + out := new(ServiceAccount) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ServiceAccount) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountList) DeepCopyInto(out *ServiceAccountList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ServiceAccount, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountList. +func (x *ServiceAccountList) DeepCopy() *ServiceAccountList { + if x == nil { + return nil + } + out := new(ServiceAccountList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ServiceAccountList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceList) DeepCopyInto(out *ServiceList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Service, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServiceList. +func (x *ServiceList) DeepCopy() *ServiceList { + if x == nil { + return nil + } + out := new(ServiceList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ServiceList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicePort) DeepCopyInto(out *ServicePort) { + *out = *in + out.TargetPort = in.TargetPort + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServicePort. +func (x *ServicePort) DeepCopy() *ServicePort { + if x == nil { + return nil + } + out := new(ServicePort) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceProxyOptions) DeepCopyInto(out *ServiceProxyOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServiceProxyOptions. +func (x *ServiceProxyOptions) DeepCopy() *ServiceProxyOptions { + if x == nil { + return nil + } + out := new(ServiceProxyOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ServiceProxyOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec) { + *out = *in + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]ServicePort, len(*in)) + copy(*out, *in) + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ExternalIPs != nil { + in, out := &in.ExternalIPs, &out.ExternalIPs + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.LoadBalancerSourceRanges != nil { + in, out := &in.LoadBalancerSourceRanges, &out.LoadBalancerSourceRanges + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec. +func (x *ServiceSpec) DeepCopy() *ServiceSpec { + if x == nil { + return nil + } + out := new(ServiceSpec) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus) { + *out = *in + in.LoadBalancer.DeepCopyInto(&out.LoadBalancer) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServiceStatus. +func (x *ServiceStatus) DeepCopy() *ServiceStatus { + if x == nil { + return nil + } + out := new(ServiceStatus) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageOSPersistentVolumeSource) DeepCopyInto(out *StorageOSPersistentVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(ObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new StorageOSPersistentVolumeSource. +func (x *StorageOSPersistentVolumeSource) DeepCopy() *StorageOSPersistentVolumeSource { + if x == nil { + return nil + } + out := new(StorageOSPersistentVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageOSVolumeSource) DeepCopyInto(out *StorageOSVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(LocalObjectReference) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new StorageOSVolumeSource. +func (x *StorageOSVolumeSource) DeepCopy() *StorageOSVolumeSource { + if x == nil { + return nil + } + out := new(StorageOSVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Sysctl) DeepCopyInto(out *Sysctl) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Sysctl. +func (x *Sysctl) DeepCopy() *Sysctl { + if x == nil { + return nil + } + out := new(Sysctl) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TCPSocketAction) DeepCopyInto(out *TCPSocketAction) { + *out = *in + out.Port = in.Port + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new TCPSocketAction. +func (x *TCPSocketAction) DeepCopy() *TCPSocketAction { + if x == nil { + return nil + } + out := new(TCPSocketAction) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Taint) DeepCopyInto(out *Taint) { + *out = *in + in.TimeAdded.DeepCopyInto(&out.TimeAdded) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Taint. +func (x *Taint) DeepCopy() *Taint { + if x == nil { + return nil + } + out := new(Taint) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Toleration) DeepCopyInto(out *Toleration) { + *out = *in + if in.TolerationSeconds != nil { + in, out := &in.TolerationSeconds, &out.TolerationSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Toleration. +func (x *Toleration) DeepCopy() *Toleration { + if x == nil { + return nil + } + out := new(Toleration) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Volume) DeepCopyInto(out *Volume) { + *out = *in + in.VolumeSource.DeepCopyInto(&out.VolumeSource) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Volume. +func (x *Volume) DeepCopy() *Volume { + if x == nil { + return nil + } + out := new(Volume) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeMount) DeepCopyInto(out *VolumeMount) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount. +func (x *VolumeMount) DeepCopy() *VolumeMount { + if x == nil { + return nil + } + out := new(VolumeMount) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeProjection) DeepCopyInto(out *VolumeProjection) { + *out = *in + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + if *in == nil { + *out = nil + } else { + *out = new(SecretProjection) + (*in).DeepCopyInto(*out) + } + } + if in.DownwardAPI != nil { + in, out := &in.DownwardAPI, &out.DownwardAPI + if *in == nil { + *out = nil + } else { + *out = new(DownwardAPIProjection) + (*in).DeepCopyInto(*out) + } + } + if in.ConfigMap != nil { + in, out := &in.ConfigMap, &out.ConfigMap + if *in == nil { + *out = nil + } else { + *out = new(ConfigMapProjection) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new VolumeProjection. +func (x *VolumeProjection) DeepCopy() *VolumeProjection { + if x == nil { + return nil + } + out := new(VolumeProjection) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeSource) DeepCopyInto(out *VolumeSource) { + *out = *in + if in.HostPath != nil { + in, out := &in.HostPath, &out.HostPath + if *in == nil { + *out = nil + } else { + *out = new(HostPathVolumeSource) + **out = **in + } + } + if in.EmptyDir != nil { + in, out := &in.EmptyDir, &out.EmptyDir + if *in == nil { + *out = nil + } else { + *out = new(EmptyDirVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.GCEPersistentDisk != nil { + in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk + if *in == nil { + *out = nil + } else { + *out = new(GCEPersistentDiskVolumeSource) + **out = **in + } + } + if in.AWSElasticBlockStore != nil { + in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore + if *in == nil { + *out = nil + } else { + *out = new(AWSElasticBlockStoreVolumeSource) + **out = **in + } + } + if in.GitRepo != nil { + in, out := &in.GitRepo, &out.GitRepo + if *in == nil { + *out = nil + } else { + *out = new(GitRepoVolumeSource) + **out = **in + } + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + if *in == nil { + *out = nil + } else { + *out = new(SecretVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.NFS != nil { + in, out := &in.NFS, &out.NFS + if *in == nil { + *out = nil + } else { + *out = new(NFSVolumeSource) + **out = **in + } + } + if in.ISCSI != nil { + in, out := &in.ISCSI, &out.ISCSI + if *in == nil { + *out = nil + } else { + *out = new(ISCSIVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.Glusterfs != nil { + in, out := &in.Glusterfs, &out.Glusterfs + if *in == nil { + *out = nil + } else { + *out = new(GlusterfsVolumeSource) + **out = **in + } + } + if in.PersistentVolumeClaim != nil { + in, out := &in.PersistentVolumeClaim, &out.PersistentVolumeClaim + if *in == nil { + *out = nil + } else { + *out = new(PersistentVolumeClaimVolumeSource) + **out = **in + } + } + if in.RBD != nil { + in, out := &in.RBD, &out.RBD + if *in == nil { + *out = nil + } else { + *out = new(RBDVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.FlexVolume != nil { + in, out := &in.FlexVolume, &out.FlexVolume + if *in == nil { + *out = nil + } else { + *out = new(FlexVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.Cinder != nil { + in, out := &in.Cinder, &out.Cinder + if *in == nil { + *out = nil + } else { + *out = new(CinderVolumeSource) + **out = **in + } + } + if in.CephFS != nil { + in, out := &in.CephFS, &out.CephFS + if *in == nil { + *out = nil + } else { + *out = new(CephFSVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.Flocker != nil { + in, out := &in.Flocker, &out.Flocker + if *in == nil { + *out = nil + } else { + *out = new(FlockerVolumeSource) + **out = **in + } + } + if in.DownwardAPI != nil { + in, out := &in.DownwardAPI, &out.DownwardAPI + if *in == nil { + *out = nil + } else { + *out = new(DownwardAPIVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.FC != nil { + in, out := &in.FC, &out.FC + if *in == nil { + *out = nil + } else { + *out = new(FCVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.AzureFile != nil { + in, out := &in.AzureFile, &out.AzureFile + if *in == nil { + *out = nil + } else { + *out = new(AzureFileVolumeSource) + **out = **in + } + } + if in.ConfigMap != nil { + in, out := &in.ConfigMap, &out.ConfigMap + if *in == nil { + *out = nil + } else { + *out = new(ConfigMapVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.VsphereVolume != nil { + in, out := &in.VsphereVolume, &out.VsphereVolume + if *in == nil { + *out = nil + } else { + *out = new(VsphereVirtualDiskVolumeSource) + **out = **in + } + } + if in.Quobyte != nil { + in, out := &in.Quobyte, &out.Quobyte + if *in == nil { + *out = nil + } else { + *out = new(QuobyteVolumeSource) + **out = **in + } + } + if in.AzureDisk != nil { + in, out := &in.AzureDisk, &out.AzureDisk + if *in == nil { + *out = nil + } else { + *out = new(AzureDiskVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.PhotonPersistentDisk != nil { + in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk + if *in == nil { + *out = nil + } else { + *out = new(PhotonPersistentDiskVolumeSource) + **out = **in + } + } + if in.Projected != nil { + in, out := &in.Projected, &out.Projected + if *in == nil { + *out = nil + } else { + *out = new(ProjectedVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.PortworxVolume != nil { + in, out := &in.PortworxVolume, &out.PortworxVolume + if *in == nil { + *out = nil + } else { + *out = new(PortworxVolumeSource) + **out = **in + } + } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + if *in == nil { + *out = nil + } else { + *out = new(ScaleIOVolumeSource) + (*in).DeepCopyInto(*out) + } + } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + if *in == nil { + *out = nil + } else { + *out = new(StorageOSVolumeSource) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSource. +func (x *VolumeSource) DeepCopy() *VolumeSource { + if x == nil { + return nil + } + out := new(VolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VsphereVirtualDiskVolumeSource) DeepCopyInto(out *VsphereVirtualDiskVolumeSource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new VsphereVirtualDiskVolumeSource. +func (x *VsphereVirtualDiskVolumeSource) DeepCopy() *VsphereVirtualDiskVolumeSource { + if x == nil { + return nil + } + out := new(VsphereVirtualDiskVolumeSource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WeightedPodAffinityTerm) DeepCopyInto(out *WeightedPodAffinityTerm) { + *out = *in + in.PodAffinityTerm.DeepCopyInto(&out.PodAffinityTerm) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new WeightedPodAffinityTerm. +func (x *WeightedPodAffinityTerm) DeepCopy() *WeightedPodAffinityTerm { + if x == nil { + return nil + } + out := new(WeightedPodAffinityTerm) + x.DeepCopyInto(out) + return out +} diff --git a/vendor/k8s.io/apimachinery/pkg/api/meta/help.go b/vendor/k8s.io/apimachinery/pkg/api/meta/help.go index 9e0fb152a..c70b3d2b6 100644 --- a/vendor/k8s.io/apimachinery/pkg/api/meta/help.go +++ b/vendor/k8s.io/apimachinery/pkg/api/meta/help.go @@ -67,6 +67,9 @@ func GetItemsPtr(list runtime.Object) (interface{}, error) { // EachListItem invokes fn on each runtime.Object in the list. Any error immediately terminates // the loop. func EachListItem(obj runtime.Object, fn func(runtime.Object) error) error { + if unstructured, ok := obj.(runtime.Unstructured); ok { + return unstructured.EachListItem(fn) + } // TODO: Change to an interface call? itemsPtr, err := GetItemsPtr(obj) if err != nil { diff --git a/vendor/k8s.io/apimachinery/pkg/apimachinery/registered/registered.go b/vendor/k8s.io/apimachinery/pkg/apimachinery/registered/registered.go index f2e32c88c..5150db016 100644 --- a/vendor/k8s.io/apimachinery/pkg/apimachinery/registered/registered.go +++ b/vendor/k8s.io/apimachinery/pkg/apimachinery/registered/registered.go @@ -42,10 +42,6 @@ type APIRegistrationManager struct { // registeredGroupVersions stores all API group versions for which RegisterGroup is called. registeredVersions map[schema.GroupVersion]struct{} - // thirdPartyGroupVersions are API versions which are dynamically - // registered (and unregistered) via API calls to the apiserver - thirdPartyGroupVersions []schema.GroupVersion - // enabledVersions represents all enabled API versions. It should be a // subset of registeredVersions. Please call EnableVersions() to add // enabled versions. @@ -66,11 +62,10 @@ type APIRegistrationManager struct { // wish to test. func NewAPIRegistrationManager(kubeAPIVersions string) (*APIRegistrationManager, error) { m := &APIRegistrationManager{ - registeredVersions: map[schema.GroupVersion]struct{}{}, - thirdPartyGroupVersions: []schema.GroupVersion{}, - enabledVersions: map[schema.GroupVersion]struct{}{}, - groupMetaMap: map[string]*apimachinery.GroupMeta{}, - envRequestedVersions: []schema.GroupVersion{}, + registeredVersions: map[schema.GroupVersion]struct{}{}, + enabledVersions: map[schema.GroupVersion]struct{}{}, + groupMetaMap: map[string]*apimachinery.GroupMeta{}, + envRequestedVersions: []schema.GroupVersion{}, } if len(kubeAPIVersions) != 0 { @@ -211,41 +206,6 @@ func (m *APIRegistrationManager) RegisteredGroupVersions() []schema.GroupVersion return ret } -// IsThirdPartyAPIGroupVersion returns true if the api version is a user-registered group/version. -func (m *APIRegistrationManager) IsThirdPartyAPIGroupVersion(gv schema.GroupVersion) bool { - for ix := range m.thirdPartyGroupVersions { - if m.thirdPartyGroupVersions[ix] == gv { - return true - } - } - return false -} - -// AddThirdPartyAPIGroupVersions sets the list of third party versions, -// registers them in the API machinery and enables them. -// Skips GroupVersions that are already registered. -// Returns the list of GroupVersions that were skipped. -func (m *APIRegistrationManager) AddThirdPartyAPIGroupVersions(gvs ...schema.GroupVersion) []schema.GroupVersion { - filteredGVs := []schema.GroupVersion{} - skippedGVs := []schema.GroupVersion{} - for ix := range gvs { - if !m.IsRegisteredVersion(gvs[ix]) { - filteredGVs = append(filteredGVs, gvs[ix]) - } else { - glog.V(3).Infof("Skipping %s, because its already registered", gvs[ix].String()) - skippedGVs = append(skippedGVs, gvs[ix]) - } - } - if len(filteredGVs) == 0 { - return skippedGVs - } - m.RegisterVersions(filteredGVs) - m.EnableVersions(filteredGVs...) - m.thirdPartyGroupVersions = append(m.thirdPartyGroupVersions, filteredGVs...) - - return skippedGVs -} - // InterfacesFor is a union meta.VersionInterfacesFunc func for all registered types func (m *APIRegistrationManager) InterfacesFor(version schema.GroupVersion) (*meta.VersionInterfaces, error) { groupMeta, err := m.Group(version.Group) diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/controller_ref.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/controller_ref.go new file mode 100644 index 000000000..042cd5b9c --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/controller_ref.go @@ -0,0 +1,54 @@ +/* +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/schema" +) + +// IsControlledBy checks if the object has a controllerRef set to the given owner +func IsControlledBy(obj Object, owner Object) bool { + ref := GetControllerOf(obj) + if ref == nil { + return false + } + return ref.UID == owner.GetUID() +} + +// GetControllerOf returns a pointer to a copy of the controllerRef if controllee has a controller +func GetControllerOf(controllee Object) *OwnerReference { + for _, ref := range controllee.GetOwnerReferences() { + if ref.Controller != nil && *ref.Controller { + return &ref + } + } + return nil +} + +// NewControllerRef creates an OwnerReference pointing to the given owner. +func NewControllerRef(owner Object, gvk schema.GroupVersionKind) *OwnerReference { + blockOwnerDeletion := true + isController := true + return &OwnerReference{ + APIVersion: gvk.GroupVersion().String(), + Kind: gvk.Kind, + Name: owner.GetName(), + UID: owner.GetUID(), + BlockOwnerDeletion: &blockOwnerDeletion, + Controller: &isController, + } +} 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 a6be57a87..9355a1309 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto @@ -101,6 +101,7 @@ message APIResourceList { // discover the API at /api, which is the root path of the legacy v1 API. // // +protobuf.options.(gogoproto.goproto_stringer)=false +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object message APIVersions { // versions are the api versions that are available. repeated string versions = 1; @@ -721,6 +722,8 @@ message Timestamp { // 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. +// +// +k8s:deepcopy-gen=false message TypeMeta { // Kind is a string value representing the REST resource this object represents. // Servers may infer this from the endpoint the client submits requests to. @@ -751,6 +754,8 @@ message Verbs { // Event represents a single event to a watched resource. // // +protobuf=true +// +k8s:deepcopy-gen=true +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object message WatchEvent { optional string type = 1; diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time.go index a1e01f344..49d2ac18e 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time.go @@ -37,11 +37,11 @@ type Time struct { time.Time `protobuf:"-"` } -// DeepCopy returns a deep-copy of the Time value. The underlying time.Time +// DeepCopyInto creates a deep-copy of the Time 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 Time) DeepCopy() Time { - return t +func (t *Time) DeepCopyInto(out *Time) { + *out = *t } // String returns the representation of the time. diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time_proto.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time_proto.go index 5520529dd..ed72186b4 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time_proto.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/time_proto.go @@ -42,7 +42,10 @@ func (m *Time) ProtoTime() *Timestamp { } return &Timestamp{ Seconds: m.Time.Unix(), - Nanos: int32(m.Time.Nanosecond()), + // leaving this here for the record. our JSON only handled seconds, so this results in writes by + // protobuf clients storing values that aren't read by json clients, which results in unexpected + // field mutation, which fails various validation and equality code. + // Nanos: int32(m.Time.Nanosecond()), } } @@ -64,7 +67,11 @@ func (m *Time) Unmarshal(data []byte) error { if err := p.Unmarshal(data); err != nil { return err } - m.Time = time.Unix(p.Seconds, int64(p.Nanos)).Local() + // leaving this here for the record. our JSON only handled seconds, so this results in writes by + // protobuf clients storing values that aren't read by json clients, which results in unexpected + // field mutation, which fails various validation and equality code. + // m.Time = time.Unix(p.Seconds, int64(p.Nanos)).Local() + m.Time = time.Unix(p.Seconds, int64(0)).Local() return nil } 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 c5ac31f79..14c7255c9 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go @@ -35,6 +35,8 @@ import ( // 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. +// +// +k8s:deepcopy-gen=false type TypeMeta struct { // Kind is a string value representing the REST resource this object represents. // Servers may infer this from the endpoint the client submits requests to. @@ -298,6 +300,8 @@ type OwnerReference struct { BlockOwnerDeletion *bool `json:"blockOwnerDeletion,omitempty" protobuf:"varint,7,opt,name=blockOwnerDeletion"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ListOptions is the query options to a standard REST list call. type ListOptions struct { TypeMeta `json:",inline"` @@ -330,6 +334,8 @@ type ListOptions struct { TimeoutSeconds *int64 `json:"timeoutSeconds,omitempty" protobuf:"varint,5,opt,name=timeoutSeconds"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ExportOptions is the query options to the standard REST get call. type ExportOptions struct { TypeMeta `json:",inline"` @@ -339,6 +345,8 @@ type ExportOptions struct { Exact bool `json:"exact" protobuf:"varint,2,opt,name=exact"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // GetOptions is the standard query options to the standard REST get call. type GetOptions struct { TypeMeta `json:",inline"` @@ -370,6 +378,8 @@ const ( DeletePropagationForeground DeletionPropagation = "Foreground" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // DeleteOptions may be provided when deleting an API object. type DeleteOptions struct { TypeMeta `json:",inline"` @@ -408,6 +418,8 @@ type Preconditions struct { UID *types.UID `json:"uid,omitempty" protobuf:"bytes,1,opt,name=uid,casttype=k8s.io/apimachinery/pkg/types.UID"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // Status is a return value for calls that don't return other objects. type Status struct { TypeMeta `json:",inline"` @@ -660,6 +672,7 @@ const ( // discover the API at /api, which is the root path of the legacy v1 API. // // +protobuf.options.(gogoproto.goproto_stringer)=false +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type APIVersions struct { TypeMeta `json:",inline"` // versions are the api versions that are available. @@ -674,6 +687,8 @@ type APIVersions struct { ServerAddressByClientCIDRs []ServerAddressByClientCIDR `json:"serverAddressByClientCIDRs" protobuf:"bytes,2,rep,name=serverAddressByClientCIDRs"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // APIGroupList is a list of APIGroup, to allow clients to discover the API at // /apis. type APIGroupList struct { @@ -682,6 +697,8 @@ type APIGroupList struct { Groups []APIGroup `json:"groups" protobuf:"bytes,1,rep,name=groups"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // APIGroup contains the name, the supported versions, and the preferred version // of a group. type APIGroup struct { @@ -754,6 +771,8 @@ func (vs Verbs) String() string { return fmt.Sprintf("%v", []string(vs)) } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // APIResourceList is a list of APIResource, it is used to expose the name of the // resources supported in a specific group and version, and if the resource // is namespaced. 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 fed687e9b..c6638c218 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 @@ -43,6 +43,8 @@ import ( // type if you are dealing with objects that are not in the server meta v1 schema. // // TODO: make the serialization part of this type distinct from the field accessors. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +k8s:deepcopy-gen=true type Unstructured struct { // Object is a JSON compatible map with string, float, int, bool, []interface{}, or // map[string]interface{} @@ -69,6 +71,39 @@ func (obj *Unstructured) IsList() bool { } func (obj *UnstructuredList) IsList() bool { return true } +func (obj *Unstructured) EachListItem(fn func(runtime.Object) error) error { + if obj.Object == nil { + return fmt.Errorf("content is not a list") + } + field, ok := obj.Object["items"] + if !ok { + return fmt.Errorf("content is not a list") + } + items, ok := field.([]interface{}) + if !ok { + return nil + } + for _, item := range items { + child, ok := item.(map[string]interface{}) + if !ok { + return fmt.Errorf("items member is not an object") + } + if err := fn(&Unstructured{Object: child}); err != nil { + return err + } + } + return nil +} + +func (obj *UnstructuredList) EachListItem(fn func(runtime.Object) error) error { + for i := range obj.Items { + if err := fn(&obj.Items[i]); err != nil { + return err + } + } + return nil +} + func (obj *Unstructured) UnstructuredContent() map[string]interface{} { if obj.Object == nil { obj.Object = make(map[string]interface{}) @@ -110,6 +145,50 @@ func (u *Unstructured) UnmarshalJSON(b []byte) error { return err } +func deepCopyJSON(x interface{}) interface{} { + switch x := x.(type) { + case map[string]interface{}: + clone := make(map[string]interface{}, len(x)) + for k, v := range x { + clone[k] = deepCopyJSON(v) + } + return clone + case []interface{}: + clone := make([]interface{}, len(x)) + for i := range x { + clone[i] = deepCopyJSON(x[i]) + } + return clone + default: + // only non-pointer values (float64, int64, bool, string) are left. These can be copied by-value. + return x + } +} + +func (in *Unstructured) DeepCopy() *Unstructured { + if in == nil { + return nil + } + out := new(Unstructured) + *out = *in + out.Object = deepCopyJSON(in.Object).(map[string]interface{}) + return out +} + +func (in *UnstructuredList) DeepCopy() *UnstructuredList { + if in == nil { + return nil + } + out := new(UnstructuredList) + *out = *in + out.Object = deepCopyJSON(in.Object).(map[string]interface{}) + out.Items = make([]Unstructured, len(in.Items)) + for i := range in.Items { + in.Items[i].DeepCopyInto(&out.Items[i]) + } + return out +} + func getNestedField(obj map[string]interface{}, fields ...string) interface{} { var val interface{} = obj for _, field := range fields { @@ -136,10 +215,15 @@ func getNestedInt64(obj map[string]interface{}, fields ...string) int64 { } func getNestedInt64Pointer(obj map[string]interface{}, fields ...string) *int64 { - if str, ok := getNestedField(obj, fields...).(*int64); ok { - return str + nested := getNestedField(obj, fields...) + switch n := nested.(type) { + case int64: + return &n + case *int64: + return n + default: + return nil } - return nil } func getNestedSlice(obj map[string]interface{}, fields ...string) []string { @@ -470,12 +554,15 @@ func (u *Unstructured) GetInitializers() *metav1.Initializers { } func (u *Unstructured) SetInitializers(initializers *metav1.Initializers) { + if u.Object == nil { + u.Object = make(map[string]interface{}) + } if initializers == nil { setNestedField(u.Object, nil, "metadata", "initializers") return } - out := make(map[string]interface{}) - if err := converter.ToUnstructured(initializers, &out); err != nil { + out, err := converter.ToUnstructured(initializers) + if err != nil { utilruntime.HandleError(fmt.Errorf("unable to retrieve initializers for object: %v", err)) } setNestedField(u.Object, out, "metadata", "initializers") @@ -500,6 +587,8 @@ func (u *Unstructured) SetClusterName(clusterName string) { // UnstructuredList allows lists that do not have Golang structs // registered to be manipulated generically. This can be used to deal // with the API lists from a plug-in. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +k8s:deepcopy-gen=true type UnstructuredList struct { Object map[string]interface{} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/zz_generated.deepcopy.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/zz_generated.deepcopy.go new file mode 100644 index 000000000..56e009f05 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/zz_generated.deepcopy.go @@ -0,0 +1,73 @@ +// +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 unstructured + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +// Deprecated: GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. +func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { + return []conversion.GeneratedDeepCopyFunc{ + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Unstructured).DeepCopyInto(out.(*Unstructured)) + return nil + }, InType: reflect.TypeOf(&Unstructured{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*UnstructuredList).DeepCopyInto(out.(*UnstructuredList)) + return nil + }, InType: reflect.TypeOf(&UnstructuredList{})}, + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Unstructured) DeepCopyInto(out *Unstructured) { + clone := in.DeepCopy() + *out = *clone + return +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Unstructured) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UnstructuredList) DeepCopyInto(out *UnstructuredList) { + clone := in.DeepCopy() + *out = *clone + return +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *UnstructuredList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/watch.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/watch.go index a645501a1..b7ec50318 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/watch.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/watch.go @@ -26,6 +26,8 @@ import ( // Event represents a single event to a watched resource. // // +protobuf=true +// +k8s:deepcopy-gen=true +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type WatchEvent struct { Type string `json:"type" protobuf:"bytes,1,opt,name=type"` @@ -78,3 +80,10 @@ type InternalEvent watch.Event func (e *InternalEvent) GetObjectKind() schema.ObjectKind { return schema.EmptyObjectKind } func (e *WatchEvent) GetObjectKind() schema.ObjectKind { return schema.EmptyObjectKind } +func (e *InternalEvent) DeepCopyObject() runtime.Object { + if c := e.DeepCopy(); c != nil { + return c + } else { + return nil + } +} 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 6fac96be4..74a16e4fd 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 @@ -27,620 +27,1026 @@ import ( reflect "reflect" ) -// GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. +// Deprecated: GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { return []conversion.GeneratedDeepCopyFunc{ - {Fn: DeepCopy_v1_APIGroup, InType: reflect.TypeOf(&APIGroup{})}, - {Fn: DeepCopy_v1_APIGroupList, InType: reflect.TypeOf(&APIGroupList{})}, - {Fn: DeepCopy_v1_APIResource, InType: reflect.TypeOf(&APIResource{})}, - {Fn: DeepCopy_v1_APIResourceList, InType: reflect.TypeOf(&APIResourceList{})}, - {Fn: DeepCopy_v1_APIVersions, InType: reflect.TypeOf(&APIVersions{})}, - {Fn: DeepCopy_v1_DeleteOptions, InType: reflect.TypeOf(&DeleteOptions{})}, - {Fn: DeepCopy_v1_Duration, InType: reflect.TypeOf(&Duration{})}, - {Fn: DeepCopy_v1_ExportOptions, InType: reflect.TypeOf(&ExportOptions{})}, - {Fn: DeepCopy_v1_GetOptions, InType: reflect.TypeOf(&GetOptions{})}, - {Fn: DeepCopy_v1_GroupKind, InType: reflect.TypeOf(&GroupKind{})}, - {Fn: DeepCopy_v1_GroupResource, InType: reflect.TypeOf(&GroupResource{})}, - {Fn: DeepCopy_v1_GroupVersion, InType: reflect.TypeOf(&GroupVersion{})}, - {Fn: DeepCopy_v1_GroupVersionForDiscovery, InType: reflect.TypeOf(&GroupVersionForDiscovery{})}, - {Fn: DeepCopy_v1_GroupVersionKind, InType: reflect.TypeOf(&GroupVersionKind{})}, - {Fn: DeepCopy_v1_GroupVersionResource, InType: reflect.TypeOf(&GroupVersionResource{})}, - {Fn: DeepCopy_v1_Initializer, InType: reflect.TypeOf(&Initializer{})}, - {Fn: DeepCopy_v1_Initializers, InType: reflect.TypeOf(&Initializers{})}, - {Fn: DeepCopy_v1_InternalEvent, InType: reflect.TypeOf(&InternalEvent{})}, - {Fn: DeepCopy_v1_LabelSelector, InType: reflect.TypeOf(&LabelSelector{})}, - {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{})}, - {Fn: DeepCopy_v1_Preconditions, InType: reflect.TypeOf(&Preconditions{})}, - {Fn: DeepCopy_v1_RootPaths, InType: reflect.TypeOf(&RootPaths{})}, - {Fn: DeepCopy_v1_ServerAddressByClientCIDR, InType: reflect.TypeOf(&ServerAddressByClientCIDR{})}, - {Fn: DeepCopy_v1_Status, InType: reflect.TypeOf(&Status{})}, - {Fn: DeepCopy_v1_StatusCause, InType: reflect.TypeOf(&StatusCause{})}, - {Fn: DeepCopy_v1_StatusDetails, InType: reflect.TypeOf(&StatusDetails{})}, - {Fn: DeepCopy_v1_Time, InType: reflect.TypeOf(&Time{})}, - {Fn: DeepCopy_v1_Timestamp, InType: reflect.TypeOf(&Timestamp{})}, - {Fn: DeepCopy_v1_TypeMeta, InType: reflect.TypeOf(&TypeMeta{})}, - {Fn: DeepCopy_v1_WatchEvent, InType: reflect.TypeOf(&WatchEvent{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*APIGroup).DeepCopyInto(out.(*APIGroup)) + return nil + }, InType: reflect.TypeOf(&APIGroup{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*APIGroupList).DeepCopyInto(out.(*APIGroupList)) + return nil + }, InType: reflect.TypeOf(&APIGroupList{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*APIResource).DeepCopyInto(out.(*APIResource)) + return nil + }, InType: reflect.TypeOf(&APIResource{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*APIResourceList).DeepCopyInto(out.(*APIResourceList)) + return nil + }, InType: reflect.TypeOf(&APIResourceList{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*APIVersions).DeepCopyInto(out.(*APIVersions)) + return nil + }, InType: reflect.TypeOf(&APIVersions{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DeleteOptions).DeepCopyInto(out.(*DeleteOptions)) + return nil + }, InType: reflect.TypeOf(&DeleteOptions{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Duration).DeepCopyInto(out.(*Duration)) + return nil + }, InType: reflect.TypeOf(&Duration{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ExportOptions).DeepCopyInto(out.(*ExportOptions)) + return nil + }, InType: reflect.TypeOf(&ExportOptions{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GetOptions).DeepCopyInto(out.(*GetOptions)) + return nil + }, InType: reflect.TypeOf(&GetOptions{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GroupKind).DeepCopyInto(out.(*GroupKind)) + return nil + }, InType: reflect.TypeOf(&GroupKind{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GroupResource).DeepCopyInto(out.(*GroupResource)) + return nil + }, InType: reflect.TypeOf(&GroupResource{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GroupVersion).DeepCopyInto(out.(*GroupVersion)) + return nil + }, InType: reflect.TypeOf(&GroupVersion{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GroupVersionForDiscovery).DeepCopyInto(out.(*GroupVersionForDiscovery)) + return nil + }, InType: reflect.TypeOf(&GroupVersionForDiscovery{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GroupVersionKind).DeepCopyInto(out.(*GroupVersionKind)) + return nil + }, InType: reflect.TypeOf(&GroupVersionKind{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GroupVersionResource).DeepCopyInto(out.(*GroupVersionResource)) + return nil + }, InType: reflect.TypeOf(&GroupVersionResource{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Initializer).DeepCopyInto(out.(*Initializer)) + return nil + }, InType: reflect.TypeOf(&Initializer{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Initializers).DeepCopyInto(out.(*Initializers)) + return nil + }, InType: reflect.TypeOf(&Initializers{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*InternalEvent).DeepCopyInto(out.(*InternalEvent)) + return nil + }, InType: reflect.TypeOf(&InternalEvent{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LabelSelector).DeepCopyInto(out.(*LabelSelector)) + return nil + }, InType: reflect.TypeOf(&LabelSelector{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LabelSelectorRequirement).DeepCopyInto(out.(*LabelSelectorRequirement)) + return nil + }, InType: reflect.TypeOf(&LabelSelectorRequirement{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ListMeta).DeepCopyInto(out.(*ListMeta)) + return nil + }, InType: reflect.TypeOf(&ListMeta{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ListOptions).DeepCopyInto(out.(*ListOptions)) + return nil + }, InType: reflect.TypeOf(&ListOptions{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*MicroTime).DeepCopyInto(out.(*MicroTime)) + return nil + }, InType: reflect.TypeOf(&MicroTime{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ObjectMeta).DeepCopyInto(out.(*ObjectMeta)) + return nil + }, InType: reflect.TypeOf(&ObjectMeta{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*OwnerReference).DeepCopyInto(out.(*OwnerReference)) + return nil + }, InType: reflect.TypeOf(&OwnerReference{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Patch).DeepCopyInto(out.(*Patch)) + return nil + }, InType: reflect.TypeOf(&Patch{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Preconditions).DeepCopyInto(out.(*Preconditions)) + return nil + }, InType: reflect.TypeOf(&Preconditions{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*RootPaths).DeepCopyInto(out.(*RootPaths)) + return nil + }, InType: reflect.TypeOf(&RootPaths{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServerAddressByClientCIDR).DeepCopyInto(out.(*ServerAddressByClientCIDR)) + return nil + }, InType: reflect.TypeOf(&ServerAddressByClientCIDR{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Status).DeepCopyInto(out.(*Status)) + return nil + }, InType: reflect.TypeOf(&Status{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*StatusCause).DeepCopyInto(out.(*StatusCause)) + return nil + }, InType: reflect.TypeOf(&StatusCause{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*StatusDetails).DeepCopyInto(out.(*StatusDetails)) + return nil + }, InType: reflect.TypeOf(&StatusDetails{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Time).DeepCopyInto(out.(*Time)) + return nil + }, InType: reflect.TypeOf(&Time{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Timestamp).DeepCopyInto(out.(*Timestamp)) + return nil + }, InType: reflect.TypeOf(&Timestamp{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*WatchEvent).DeepCopyInto(out.(*WatchEvent)) + return nil + }, InType: reflect.TypeOf(&WatchEvent{})}, } } -// DeepCopy_v1_APIGroup is an autogenerated deepcopy function. -func DeepCopy_v1_APIGroup(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*APIGroup) - out := out.(*APIGroup) - *out = *in - if in.Versions != nil { - in, out := &in.Versions, &out.Versions - *out = make([]GroupVersionForDiscovery, len(*in)) - copy(*out, *in) - } - if in.ServerAddressByClientCIDRs != nil { - in, out := &in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs - *out = make([]ServerAddressByClientCIDR, len(*in)) - copy(*out, *in) - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIGroup) DeepCopyInto(out *APIGroup) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Versions != nil { + in, out := &in.Versions, &out.Versions + *out = make([]GroupVersionForDiscovery, len(*in)) + copy(*out, *in) + } + out.PreferredVersion = in.PreferredVersion + if in.ServerAddressByClientCIDRs != nil { + in, out := &in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs + *out = make([]ServerAddressByClientCIDR, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new APIGroup. +func (x *APIGroup) DeepCopy() *APIGroup { + if x == nil { + return nil + } + out := new(APIGroup) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *APIGroup) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_v1_APIGroupList is an autogenerated deepcopy function. -func DeepCopy_v1_APIGroupList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*APIGroupList) - out := out.(*APIGroupList) - *out = *in - if in.Groups != nil { - in, out := &in.Groups, &out.Groups - *out = make([]APIGroup, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*APIGroup) - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIGroupList) DeepCopyInto(out *APIGroupList) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Groups != nil { + in, out := &in.Groups, &out.Groups + *out = make([]APIGroup, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new APIGroupList. +func (x *APIGroupList) DeepCopy() *APIGroupList { + if x == nil { + return nil + } + out := new(APIGroupList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *APIGroupList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_v1_APIResource is an autogenerated deepcopy function. -func DeepCopy_v1_APIResource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*APIResource) - out := out.(*APIResource) - *out = *in - if in.Verbs != nil { - in, out := &in.Verbs, &out.Verbs - *out = make(Verbs, len(*in)) - copy(*out, *in) - } - if in.ShortNames != nil { - in, out := &in.ShortNames, &out.ShortNames - *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) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIResource) DeepCopyInto(out *APIResource) { + *out = *in + if in.Verbs != nil { + in, out := &in.Verbs, &out.Verbs + *out = make(Verbs, len(*in)) + copy(*out, *in) + } + if in.ShortNames != nil { + in, out := &in.ShortNames, &out.ShortNames + *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 +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new APIResource. +func (x *APIResource) DeepCopy() *APIResource { + if x == nil { + return nil + } + out := new(APIResource) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIResourceList) DeepCopyInto(out *APIResourceList) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.APIResources != nil { + in, out := &in.APIResources, &out.APIResources + *out = make([]APIResource, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new APIResourceList. +func (x *APIResourceList) DeepCopy() *APIResourceList { + if x == nil { + return nil + } + out := new(APIResourceList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *APIResourceList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_v1_APIResourceList is an autogenerated deepcopy function. -func DeepCopy_v1_APIResourceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*APIResourceList) - out := out.(*APIResourceList) - *out = *in - if in.APIResources != nil { - in, out := &in.APIResources, &out.APIResources - *out = make([]APIResource, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*APIResource) - } - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIVersions) DeepCopyInto(out *APIVersions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Versions != nil { + in, out := &in.Versions, &out.Versions + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ServerAddressByClientCIDRs != nil { + in, out := &in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs + *out = make([]ServerAddressByClientCIDR, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new APIVersions. +func (x *APIVersions) DeepCopy() *APIVersions { + if x == nil { + return nil + } + out := new(APIVersions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *APIVersions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_v1_APIVersions is an autogenerated deepcopy function. -func DeepCopy_v1_APIVersions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*APIVersions) - out := out.(*APIVersions) - *out = *in - if in.Versions != nil { - in, out := &in.Versions, &out.Versions - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.ServerAddressByClientCIDRs != nil { - in, out := &in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs - *out = make([]ServerAddressByClientCIDR, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_DeleteOptions is an autogenerated deepcopy function. -func DeepCopy_v1_DeleteOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeleteOptions) - out := out.(*DeleteOptions) - *out = *in - if in.GracePeriodSeconds != nil { - in, out := &in.GracePeriodSeconds, &out.GracePeriodSeconds +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeleteOptions) DeepCopyInto(out *DeleteOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.GracePeriodSeconds != nil { + in, out := &in.GracePeriodSeconds, &out.GracePeriodSeconds + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } - if in.Preconditions != nil { - in, out := &in.Preconditions, &out.Preconditions - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*Preconditions) - } + } + if in.Preconditions != nil { + in, out := &in.Preconditions, &out.Preconditions + if *in == nil { + *out = nil + } else { + *out = new(Preconditions) + (*in).DeepCopyInto(*out) } - if in.OrphanDependents != nil { - in, out := &in.OrphanDependents, &out.OrphanDependents + } + if in.OrphanDependents != nil { + in, out := &in.OrphanDependents, &out.OrphanDependents + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - if in.PropagationPolicy != nil { - in, out := &in.PropagationPolicy, &out.PropagationPolicy + } + if in.PropagationPolicy != nil { + in, out := &in.PropagationPolicy, &out.PropagationPolicy + if *in == nil { + *out = nil + } else { *out = new(DeletionPropagation) **out = **in } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new DeleteOptions. +func (x *DeleteOptions) DeepCopy() *DeleteOptions { + if x == nil { + return nil + } + out := new(DeleteOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *DeleteOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_v1_Duration is an autogenerated deepcopy function. -func DeepCopy_v1_Duration(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Duration) - out := out.(*Duration) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Duration) DeepCopyInto(out *Duration) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Duration. +func (x *Duration) DeepCopy() *Duration { + if x == nil { + return nil + } + out := new(Duration) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExportOptions) DeepCopyInto(out *ExportOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ExportOptions. +func (x *ExportOptions) DeepCopy() *ExportOptions { + if x == nil { + return nil + } + out := new(ExportOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ExportOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_v1_ExportOptions is an autogenerated deepcopy function. -func DeepCopy_v1_ExportOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ExportOptions) - out := out.(*ExportOptions) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GetOptions) DeepCopyInto(out *GetOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GetOptions. +func (x *GetOptions) DeepCopy() *GetOptions { + if x == nil { + return nil + } + out := new(GetOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *GetOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_v1_GetOptions is an autogenerated deepcopy function. -func DeepCopy_v1_GetOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GetOptions) - out := out.(*GetOptions) - *out = *in - return nil - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupKind) DeepCopyInto(out *GroupKind) { + *out = *in + return } -// DeepCopy_v1_GroupKind is an autogenerated deepcopy function. -func DeepCopy_v1_GroupKind(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GroupKind) - out := out.(*GroupKind) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GroupKind. +func (x *GroupKind) DeepCopy() *GroupKind { + if x == nil { return nil } + out := new(GroupKind) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_GroupResource is an autogenerated deepcopy function. -func DeepCopy_v1_GroupResource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GroupResource) - out := out.(*GroupResource) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupResource) DeepCopyInto(out *GroupResource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GroupResource. +func (x *GroupResource) DeepCopy() *GroupResource { + if x == nil { return nil } + out := new(GroupResource) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_GroupVersion is an autogenerated deepcopy function. -func DeepCopy_v1_GroupVersion(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GroupVersion) - out := out.(*GroupVersion) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupVersion) DeepCopyInto(out *GroupVersion) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GroupVersion. +func (x *GroupVersion) DeepCopy() *GroupVersion { + if x == nil { return nil } + out := new(GroupVersion) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_GroupVersionForDiscovery is an autogenerated deepcopy function. -func DeepCopy_v1_GroupVersionForDiscovery(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GroupVersionForDiscovery) - out := out.(*GroupVersionForDiscovery) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupVersionForDiscovery) DeepCopyInto(out *GroupVersionForDiscovery) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GroupVersionForDiscovery. +func (x *GroupVersionForDiscovery) DeepCopy() *GroupVersionForDiscovery { + if x == nil { return nil } + out := new(GroupVersionForDiscovery) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_GroupVersionKind is an autogenerated deepcopy function. -func DeepCopy_v1_GroupVersionKind(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GroupVersionKind) - out := out.(*GroupVersionKind) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupVersionKind) DeepCopyInto(out *GroupVersionKind) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GroupVersionKind. +func (x *GroupVersionKind) DeepCopy() *GroupVersionKind { + if x == nil { return nil } + out := new(GroupVersionKind) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_GroupVersionResource is an autogenerated deepcopy function. -func DeepCopy_v1_GroupVersionResource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GroupVersionResource) - out := out.(*GroupVersionResource) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupVersionResource) DeepCopyInto(out *GroupVersionResource) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new GroupVersionResource. +func (x *GroupVersionResource) DeepCopy() *GroupVersionResource { + if x == nil { return nil } + out := new(GroupVersionResource) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_Initializer is an autogenerated deepcopy function. -func DeepCopy_v1_Initializer(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Initializer) - out := out.(*Initializer) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Initializer) DeepCopyInto(out *Initializer) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Initializer. +func (x *Initializer) DeepCopy() *Initializer { + if x == nil { return nil } + out := new(Initializer) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_Initializers is an autogenerated deepcopy function. -func DeepCopy_v1_Initializers(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Initializers) - out := out.(*Initializers) - *out = *in - if in.Pending != nil { - in, out := &in.Pending, &out.Pending - *out = make([]Initializer, len(*in)) - copy(*out, *in) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Initializers) DeepCopyInto(out *Initializers) { + *out = *in + if in.Pending != nil { + in, out := &in.Pending, &out.Pending + *out = make([]Initializer, len(*in)) + copy(*out, *in) + } + if in.Result != nil { + in, out := &in.Result, &out.Result + if *in == nil { + *out = nil + } else { + *out = new(Status) + (*in).DeepCopyInto(*out) } - if in.Result != nil { - in, out := &in.Result, &out.Result - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*Status) - } - } - return nil } + return } -// DeepCopy_v1_InternalEvent is an autogenerated deepcopy function. -func DeepCopy_v1_InternalEvent(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*InternalEvent) - out := out.(*InternalEvent) - *out = *in - // in.Object is kind 'Interface' - if in.Object != nil { - if newVal, err := c.DeepCopy(&in.Object); err != nil { - return err - } else { - out.Object = *newVal.(*runtime.Object) - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Initializers. +func (x *Initializers) DeepCopy() *Initializers { + if x == nil { return nil } + out := new(Initializers) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_LabelSelector is an autogenerated deepcopy function. -func DeepCopy_v1_LabelSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LabelSelector) - out := out.(*LabelSelector) - *out = *in - if in.MatchLabels != nil { - in, out := &in.MatchLabels, &out.MatchLabels - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.MatchExpressions != nil { - in, out := &in.MatchExpressions, &out.MatchExpressions - *out = make([]LabelSelectorRequirement, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*LabelSelectorRequirement) - } - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InternalEvent) DeepCopyInto(out *InternalEvent) { + *out = *in + if in.Object == nil { + out.Object = nil + } else { + out.Object = in.Object.DeepCopyObject() + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new InternalEvent. +func (x *InternalEvent) DeepCopy() *InternalEvent { + if x == nil { return nil } + out := new(InternalEvent) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_LabelSelectorRequirement is an autogenerated deepcopy function. -func DeepCopy_v1_LabelSelectorRequirement(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LabelSelectorRequirement) - out := out.(*LabelSelectorRequirement) - *out = *in - if in.Values != nil { - in, out := &in.Values, &out.Values - *out = make([]string, len(*in)) - copy(*out, *in) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LabelSelector) DeepCopyInto(out *LabelSelector) { + *out = *in + if in.MatchLabels != nil { + in, out := &in.MatchLabels, &out.MatchLabels + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val } - return nil } + if in.MatchExpressions != nil { + in, out := &in.MatchExpressions, &out.MatchExpressions + *out = make([]LabelSelectorRequirement, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return } -// DeepCopy_v1_ListMeta is an autogenerated deepcopy function. -func DeepCopy_v1_ListMeta(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ListMeta) - out := out.(*ListMeta) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LabelSelector. +func (x *LabelSelector) DeepCopy() *LabelSelector { + if x == nil { return nil } + out := new(LabelSelector) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_ListOptions is an autogenerated deepcopy function. -func DeepCopy_v1_ListOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ListOptions) - out := out.(*ListOptions) - *out = *in - if in.TimeoutSeconds != nil { - in, out := &in.TimeoutSeconds, &out.TimeoutSeconds +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LabelSelectorRequirement) DeepCopyInto(out *LabelSelectorRequirement) { + *out = *in + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LabelSelectorRequirement. +func (x *LabelSelectorRequirement) DeepCopy() *LabelSelectorRequirement { + if x == nil { + return nil + } + out := new(LabelSelectorRequirement) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ListMeta) DeepCopyInto(out *ListMeta) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ListMeta. +func (x *ListMeta) DeepCopy() *ListMeta { + if x == nil { + return nil + } + out := new(ListMeta) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ListOptions) DeepCopyInto(out *ListOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.TimeoutSeconds != nil { + in, out := &in.TimeoutSeconds, &out.TimeoutSeconds + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ListOptions. +func (x *ListOptions) DeepCopy() *ListOptions { + if x == nil { + return nil + } + out := new(ListOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *ListOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } -// 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 - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MicroTime) DeepCopyInto(out *MicroTime) { + *out = in.DeepCopy() + return } -// DeepCopy_v1_ObjectMeta is an autogenerated deepcopy function. -func DeepCopy_v1_ObjectMeta(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectMeta) - out := out.(*ObjectMeta) - *out = *in - out.CreationTimestamp = in.CreationTimestamp.DeepCopy() - if in.DeletionTimestamp != nil { - in, out := &in.DeletionTimestamp, &out.DeletionTimestamp +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectMeta) DeepCopyInto(out *ObjectMeta) { + *out = *in + in.CreationTimestamp.DeepCopyInto(&out.CreationTimestamp) + if in.DeletionTimestamp != nil { + in, out := &in.DeletionTimestamp, &out.DeletionTimestamp + if *in == nil { + *out = nil + } else { *out = new(Time) - **out = (*in).DeepCopy() + (*in).DeepCopyInto(*out) } - if in.DeletionGracePeriodSeconds != nil { - in, out := &in.DeletionGracePeriodSeconds, &out.DeletionGracePeriodSeconds + } + if in.DeletionGracePeriodSeconds != nil { + in, out := &in.DeletionGracePeriodSeconds, &out.DeletionGracePeriodSeconds + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.Annotations != nil { - in, out := &in.Annotations, &out.Annotations - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.OwnerReferences != nil { - in, out := &in.OwnerReferences, &out.OwnerReferences - *out = make([]OwnerReference, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*OwnerReference) - } - } - } - if in.Initializers != nil { - in, out := &in.Initializers, &out.Initializers - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*Initializers) - } - } - if in.Finalizers != nil { - in, out := &in.Finalizers, &out.Finalizers - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.OwnerReferences != nil { + in, out := &in.OwnerReferences, &out.OwnerReferences + *out = make([]OwnerReference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Initializers != nil { + in, out := &in.Initializers, &out.Initializers + if *in == nil { + *out = nil + } else { + *out = new(Initializers) + (*in).DeepCopyInto(*out) + } + } + if in.Finalizers != nil { + in, out := &in.Finalizers, &out.Finalizers + *out = make([]string, len(*in)) + copy(*out, *in) + } + return } -// DeepCopy_v1_OwnerReference is an autogenerated deepcopy function. -func DeepCopy_v1_OwnerReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*OwnerReference) - out := out.(*OwnerReference) - *out = *in - if in.Controller != nil { - in, out := &in.Controller, &out.Controller +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ObjectMeta. +func (x *ObjectMeta) DeepCopy() *ObjectMeta { + if x == nil { + return nil + } + out := new(ObjectMeta) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OwnerReference) DeepCopyInto(out *OwnerReference) { + *out = *in + if in.Controller != nil { + in, out := &in.Controller, &out.Controller + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - if in.BlockOwnerDeletion != nil { - in, out := &in.BlockOwnerDeletion, &out.BlockOwnerDeletion + } + if in.BlockOwnerDeletion != nil { + in, out := &in.BlockOwnerDeletion, &out.BlockOwnerDeletion + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - return nil } + return } -// DeepCopy_v1_Patch is an autogenerated deepcopy function. -func DeepCopy_v1_Patch(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Patch) - out := out.(*Patch) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new OwnerReference. +func (x *OwnerReference) DeepCopy() *OwnerReference { + if x == nil { return nil } + out := new(OwnerReference) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_Preconditions is an autogenerated deepcopy function. -func DeepCopy_v1_Preconditions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Preconditions) - out := out.(*Preconditions) - *out = *in - if in.UID != nil { - in, out := &in.UID, &out.UID +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Patch) DeepCopyInto(out *Patch) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Patch. +func (x *Patch) DeepCopy() *Patch { + if x == nil { + return nil + } + out := new(Patch) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Preconditions) DeepCopyInto(out *Preconditions) { + *out = *in + if in.UID != nil { + in, out := &in.UID, &out.UID + if *in == nil { + *out = nil + } else { *out = new(types.UID) **out = **in } - return nil } + return } -// DeepCopy_v1_RootPaths is an autogenerated deepcopy function. -func DeepCopy_v1_RootPaths(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RootPaths) - out := out.(*RootPaths) - *out = *in - if in.Paths != nil { - in, out := &in.Paths, &out.Paths - *out = make([]string, len(*in)) - copy(*out, *in) - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Preconditions. +func (x *Preconditions) DeepCopy() *Preconditions { + if x == nil { return nil } + out := new(Preconditions) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_ServerAddressByClientCIDR is an autogenerated deepcopy function. -func DeepCopy_v1_ServerAddressByClientCIDR(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServerAddressByClientCIDR) - out := out.(*ServerAddressByClientCIDR) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RootPaths) DeepCopyInto(out *RootPaths) { + *out = *in + if in.Paths != nil { + in, out := &in.Paths, &out.Paths + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new RootPaths. +func (x *RootPaths) DeepCopy() *RootPaths { + if x == nil { return nil } + out := new(RootPaths) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_Status is an autogenerated deepcopy function. -func DeepCopy_v1_Status(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Status) - out := out.(*Status) - *out = *in - if in.Details != nil { - in, out := &in.Details, &out.Details - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*StatusDetails) - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerAddressByClientCIDR) DeepCopyInto(out *ServerAddressByClientCIDR) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ServerAddressByClientCIDR. +func (x *ServerAddressByClientCIDR) DeepCopy() *ServerAddressByClientCIDR { + if x == nil { return nil } + out := new(ServerAddressByClientCIDR) + x.DeepCopyInto(out) + return out } -// DeepCopy_v1_StatusCause is an autogenerated deepcopy function. -func DeepCopy_v1_StatusCause(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*StatusCause) - out := out.(*StatusCause) - *out = *in - return nil - } -} - -// DeepCopy_v1_StatusDetails is an autogenerated deepcopy function. -func DeepCopy_v1_StatusDetails(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*StatusDetails) - out := out.(*StatusDetails) - *out = *in - if in.Causes != nil { - in, out := &in.Causes, &out.Causes - *out = make([]StatusCause, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_Time is an autogenerated deepcopy function. -func DeepCopy_v1_Time(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Time) - out := out.(*Time) - *out = in.DeepCopy() - return nil - } -} - -// DeepCopy_v1_Timestamp is an autogenerated deepcopy function. -func DeepCopy_v1_Timestamp(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Timestamp) - out := out.(*Timestamp) - *out = *in - return nil - } -} - -// DeepCopy_v1_TypeMeta is an autogenerated deepcopy function. -func DeepCopy_v1_TypeMeta(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*TypeMeta) - out := out.(*TypeMeta) - *out = *in - return nil - } -} - -// DeepCopy_v1_WatchEvent is an autogenerated deepcopy function. -func DeepCopy_v1_WatchEvent(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*WatchEvent) - out := out.(*WatchEvent) - *out = *in - if newVal, err := c.DeepCopy(&in.Object); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Status) DeepCopyInto(out *Status) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Details != nil { + in, out := &in.Details, &out.Details + if *in == nil { + *out = nil } else { - out.Object = *newVal.(*runtime.RawExtension) + *out = new(StatusDetails) + (*in).DeepCopyInto(*out) } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Status. +func (x *Status) DeepCopy() *Status { + if x == nil { + return nil + } + out := new(Status) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Status) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StatusCause) DeepCopyInto(out *StatusCause) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new StatusCause. +func (x *StatusCause) DeepCopy() *StatusCause { + if x == nil { + return nil + } + out := new(StatusCause) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StatusDetails) DeepCopyInto(out *StatusDetails) { + *out = *in + if in.Causes != nil { + in, out := &in.Causes, &out.Causes + *out = make([]StatusCause, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new StatusDetails. +func (x *StatusDetails) DeepCopy() *StatusDetails { + if x == nil { + return nil + } + out := new(StatusDetails) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Time. +func (x *Time) DeepCopy() *Time { + if x == nil { + return nil + } + out := new(Time) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Timestamp) DeepCopyInto(out *Timestamp) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Timestamp. +func (x *Timestamp) DeepCopy() *Timestamp { + if x == nil { + return nil + } + out := new(Timestamp) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WatchEvent) DeepCopyInto(out *WatchEvent) { + *out = *in + in.Object.DeepCopyInto(&out.Object) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new WatchEvent. +func (x *WatchEvent) DeepCopy() *WatchEvent { + if x == nil { + return nil + } + out := new(WatchEvent) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *WatchEvent) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/deepcopy.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/deepcopy.go new file mode 100644 index 000000000..ab6d04854 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/deepcopy.go @@ -0,0 +1,61 @@ +/* +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 + +func (in *TableRow) DeepCopy() *TableRow { + if in == nil { + return nil + } + + out := new(TableRow) + + if in.Cells != nil { + out.Cells = make([]interface{}, len(in.Cells)) + for i := range in.Cells { + out.Cells[i] = deepCopyJSON(in.Cells[i]) + } + } + + if in.Conditions != nil { + out.Conditions = make([]TableRowCondition, len(in.Conditions)) + for i := range in.Conditions { + in.Conditions[i].DeepCopyInto(&out.Conditions[i]) + } + } + + in.Object.DeepCopyInto(&out.Object) + return out +} + +func deepCopyJSON(x interface{}) interface{} { + switch x := x.(type) { + case map[string]interface{}: + clone := make(map[string]interface{}, len(x)) + for k, v := range x { + clone[k] = deepCopyJSON(v) + } + return clone + case []interface{}: + clone := make([]interface{}, len(x)) + for i := range x { + clone[i] = deepCopyJSON(x[i]) + } + return clone + default: + return x + } +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto index 06833dbd9..f3aedd801 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto @@ -31,6 +31,7 @@ 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. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object message PartialObjectMetadata { // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata @@ -39,12 +40,14 @@ message PartialObjectMetadata { } // PartialObjectMetadataList contains a list of objects containing only their metadata +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object message PartialObjectMetadataList { // items contains each of the included items. repeated PartialObjectMetadata items = 1; } // TableOptions are used when a Table is requested by the caller. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object 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 diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types.go index ef9921806..9c3c2a35e 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types.go @@ -28,6 +28,7 @@ import ( // 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 +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type Table struct { v1.TypeMeta `json:",inline"` // Standard list metadata. @@ -129,6 +130,7 @@ const ( ) // TableOptions are used when a Table is requested by the caller. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type TableOptions struct { v1.TypeMeta `json:",inline"` // includeObject decides whether to include each object along with its columnar information. @@ -140,6 +142,7 @@ type TableOptions struct { // 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. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type PartialObjectMetadata struct { v1.TypeMeta `json:",inline"` // Standard object's metadata. @@ -149,6 +152,7 @@ type PartialObjectMetadata struct { } // PartialObjectMetadataList contains a list of objects containing only their metadata +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type PartialObjectMetadataList struct { v1.TypeMeta `json:",inline"` 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 index ef8a117df..be63e7fec 100644 --- 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 @@ -21,144 +21,210 @@ limitations under the License. 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. +// Deprecated: 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{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PartialObjectMetadata).DeepCopyInto(out.(*PartialObjectMetadata)) + return nil + }, InType: reflect.TypeOf(&PartialObjectMetadata{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PartialObjectMetadataList).DeepCopyInto(out.(*PartialObjectMetadataList)) + return nil + }, InType: reflect.TypeOf(&PartialObjectMetadataList{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Table).DeepCopyInto(out.(*Table)) + return nil + }, InType: reflect.TypeOf(&Table{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*TableColumnDefinition).DeepCopyInto(out.(*TableColumnDefinition)) + return nil + }, InType: reflect.TypeOf(&TableColumnDefinition{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*TableOptions).DeepCopyInto(out.(*TableOptions)) + return nil + }, InType: reflect.TypeOf(&TableOptions{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*TableRow).DeepCopyInto(out.(*TableRow)) + return nil + }, InType: reflect.TypeOf(&TableRow{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*TableRowCondition).DeepCopyInto(out.(*TableRowCondition)) + return nil + }, 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) - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PartialObjectMetadata) DeepCopyInto(out *PartialObjectMetadata) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PartialObjectMetadata. +func (x *PartialObjectMetadata) DeepCopy() *PartialObjectMetadata { + if x == nil { + return nil + } + out := new(PartialObjectMetadata) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PartialObjectMetadata) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { 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) - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PartialObjectMetadataList) DeepCopyInto(out *PartialObjectMetadataList) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]*PartialObjectMetadata, len(*in)) + for i := range *in { + if (*in)[i] == nil { + (*out)[i] = nil + } else { + (*out)[i] = new(PartialObjectMetadata) + (*in)[i].DeepCopyInto((*out)[i]) } } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new PartialObjectMetadataList. +func (x *PartialObjectMetadataList) DeepCopy() *PartialObjectMetadataList { + if x == nil { + return nil + } + out := new(PartialObjectMetadataList) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *PartialObjectMetadataList) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { 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) - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Table) DeepCopyInto(out *Table) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + 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 { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Table. +func (x *Table) DeepCopy() *Table { + if x == nil { + return nil + } + out := new(Table) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Table) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { 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 +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableColumnDefinition) DeepCopyInto(out *TableColumnDefinition) { + *out = *in + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new TableColumnDefinition. +func (x *TableColumnDefinition) DeepCopy() *TableColumnDefinition { + if x == nil { + return nil + } + out := new(TableColumnDefinition) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableOptions) DeepCopyInto(out *TableOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new TableOptions. +func (x *TableOptions) DeepCopy() *TableOptions { + if x == nil { + return nil + } + out := new(TableOptions) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *TableOptions) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { 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 - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableRow) DeepCopyInto(out *TableRow) { + clone := in.DeepCopy() + *out = *clone + return } -// 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 - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableRowCondition) DeepCopyInto(out *TableRowCondition) { + *out = *in + return } -// 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 +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new TableRowCondition. +func (x *TableRowCondition) DeepCopy() *TableRowCondition { + if x == nil { return nil } + out := new(TableRowCondition) + x.DeepCopyInto(out) + return out } diff --git a/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/converter.go b/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/converter.go index cf84a6198..e7021f1b9 100644 --- a/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/converter.go +++ b/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/converter.go @@ -39,7 +39,7 @@ import ( // Converter is an interface for converting between interface{} // and map[string]interface representation. type Converter interface { - ToUnstructured(obj interface{}, u *map[string]interface{}) error + ToUnstructured(obj interface{}) (map[string]interface{}, error) FromUnstructured(u map[string]interface{}, obj interface{}) error } @@ -388,12 +388,13 @@ func interfaceFromUnstructured(sv, dv reflect.Value) error { return nil } -func (c *converterImpl) ToUnstructured(obj interface{}, u *map[string]interface{}) error { +func (c *converterImpl) ToUnstructured(obj interface{}) (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) + return nil, fmt.Errorf("ToUnstructured requires a non-nil pointer to an object, got %v", t) } + u := &map[string]interface{}{} err := toUnstructured(value.Elem(), reflect.ValueOf(u).Elem()) if c.mismatchDetection { newUnstr := &map[string]interface{}{} @@ -405,7 +406,10 @@ func (c *converterImpl) ToUnstructured(obj interface{}, u *map[string]interface{ glog.Fatalf("ToUnstructured mismatch for %#v, diff: %v", u, diff.ObjectReflectDiff(u, newUnstr)) } } - return err + if err != nil { + return nil, err + } + return *u, nil } func toUnstructuredViaJSON(obj interface{}, u *map[string]interface{}) error { @@ -416,6 +420,12 @@ func toUnstructuredViaJSON(obj interface{}, u *map[string]interface{}) error { return json.Unmarshal(data, u) } +var ( + nullBytes = []byte("null") + trueBytes = []byte("true") + falseBytes = []byte("false") +) + func toUnstructured(sv, dv reflect.Value) error { st, dt := sv.Type(), dv.Type() @@ -431,33 +441,58 @@ func toUnstructured(sv, dv reflect.Value) error { if err != nil { return err } - if bytes.Equal(data, []byte("null")) { + switch { + case len(data) == 0: + return fmt.Errorf("error decoding from json: empty value") + + case bytes.Equal(data, nullBytes): // 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)) + + case bytes.Equal(data, trueBytes): + dv.Set(reflect.ValueOf(true)) + + case bytes.Equal(data, falseBytes): + dv.Set(reflect.ValueOf(false)) + + case data[0] == '"': + var result string + err := json.Unmarshal(data, &result) + if err != nil { + return fmt.Errorf("error decoding string from json: %v", err) + } + dv.Set(reflect.ValueOf(result)) + + case data[0] == '{': + result := make(map[string]interface{}) + err := json.Unmarshal(data, &result) + if err != nil { + return fmt.Errorf("error decoding object from json: %v", err) + } + dv.Set(reflect.ValueOf(result)) + + case data[0] == '[': + result := make([]interface{}, 0) + err := json.Unmarshal(data, &result) + if err != nil { + return fmt.Errorf("error decoding array from json: %v", err) + } + dv.Set(reflect.ValueOf(result)) + + default: + var ( + resultInt int64 + resultFloat float64 + err error + ) + if err = json.Unmarshal(data, &resultInt); err == nil { + dv.Set(reflect.ValueOf(resultInt)) + } else if err = json.Unmarshal(data, &resultFloat); err == nil { + dv.Set(reflect.ValueOf(resultFloat)) + } else { + return fmt.Errorf("error decoding number from json: %v", err) } } + return nil } diff --git a/vendor/k8s.io/apimachinery/pkg/fields/selector.go b/vendor/k8s.io/apimachinery/pkg/fields/selector.go index 1305dde08..273e9a2c1 100644 --- a/vendor/k8s.io/apimachinery/pkg/fields/selector.go +++ b/vendor/k8s.io/apimachinery/pkg/fields/selector.go @@ -50,6 +50,9 @@ type Selector interface { // String returns a human readable string that represents this selector. String() string + + // Make a deep copy of the selector. + DeepCopySelector() Selector } // Everything returns a selector that matches all fields. @@ -99,6 +102,15 @@ func (t *hasTerm) String() string { return fmt.Sprintf("%v=%v", t.field, EscapeValue(t.value)) } +func (t *hasTerm) DeepCopySelector() Selector { + if t == nil { + return nil + } + out := new(hasTerm) + *out = *t + return out +} + type notHasTerm struct { field, value string } @@ -138,6 +150,15 @@ func (t *notHasTerm) String() string { return fmt.Sprintf("%v!=%v", t.field, EscapeValue(t.value)) } +func (t *notHasTerm) DeepCopySelector() Selector { + if t == nil { + return nil + } + out := new(notHasTerm) + *out = *t + return out +} + type andTerm []Selector func (t andTerm) Matches(ls Fields) bool { @@ -207,6 +228,17 @@ func (t andTerm) String() string { return strings.Join(terms, ",") } +func (t andTerm) DeepCopySelector() Selector { + if t == nil { + return nil + } + out := make([]Selector, len(t)) + for i := range t { + out[i] = t[i].DeepCopySelector() + } + return andTerm(out) +} + // SelectorFromSet returns a Selector which will match exactly the given Set. A // nil Set is considered equivalent to Everything(). func SelectorFromSet(ls Set) Selector { diff --git a/vendor/k8s.io/apimachinery/pkg/labels/selector.go b/vendor/k8s.io/apimachinery/pkg/labels/selector.go index 50b41f99d..ac123033a 100644 --- a/vendor/k8s.io/apimachinery/pkg/labels/selector.go +++ b/vendor/k8s.io/apimachinery/pkg/labels/selector.go @@ -51,6 +51,9 @@ type Selector interface { // If there are querying parameters, it will return converted requirements and selectable=true. // If this selector doesn't want to select anything, it will return selectable=false. Requirements() (requirements Requirements, selectable bool) + + // Make a deep copy of the selector. + DeepCopySelector() Selector } // Everything returns a selector that matches all labels. @@ -65,6 +68,7 @@ func (n nothingSelector) Empty() bool { return false } func (n nothingSelector) String() string { return "" } func (n nothingSelector) Add(_ ...Requirement) Selector { return n } func (n nothingSelector) Requirements() (Requirements, bool) { return nil, false } +func (n nothingSelector) DeepCopySelector() Selector { return n } // Nothing returns a selector that matches no labels func Nothing() Selector { @@ -78,6 +82,21 @@ func NewSelector() Selector { type internalSelector []Requirement +func (s internalSelector) DeepCopy() internalSelector { + if s == nil { + return nil + } + result := make([]Requirement, len(s)) + for i := range s { + s[i].DeepCopyInto(&result[i]) + } + return result +} + +func (s internalSelector) DeepCopySelector() Selector { + return s.DeepCopy() +} + // ByKey sorts requirements by key to obtain deterministic parser type ByKey []Requirement @@ -91,6 +110,7 @@ func (a ByKey) Less(i, j int) bool { return a[i].key < a[j].key } // The zero value of Requirement is invalid. // Requirement implements both set based match and exact match // Requirement should be initialized via NewRequirement constructor for creating a valid Requirement. +// +k8s:deepcopy-gen=true type Requirement struct { key string operator selection.Operator diff --git a/vendor/k8s.io/apimachinery/pkg/labels/zz_generated.deepcopy.go b/vendor/k8s.io/apimachinery/pkg/labels/zz_generated.deepcopy.go new file mode 100644 index 000000000..3c91fb98e --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/labels/zz_generated.deepcopy.go @@ -0,0 +1,57 @@ +// +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 labels + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + reflect "reflect" +) + +// Deprecated: GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. +func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { + return []conversion.GeneratedDeepCopyFunc{ + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Requirement).DeepCopyInto(out.(*Requirement)) + return nil + }, InType: reflect.TypeOf(&Requirement{})}, + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Requirement) DeepCopyInto(out *Requirement) { + *out = *in + if in.strValues != nil { + in, out := &in.strValues, &out.strValues + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Requirement. +func (x *Requirement) DeepCopy() *Requirement { + if x == nil { + return nil + } + out := new(Requirement) + x.DeepCopyInto(out) + return out +} diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/embedded.go b/vendor/k8s.io/apimachinery/pkg/runtime/embedded.go index e8825a787..2cdac9e14 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/embedded.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/embedded.go @@ -30,6 +30,12 @@ type encodable struct { } func (e encodable) GetObjectKind() schema.ObjectKind { return e.obj.GetObjectKind() } +func (e encodable) DeepCopyObject() Object { + var out encodable = e + out.obj = e.obj.DeepCopyObject() + copy(out.versions, e.versions) + return out +} // NewEncodable creates an object that will be encoded with the provided codec on demand. // Provided as a convenience for test cases dealing with internal objects. diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/generated.proto b/vendor/k8s.io/apimachinery/pkg/runtime/generated.proto index 57fc84078..b3fd09c3c 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/generated.proto +++ b/vendor/k8s.io/apimachinery/pkg/runtime/generated.proto @@ -89,7 +89,7 @@ message RawExtension { // TypeMeta is provided here for convenience. You may use it directly from this package or define // your own with the same fields. // -// +k8s:deepcopy-gen=true +// +k8s:deepcopy-gen=false // +protobuf=true // +k8s:openapi-gen=true message TypeMeta { @@ -107,6 +107,7 @@ message TypeMeta { // metadata and field mutatation. // // +k8s:deepcopy-gen=true +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // +protobuf=true // +k8s:openapi-gen=true message Unknown { diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/interfaces.go b/vendor/k8s.io/apimachinery/pkg/runtime/interfaces.go index fcb18ba11..db4c2807e 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/interfaces.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/interfaces.go @@ -234,6 +234,7 @@ type SelfLinker interface { // to return a no-op ObjectKindAccessor in cases where it is not expected to be serialized. type Object interface { GetObjectKind() schema.ObjectKind + DeepCopyObject() Object } // Unstructured objects store values as map[string]interface{}, with only values that can be serialized @@ -242,10 +243,14 @@ type Unstructured interface { // IsUnstructuredObject is a marker interface to allow objects that can be serialized but not introspected // to bypass conversion. IsUnstructuredObject() - // IsList returns true if this type is a list or matches the list convention - has an array called "items". - IsList() bool // UnstructuredContent returns a non-nil, mutable map of the contents of this object. Values may be // []interface{}, map[string]interface{}, or any primitive type. Contents are typically serialized to // and from JSON. UnstructuredContent() map[string]interface{} + // IsList returns true if this type is a list or matches the list convention - has an array called "items". + IsList() bool + // EachListItem should pass a single item out of the list as an Object to the provided function. Any + // error should terminate the iteration. If IsList() returns false, this method should return an error + // instead of calling the provided function. + EachListItem(func(Object) error) error } diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/register.go b/vendor/k8s.io/apimachinery/pkg/runtime/register.go index 2ec6db820..eeb380c3d 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/register.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/register.go @@ -28,7 +28,7 @@ func (obj *TypeMeta) GroupVersionKind() schema.GroupVersionKind { return schema.FromAPIVersionAndKind(obj.APIVersion, obj.Kind) } -func (obj *Unknown) GetObjectKind() schema.ObjectKind { return &obj.TypeMeta } +func (obj *TypeMeta) GetObjectKind() schema.ObjectKind { return obj } // GetObjectKind implements Object for VersionedObjects, returning an empty ObjectKind // interface if no objects are provided, or the ObjectKind interface of the object in the diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning/versioning.go b/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning/versioning.go index 829d4fa89..74ad84dd9 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning/versioning.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning/versioning.go @@ -213,7 +213,7 @@ func (c *codec) Encode(obj runtime.Object, w io.Writer) error { } if e, ok := out.(runtime.NestedObjectEncoder); ok { - if err := e.EncodeNestedObjects(DirectEncoder{Encoder: c.encoder, ObjectTyper: c.typer}); err != nil { + if err := e.EncodeNestedObjects(DirectEncoder{Version: c.encodeVersion, Encoder: c.encoder, ObjectTyper: c.typer}); err != nil { return err } } diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/types.go b/vendor/k8s.io/apimachinery/pkg/runtime/types.go index f972c5e69..e4515d8ed 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/types.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/types.go @@ -30,7 +30,7 @@ package runtime // TypeMeta is provided here for convenience. You may use it directly from this package or define // your own with the same fields. // -// +k8s:deepcopy-gen=true +// +k8s:deepcopy-gen=false // +protobuf=true // +k8s:openapi-gen=true type TypeMeta struct { @@ -106,6 +106,7 @@ type RawExtension struct { // metadata and field mutatation. // // +k8s:deepcopy-gen=true +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // +protobuf=true // +k8s:openapi-gen=true type Unknown struct { @@ -124,6 +125,9 @@ type Unknown struct { // VersionedObjects is used by Decoders to give callers a way to access all versions // of an object during the decoding process. +// +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +k8s:deepcopy-gen=true type VersionedObjects struct { // Objects is the set of objects retrieved during decoding, in order of conversion. // The 0 index is the object as serialized on the wire. If conversion has occurred, diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/zz_generated.deepcopy.go b/vendor/k8s.io/apimachinery/pkg/runtime/zz_generated.deepcopy.go index 54ce6ad59..f3aaf86f4 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/zz_generated.deepcopy.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/zz_generated.deepcopy.go @@ -25,59 +25,113 @@ import ( reflect "reflect" ) -// GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. +// Deprecated: GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { return []conversion.GeneratedDeepCopyFunc{ - {Fn: DeepCopy_runtime_RawExtension, InType: reflect.TypeOf(&RawExtension{})}, - {Fn: DeepCopy_runtime_TypeMeta, InType: reflect.TypeOf(&TypeMeta{})}, - {Fn: DeepCopy_runtime_Unknown, InType: reflect.TypeOf(&Unknown{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*RawExtension).DeepCopyInto(out.(*RawExtension)) + return nil + }, InType: reflect.TypeOf(&RawExtension{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Unknown).DeepCopyInto(out.(*Unknown)) + return nil + }, InType: reflect.TypeOf(&Unknown{})}, + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VersionedObjects).DeepCopyInto(out.(*VersionedObjects)) + return nil + }, InType: reflect.TypeOf(&VersionedObjects{})}, } } -// DeepCopy_runtime_RawExtension is an autogenerated deepcopy function. -func DeepCopy_runtime_RawExtension(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RawExtension) - out := out.(*RawExtension) - *out = *in - if in.Raw != nil { - in, out := &in.Raw, &out.Raw - *out = make([]byte, len(*in)) - copy(*out, *in) - } - // in.Object is kind 'Interface' - if in.Object != nil { - if newVal, err := c.DeepCopy(&in.Object); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RawExtension) DeepCopyInto(out *RawExtension) { + *out = *in + if in.Raw != nil { + in, out := &in.Raw, &out.Raw + *out = make([]byte, len(*in)) + copy(*out, *in) + } + if in.Object == nil { + out.Object = nil + } else { + out.Object = in.Object.DeepCopyObject() + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new RawExtension. +func (x *RawExtension) DeepCopy() *RawExtension { + if x == nil { + return nil + } + out := new(RawExtension) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Unknown) DeepCopyInto(out *Unknown) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Raw != nil { + in, out := &in.Raw, &out.Raw + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Unknown. +func (x *Unknown) DeepCopy() *Unknown { + if x == nil { + return nil + } + out := new(Unknown) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new Object. +func (x *Unknown) DeepCopyObject() Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VersionedObjects) DeepCopyInto(out *VersionedObjects) { + *out = *in + if in.Objects != nil { + in, out := &in.Objects, &out.Objects + *out = make([]Object, len(*in)) + for i := range *in { + if (*in)[i] == nil { + (*out)[i] = nil } else { - out.Object = *newVal.(*Object) + (*out)[i] = (*in)[i].DeepCopyObject() } } - return nil } + return } -// DeepCopy_runtime_TypeMeta is an autogenerated deepcopy function. -func DeepCopy_runtime_TypeMeta(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*TypeMeta) - out := out.(*TypeMeta) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new VersionedObjects. +func (x *VersionedObjects) DeepCopy() *VersionedObjects { + if x == nil { return nil } + out := new(VersionedObjects) + x.DeepCopyInto(out) + return out } -// DeepCopy_runtime_Unknown is an autogenerated deepcopy function. -func DeepCopy_runtime_Unknown(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Unknown) - out := out.(*Unknown) - *out = *in - if in.Raw != nil { - in, out := &in.Raw, &out.Raw - *out = make([]byte, len(*in)) - copy(*out, *in) - } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new Object. +func (x *VersionedObjects) DeepCopyObject() Object { + if c := x.DeepCopy(); c != nil { + return c + } else { return nil } } diff --git a/vendor/k8s.io/apimachinery/pkg/types/unix_user_id.go b/vendor/k8s.io/apimachinery/pkg/types/unix_user_id.go deleted file mode 100644 index dc770c11e..000000000 --- a/vendor/k8s.io/apimachinery/pkg/types/unix_user_id.go +++ /dev/null @@ -1,23 +0,0 @@ -/* -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 types - -// int64 is used as a safe bet against wrap-around (uid's are general -// int32) and to support uid_t -1, and -2. - -type UnixUserID int64 -type UnixGroupID int64 diff --git a/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go b/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go index bdea0e16c..26e7eb208 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go +++ b/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go @@ -21,7 +21,7 @@ import ( "fmt" ) -// MessagesgCountMap contains occurance for each error message. +// MessageCountMap contains occurance for each error message. type MessageCountMap map[string]int // Aggregate represents an object that contains multiple errors, but does not diff --git a/vendor/k8s.io/apimachinery/pkg/util/httpstream/spdy/roundtripper.go b/vendor/k8s.io/apimachinery/pkg/util/httpstream/spdy/roundtripper.go index ad300e28b..12bef075d 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/httpstream/spdy/roundtripper.go +++ b/vendor/k8s.io/apimachinery/pkg/util/httpstream/spdy/roundtripper.go @@ -158,15 +158,16 @@ func (s *SpdyRoundTripper) dial(req *http.Request) (net.Conn, error) { return nil, err } - if s.tlsConfig == nil { - s.tlsConfig = &tls.Config{} + tlsConfig := s.tlsConfig + switch { + case tlsConfig == nil: + tlsConfig = &tls.Config{ServerName: host} + case len(tlsConfig.ServerName) == 0: + tlsConfig = tlsConfig.Clone() + tlsConfig.ServerName = host } - if len(s.tlsConfig.ServerName) == 0 { - s.tlsConfig.ServerName = host - } - - tlsConn := tls.Client(rwc, s.tlsConfig) + tlsConn := tls.Client(rwc, tlsConfig) // need to manually call Handshake() so we can call VerifyHostname() below if err := tlsConn.Handshake(); err != nil { @@ -174,11 +175,11 @@ func (s *SpdyRoundTripper) dial(req *http.Request) (net.Conn, error) { } // Return if we were configured to skip validation - if s.tlsConfig != nil && s.tlsConfig.InsecureSkipVerify { + if tlsConfig.InsecureSkipVerify { return tlsConn, nil } - if err := tlsConn.VerifyHostname(host); err != nil { + if err := tlsConn.VerifyHostname(tlsConfig.ServerName); err != nil { return nil, err } @@ -218,6 +219,9 @@ func (s *SpdyRoundTripper) dialWithoutProxy(url *url.URL) (net.Conn, error) { if err != nil { return nil, err } + if s.tlsConfig != nil && len(s.tlsConfig.ServerName) > 0 { + host = s.tlsConfig.ServerName + } err = conn.VerifyHostname(host) if err != nil { return nil, err diff --git a/vendor/k8s.io/apimachinery/pkg/util/json/json.go b/vendor/k8s.io/apimachinery/pkg/util/json/json.go index e8054a12e..10c8cb837 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/json/json.go +++ b/vendor/k8s.io/apimachinery/pkg/util/json/json.go @@ -50,6 +50,18 @@ func Unmarshal(data []byte, v interface{}) error { // If the decode succeeds, post-process the map to convert json.Number objects to int64 or float64 return convertMapNumbers(*v) + case *[]interface{}: + // Build a decoder from the given data + decoder := json.NewDecoder(bytes.NewBuffer(data)) + // Preserve numbers, rather than casting to float64 automatically + decoder.UseNumber() + // Run the decode + if err := decoder.Decode(v); err != nil { + return err + } + // If the decode succeeds, post-process the map to convert json.Number objects to int64 or float64 + return convertSliceNumbers(*v) + default: return json.Unmarshal(data, v) } diff --git a/vendor/k8s.io/apimachinery/pkg/util/net/interface.go b/vendor/k8s.io/apimachinery/pkg/util/net/interface.go index a1e53d2e4..42816bd70 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/net/interface.go +++ b/vendor/k8s.io/apimachinery/pkg/util/net/interface.go @@ -29,18 +29,47 @@ import ( "github.com/golang/glog" ) +type AddressFamily uint + +const ( + familyIPv4 AddressFamily = 4 + familyIPv6 AddressFamily = 6 +) + +const ( + ipv4RouteFile = "/proc/net/route" + ipv6RouteFile = "/proc/net/ipv6_route" +) + type Route struct { Interface string Destination net.IP Gateway net.IP - // TODO: add more fields here if needed + Family AddressFamily } -func getRoutes(input io.Reader) ([]Route, error) { - routes := []Route{} - if input == nil { - return nil, fmt.Errorf("input is nil") +type RouteFile struct { + name string + parse func(input io.Reader) ([]Route, error) +} + +var ( + v4File = RouteFile{name: ipv4RouteFile, parse: getIPv4DefaultRoutes} + v6File = RouteFile{name: ipv6RouteFile, parse: getIPv6DefaultRoutes} +) + +func (rf RouteFile) extract() ([]Route, error) { + file, err := os.Open(rf.name) + if err != nil { + return nil, err } + defer file.Close() + return rf.parse(file) +} + +// getIPv4DefaultRoutes obtains the IPv4 routes, and filters out non-default routes. +func getIPv4DefaultRoutes(input io.Reader) ([]Route, error) { + routes := []Route{} scanner := bufio.NewReader(input) for { line, err := scanner.ReadString('\n') @@ -52,24 +81,71 @@ func getRoutes(input io.Reader) ([]Route, error) { continue } fields := strings.Fields(line) - routes = append(routes, Route{}) - route := &routes[len(routes)-1] - route.Interface = fields[0] - ip, err := parseIP(fields[1]) + // Interested in fields: + // 0 - interface name + // 1 - destination address + // 2 - gateway + dest, err := parseIP(fields[1], familyIPv4) if err != nil { return nil, err } - route.Destination = ip - ip, err = parseIP(fields[2]) + gw, err := parseIP(fields[2], familyIPv4) if err != nil { return nil, err } - route.Gateway = ip + if !dest.Equal(net.IPv4zero) { + continue + } + routes = append(routes, Route{ + Interface: fields[0], + Destination: dest, + Gateway: gw, + Family: familyIPv4, + }) } return routes, nil } -func parseIP(str string) (net.IP, error) { +func getIPv6DefaultRoutes(input io.Reader) ([]Route, error) { + routes := []Route{} + scanner := bufio.NewReader(input) + for { + line, err := scanner.ReadString('\n') + if err == io.EOF { + break + } + fields := strings.Fields(line) + // Interested in fields: + // 0 - destination address + // 4 - gateway + // 9 - interface name + dest, err := parseIP(fields[0], familyIPv6) + if err != nil { + return nil, err + } + gw, err := parseIP(fields[4], familyIPv6) + if err != nil { + return nil, err + } + if !dest.Equal(net.IPv6zero) { + continue + } + if gw.Equal(net.IPv6zero) { + continue // loopback + } + routes = append(routes, Route{ + Interface: fields[9], + Destination: dest, + Gateway: gw, + Family: familyIPv6, + }) + } + return routes, nil +} + +// parseIP takes the hex IP address string from route file and converts it +// to a net.IP address. For IPv4, the value must be converted to big endian. +func parseIP(str string, family AddressFamily) (net.IP, error) { if str == "" { return nil, fmt.Errorf("input is nil") } @@ -77,11 +153,16 @@ func parseIP(str string) (net.IP, error) { if err != nil { return nil, err } - //TODO add ipv6 support - if len(bytes) != net.IPv4len { - return nil, fmt.Errorf("only IPv4 is supported") + if family == familyIPv4 { + if len(bytes) != net.IPv4len { + return nil, fmt.Errorf("invalid IPv4 address in route") + } + return net.IP([]byte{bytes[3], bytes[2], bytes[1], bytes[0]}), nil + } + // Must be IPv6 + if len(bytes) != net.IPv6len { + return nil, fmt.Errorf("invalid IPv6 address in route") } - bytes[0], bytes[1], bytes[2], bytes[3] = bytes[3], bytes[2], bytes[1], bytes[0] return net.IP(bytes), nil } @@ -96,10 +177,13 @@ func isInterfaceUp(intf *net.Interface) bool { return false } -//getFinalIP method receives all the IP addrs of a Interface -//and returns a nil if the address is Loopback, Ipv6, link-local or nil. -//It returns a valid IPv4 if an Ipv4 address is found in the array. -func getFinalIP(addrs []net.Addr) (net.IP, error) { +func isLoopbackOrPointToPoint(intf *net.Interface) bool { + return intf.Flags&(net.FlagLoopback|net.FlagPointToPoint) != 0 +} + +// getMatchingGlobalIP returns the first valid global unicast address of the given +// 'family' from the list of 'addrs'. +func getMatchingGlobalIP(addrs []net.Addr, family AddressFamily) (net.IP, error) { if len(addrs) > 0 { for i := range addrs { glog.V(4).Infof("Checking addr %s.", addrs[i].String()) @@ -107,17 +191,15 @@ func getFinalIP(addrs []net.Addr) (net.IP, error) { if err != nil { return nil, err } - //Only IPv4 - //TODO : add IPv6 support - if ip.To4() != nil { - if !ip.IsLoopback() && !ip.IsLinkLocalMulticast() && !ip.IsLinkLocalUnicast() { + if memberOf(ip, family) { + if ip.IsGlobalUnicast() { glog.V(4).Infof("IP found %v", ip) return ip, nil } else { - glog.V(4).Infof("Loopback/link-local found %v", ip) + glog.V(4).Infof("Non-global unicast address found %v", ip) } } else { - glog.V(4).Infof("%v is not a valid IPv4 address", ip) + glog.V(4).Infof("%v is not an IPv%d address", ip, int(family)) } } @@ -125,7 +207,9 @@ func getFinalIP(addrs []net.Addr) (net.IP, error) { return nil, nil } -func getIPFromInterface(intfName string, nw networkInterfacer) (net.IP, error) { +// getIPFromInterface gets the IPs on an interface and returns a global unicast address, if any. The +// interface must be up, the IP must in the family requested, and the IP must be a global unicast address. +func getIPFromInterface(intfName string, forFamily AddressFamily, nw networkInterfacer) (net.IP, error) { intf, err := nw.InterfaceByName(intfName) if err != nil { return nil, err @@ -136,131 +220,161 @@ func getIPFromInterface(intfName string, nw networkInterfacer) (net.IP, error) { return nil, err } glog.V(4).Infof("Interface %q has %d addresses :%v.", intfName, len(addrs), addrs) - finalIP, err := getFinalIP(addrs) + matchingIP, err := getMatchingGlobalIP(addrs, forFamily) if err != nil { return nil, err } - if finalIP != nil { - glog.V(4).Infof("valid IPv4 address for interface %q found as %v.", intfName, finalIP) - return finalIP, nil + if matchingIP != nil { + glog.V(4).Infof("Found valid IPv%d address %v for interface %q.", int(forFamily), matchingIP, intfName) + return matchingIP, nil } } - return nil, nil } -func flagsSet(flags net.Flags, test net.Flags) bool { - return flags&test != 0 +// memberOF tells if the IP is of the desired family. Used for checking interface addresses. +func memberOf(ip net.IP, family AddressFamily) bool { + if ip.To4() != nil { + return family == familyIPv4 + } else { + return family == familyIPv6 + } } -func flagsClear(flags net.Flags, test net.Flags) bool { - return flags&test == 0 -} - -func chooseHostInterfaceNativeGo() (net.IP, error) { - intfs, err := net.Interfaces() +// chooseIPFromHostInterfaces looks at all system interfaces, trying to find one that is up that +// has a global unicast address (non-loopback, non-link local, non-point2point), and returns the IP. +// Searches for IPv4 addresses, and then IPv6 addresses. +func chooseIPFromHostInterfaces(nw networkInterfacer) (net.IP, error) { + intfs, err := nw.Interfaces() if err != nil { return nil, err } - i := 0 - var ip net.IP - for i = range intfs { - if flagsSet(intfs[i].Flags, net.FlagUp) && flagsClear(intfs[i].Flags, net.FlagLoopback|net.FlagPointToPoint) { - addrs, err := intfs[i].Addrs() + if len(intfs) == 0 { + return nil, fmt.Errorf("no interfaces found on host.") + } + for _, family := range []AddressFamily{familyIPv4, familyIPv6} { + glog.V(4).Infof("Looking for system interface with a global IPv%d address", uint(family)) + for _, intf := range intfs { + if !isInterfaceUp(&intf) { + glog.V(4).Infof("Skipping: down interface %q", intf.Name) + continue + } + if isLoopbackOrPointToPoint(&intf) { + glog.V(4).Infof("Skipping: LB or P2P interface %q", intf.Name) + continue + } + addrs, err := nw.Addrs(&intf) if err != nil { return nil, err } - if len(addrs) > 0 { - for _, addr := range addrs { - if addrIP, _, err := net.ParseCIDR(addr.String()); err == nil { - if addrIP.To4() != nil { - ip = addrIP.To4() - if !ip.IsLinkLocalMulticast() && !ip.IsLinkLocalUnicast() { - break - } - } - } + if len(addrs) == 0 { + glog.V(4).Infof("Skipping: no addresses on interface %q", intf.Name) + continue + } + for _, addr := range addrs { + ip, _, err := net.ParseCIDR(addr.String()) + if err != nil { + return nil, fmt.Errorf("Unable to parse CIDR for interface %q: %s", intf.Name, err) } - if ip != nil { - // This interface should suffice. - break + if !memberOf(ip, family) { + glog.V(4).Infof("Skipping: no address family match for %q on interface %q.", ip, intf.Name) + continue } + // TODO: Decide if should open up to allow IPv6 LLAs in future. + if !ip.IsGlobalUnicast() { + glog.V(4).Infof("Skipping: non-global address %q on interface %q.", ip, intf.Name) + continue + } + glog.V(4).Infof("Found global unicast address %q on interface %q.", ip, intf.Name) + return ip, nil } } } - if ip == nil { - return nil, fmt.Errorf("no acceptable interface from host") - } - glog.V(4).Infof("Choosing interface %s (IP %v) as default", intfs[i].Name, ip) - return ip, nil + return nil, fmt.Errorf("no acceptable interface with global unicast address found on host") } -//ChooseHostInterface is a method used fetch an IP for a daemon. -//It uses data from /proc/net/route file. -//For a node with no internet connection ,it returns error -//For a multi n/w interface node it returns the IP of the interface with gateway on it. +// ChooseHostInterface is a method used fetch an IP for a daemon. +// If there is no routing info file, it will choose a global IP from the system +// interfaces. Otherwise, it will use IPv4 and IPv6 route information to return the +// IP of the interface with a gateway on it (with priority given to IPv4). For a node +// with no internet connection, it returns error. func ChooseHostInterface() (net.IP, error) { - inFile, err := os.Open("/proc/net/route") + var nw networkInterfacer = networkInterface{} + if _, err := os.Stat(ipv4RouteFile); os.IsNotExist(err) { + return chooseIPFromHostInterfaces(nw) + } + routes, err := getAllDefaultRoutes() if err != nil { - if os.IsNotExist(err) { - return chooseHostInterfaceNativeGo() - } return nil, err } - defer inFile.Close() - var nw networkInterfacer = networkInterface{} - return chooseHostInterfaceFromRoute(inFile, nw) + return chooseHostInterfaceFromRoute(routes, nw) } +// networkInterfacer defines an interface for several net library functions. Production +// code will forward to net library functions, and unit tests will override the methods +// for testing purposes. type networkInterfacer interface { InterfaceByName(intfName string) (*net.Interface, error) Addrs(intf *net.Interface) ([]net.Addr, error) + Interfaces() ([]net.Interface, error) } +// networkInterface implements the networkInterfacer interface for production code, just +// wrapping the underlying net library function calls. type networkInterface struct{} func (_ networkInterface) InterfaceByName(intfName string) (*net.Interface, error) { - intf, err := net.InterfaceByName(intfName) - if err != nil { - return nil, err - } - return intf, nil + return net.InterfaceByName(intfName) } func (_ networkInterface) Addrs(intf *net.Interface) ([]net.Addr, error) { - addrs, err := intf.Addrs() - if err != nil { - return nil, err - } - return addrs, nil + return intf.Addrs() } -func chooseHostInterfaceFromRoute(inFile io.Reader, nw networkInterfacer) (net.IP, error) { - routes, err := getRoutes(inFile) +func (_ networkInterface) Interfaces() ([]net.Interface, error) { + return net.Interfaces() +} + +// getAllDefaultRoutes obtains IPv4 and IPv6 default routes on the node. If unable +// to read the IPv4 routing info file, we return an error. If unable to read the IPv6 +// routing info file (which is optional), we'll just use the IPv4 route information. +// Using all the routing info, if no default routes are found, an error is returned. +func getAllDefaultRoutes() ([]Route, error) { + routes, err := v4File.extract() if err != nil { return nil, err } - zero := net.IP{0, 0, 0, 0} - var finalIP net.IP - for i := range routes { - //find interface with gateway - if routes[i].Destination.Equal(zero) { - glog.V(4).Infof("Default route transits interface %q", routes[i].Interface) - finalIP, err := getIPFromInterface(routes[i].Interface, nw) + v6Routes, _ := v6File.extract() + routes = append(routes, v6Routes...) + if len(routes) == 0 { + return nil, fmt.Errorf("No default routes.") + } + return routes, nil +} + +// chooseHostInterfaceFromRoute cycles through each default route provided, looking for a +// global IP address from the interface for the route. Will first look all each IPv4 route for +// an IPv4 IP, and then will look at each IPv6 route for an IPv6 IP. +func chooseHostInterfaceFromRoute(routes []Route, nw networkInterfacer) (net.IP, error) { + for _, family := range []AddressFamily{familyIPv4, familyIPv6} { + glog.V(4).Infof("Looking for default routes with IPv%d addresses", uint(family)) + for _, route := range routes { + if route.Family != family { + continue + } + glog.V(4).Infof("Default route transits interface %q", route.Interface) + finalIP, err := getIPFromInterface(route.Interface, family, nw) if err != nil { return nil, err } if finalIP != nil { - glog.V(4).Infof("Choosing IP %v ", finalIP) + glog.V(4).Infof("Found active IP %v ", finalIP) return finalIP, nil } } } - glog.V(4).Infof("No valid IP found") - if finalIP == nil { - return nil, fmt.Errorf("Unable to select an IP.") - } - return nil, nil + glog.V(4).Infof("No active IP found by looking at default routes") + return nil, fmt.Errorf("unable to select an IP from default routes.") } // If bind-address is usable, return it directly diff --git a/vendor/k8s.io/apimachinery/pkg/util/rand/rand.go b/vendor/k8s.io/apimachinery/pkg/util/rand/rand.go deleted file mode 100644 index db109c2cd..000000000 --- a/vendor/k8s.io/apimachinery/pkg/util/rand/rand.go +++ /dev/null @@ -1,85 +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 rand provides utilities related to randomization. -package rand - -import ( - "math/rand" - "sync" - "time" -) - -var rng = struct { - sync.Mutex - rand *rand.Rand -}{ - rand: rand.New(rand.NewSource(time.Now().UTC().UnixNano())), -} - -// Intn generates an integer in range [0,max). -// By design this should panic if input is invalid, <= 0. -func Intn(max int) int { - rng.Lock() - defer rng.Unlock() - return rng.rand.Intn(max) -} - -// IntnRange generates an integer in range [min,max). -// By design this should panic if input is invalid, <= 0. -func IntnRange(min, max int) int { - rng.Lock() - defer rng.Unlock() - return rng.rand.Intn(max-min) + min -} - -// IntnRange generates an int64 integer in range [min,max). -// By design this should panic if input is invalid, <= 0. -func Int63nRange(min, max int64) int64 { - rng.Lock() - defer rng.Unlock() - return rng.rand.Int63n(max-min) + min -} - -// Seed seeds the rng with the provided seed. -func Seed(seed int64) { - rng.Lock() - defer rng.Unlock() - - rng.rand = rand.New(rand.NewSource(seed)) -} - -// Perm returns, as a slice of n ints, a pseudo-random permutation of the integers [0,n) -// from the default Source. -func Perm(n int) []int { - rng.Lock() - defer rng.Unlock() - return rng.rand.Perm(n) -} - -// We omit vowels from the set of available characters to reduce the chances -// of "bad words" being formed. -var alphanums = []rune("bcdfghjklmnpqrstvwxz0123456789") - -// String generates a random alphanumeric string, without vowels, which is n -// characters long. This will panic if n is less than zero. -func String(length int) string { - b := make([]rune, length) - for i := range b { - b[i] = alphanums[Intn(len(alphanums))] - } - return string(b) -} diff --git a/vendor/k8s.io/apimachinery/pkg/util/validation/validation.go b/vendor/k8s.io/apimachinery/pkg/util/validation/validation.go index 1e5b85047..b1fcc5708 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/validation/validation.go +++ b/vendor/k8s.io/apimachinery/pkg/util/validation/validation.go @@ -22,8 +22,6 @@ import ( "net" "regexp" "strings" - - "k8s.io/apimachinery/pkg/types" ) const qnameCharFmt string = "[A-Za-z0-9]" @@ -200,7 +198,7 @@ const ( ) // IsValidGroupID tests that the argument is a valid Unix GID. -func IsValidGroupID(gid types.UnixGroupID) []string { +func IsValidGroupID(gid int64) []string { if minGroupID <= gid && gid <= maxGroupID { return nil } @@ -208,7 +206,7 @@ func IsValidGroupID(gid types.UnixGroupID) []string { } // IsValidUserID tests that the argument is a valid Unix UID. -func IsValidUserID(uid types.UnixUserID) []string { +func IsValidUserID(uid int64) []string { if minUserID <= uid && uid <= maxUserID { return nil } diff --git a/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go b/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go index badaa2159..0997de806 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go +++ b/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go @@ -17,8 +17,10 @@ limitations under the License. package wait import ( + "context" "errors" "math/rand" + "sync" "time" "k8s.io/apimachinery/pkg/util/runtime" @@ -36,6 +38,40 @@ var ForeverTestTimeout = time.Second * 30 // NeverStop may be passed to Until to make it never stop. var NeverStop <-chan struct{} = make(chan struct{}) +// Group allows to start a group of goroutines and wait for their completion. +type Group struct { + wg sync.WaitGroup +} + +func (g *Group) Wait() { + g.wg.Wait() +} + +// StartWithChannel starts f in a new goroutine in the group. +// stopCh is passed to f as an argument. f should stop when stopCh is available. +func (g *Group) StartWithChannel(stopCh <-chan struct{}, f func(stopCh <-chan struct{})) { + g.Start(func() { + f(stopCh) + }) +} + +// StartWithContext starts f in a new goroutine in the group. +// ctx is passed to f as an argument. f should stop when ctx.Done() is available. +func (g *Group) StartWithContext(ctx context.Context, f func(context.Context)) { + g.Start(func() { + f(ctx) + }) +} + +// Start starts f in a new goroutine in the group. +func (g *Group) Start(f func()) { + g.wg.Add(1) + go func() { + defer g.wg.Done() + f() + }() +} + // Forever calls f every period for ever. // // Forever is syntactic sugar on top of Until. diff --git a/vendor/k8s.io/apimachinery/pkg/watch/mux.go b/vendor/k8s.io/apimachinery/pkg/watch/mux.go index fafccd78e..a65088c1c 100644 --- a/vendor/k8s.io/apimachinery/pkg/watch/mux.go +++ b/vendor/k8s.io/apimachinery/pkg/watch/mux.go @@ -84,6 +84,13 @@ type functionFakeRuntimeObject func() func (obj functionFakeRuntimeObject) GetObjectKind() schema.ObjectKind { return schema.EmptyObjectKind } +func (obj functionFakeRuntimeObject) DeepCopyObject() runtime.Object { + if obj == nil { + return nil + } + // funcs are immutable. Hence, just return the original func. + return obj +} // Execute f, blocking the incoming queue (and waiting for it to drain first). // The purpose of this terrible hack is so that watchers added after an event diff --git a/vendor/k8s.io/apimachinery/pkg/watch/watch.go b/vendor/k8s.io/apimachinery/pkg/watch/watch.go index dd49c41f9..5c1380b23 100644 --- a/vendor/k8s.io/apimachinery/pkg/watch/watch.go +++ b/vendor/k8s.io/apimachinery/pkg/watch/watch.go @@ -20,9 +20,9 @@ import ( "fmt" "sync" - "k8s.io/apimachinery/pkg/runtime" - "github.com/golang/glog" + + "k8s.io/apimachinery/pkg/runtime" ) // Interface can be implemented by anything that knows how to watch and report changes. @@ -50,6 +50,7 @@ const ( ) // Event represents a single event to a watched resource. +// +k8s:deepcopy-gen=true type Event struct { Type EventType diff --git a/vendor/k8s.io/apimachinery/pkg/watch/zz_generated.deepcopy.go b/vendor/k8s.io/apimachinery/pkg/watch/zz_generated.deepcopy.go new file mode 100644 index 000000000..2a2592531 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/watch/zz_generated.deepcopy.go @@ -0,0 +1,57 @@ +// +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 watch + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + reflect "reflect" +) + +// Deprecated: GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. +func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { + return []conversion.GeneratedDeepCopyFunc{ + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Event).DeepCopyInto(out.(*Event)) + return nil + }, InType: reflect.TypeOf(&Event{})}, + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Event) DeepCopyInto(out *Event) { + *out = *in + if in.Object == nil { + out.Object = nil + } else { + out.Object = in.Object.DeepCopyObject() + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Event. +func (x *Event) DeepCopy() *Event { + if x == nil { + return nil + } + out := new(Event) + x.DeepCopyInto(out) + return out +} diff --git a/vendor/k8s.io/apiserver/pkg/util/wsstream/conn.go b/vendor/k8s.io/apiserver/pkg/util/wsstream/conn.go index f01638ad6..6f26b2275 100644 --- a/vendor/k8s.io/apiserver/pkg/util/wsstream/conn.go +++ b/vendor/k8s.io/apiserver/pkg/util/wsstream/conn.go @@ -87,7 +87,10 @@ var ( // IsWebSocketRequest returns true if the incoming request contains connection upgrade headers // for WebSockets. func IsWebSocketRequest(req *http.Request) bool { - return connectionUpgradeRegex.MatchString(strings.ToLower(req.Header.Get("Connection"))) && strings.ToLower(req.Header.Get("Upgrade")) == "websocket" + if !strings.EqualFold(req.Header.Get("Upgrade"), "websocket") { + return false + } + return connectionUpgradeRegex.MatchString(strings.ToLower(req.Header.Get("Connection"))) } // IgnoreReceives reads from a WebSocket until it is closed, then returns. If timeout is set, the diff --git a/vendor/k8s.io/client-go/README.md b/vendor/k8s.io/client-go/README.md index 48fe02fa8..15095cb83 100644 --- a/vendor/k8s.io/client-go/README.md +++ b/vendor/k8s.io/client-go/README.md @@ -2,7 +2,7 @@ Go clients for talking to a [kubernetes](http://kubernetes.io/) cluster. -We currently recommend using the v2.0.0 tag. See [INSTALL.md](/INSTALL.md) for +We currently recommend using the v3.0.0 tag. See [INSTALL.md](/INSTALL.md) for detailed installation instructions. `go get k8s.io/client-go/...` works, but will give you head and doesn't handle the dependencies well. @@ -80,20 +80,25 @@ We will backport bugfixes--but not new features--into older versions of #### Compatibility matrix -| | Kubernetes 1.3 | Kubernetes 1.4 | Kubernetes 1.5 | Kubernetes 1.6 | -|---------------------|----------------|----------------|----------------|----------------| -| client-go 1.4 | + | ✓ | - | - | -| client-go 1.5 | + | + | - | - | -| client-go 2.0 | + | + | ✓ | - | -| client-go 3.0 beta | + | + | + | ✓ | -| client-go HEAD | + | + | + | + | +| | Kubernetes 1.3 | Kubernetes 1.4 | Kubernetes 1.5 | Kubernetes 1.6 | Kubernetes 1.7 | +|---------------------|----------------|----------------|----------------|----------------|----------------| +| client-go 1.4 | + | ✓ | - | - | - | +| client-go 1.5 | + | + | - | - | - | +| client-go 2.0 | + | + | ✓ | - | - | +| client-go 3.0 | † | † | † | ✓ | - | +| client-go 4.0.beta.0| † | † | † | + | ✓ | +| client-go HEAD | † | † | † | + | + | Key: * `✓` Exactly the same features / API objects in both client-go and the Kubernetes version. * `+` client-go has features or api objects that may not be present in the - Kubernetes cluster, but everything they have in common will work. + Kubernetes cluster, but everything they have in common will work. Please + note that alpha APIs may vanish or change significantly in a single release. +* `†` client-go has new features or api objects, and some APIs running in the + cluster may have been deprecated and removed from client-go. But everything + they share in common (i.e., most APIs) will work. * `-` The Kubernetes cluster has features the client-go library can't use (additional API objects, etc). @@ -146,4 +151,4 @@ If your application depends on a package that client-go depends on, and you let * or run `godep save` in your application folder to flatten all dependencies. ### Contributing code -Please send pull requests against the client packages in the Kubernetes main [repository](https://github.com/kubernetes/kubernetes), and run the `/staging/copy.sh` script to update the staging area in the main repository. Changes in the staging area will be published to this repository every day. +Please send pull requests against the client packages in the Kubernetes main [repository](https://github.com/kubernetes/kubernetes). Changes in the staging area will be published to this repository every day. 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 deleted file mode 100644 index e1080a34a..000000000 --- a/vendor/k8s.io/client-go/pkg/api/annotation_key_constants.go +++ /dev/null @@ -1,113 +0,0 @@ -/* -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 should be consistent with pkg/api/v1/annotation_key_constants.go. - -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" - - // TolerationsAnnotationKey represents the key of tolerations data (json serialized) - // in the Annotations of a Pod. - TolerationsAnnotationKey string = "scheduler.alpha.kubernetes.io/tolerations" - - // TaintsAnnotationKey represents the key of taints data (json serialized) - // in the Annotations of a Node. - TaintsAnnotationKey string = "scheduler.alpha.kubernetes.io/taints" - - // SeccompPodAnnotationKey represents the key of a seccomp profile applied - // to all containers of a pod. - SeccompPodAnnotationKey string = "seccomp.security.alpha.kubernetes.io/pod" - - // SeccompContainerAnnotationKeyPrefix represents the key of a seccomp profile applied - // to one container of a pod. - SeccompContainerAnnotationKeyPrefix string = "container.seccomp.security.alpha.kubernetes.io/" - - // CreatedByAnnotation represents the key used to store the spec(json) - // used to create the resource. - CreatedByAnnotation = "kubernetes.io/created-by" - - // PreferAvoidPodsAnnotationKey represents the key of preferAvoidPods data (json serialized) - // in the Annotations of a Node. - PreferAvoidPodsAnnotationKey string = "scheduler.alpha.kubernetes.io/preferAvoidPods" - - // SysctlsPodAnnotationKey represents the key of sysctls which are set for the infrastructure - // container of a pod. The annotation value is a comma separated list of sysctl_name=value - // key-value pairs. Only a limited set of whitelisted and isolated sysctls is supported by - // the kubelet. Pods with other sysctls will fail to launch. - SysctlsPodAnnotationKey string = "security.alpha.kubernetes.io/sysctls" - - // UnsafeSysctlsPodAnnotationKey represents the key of sysctls which are set for the infrastructure - // container of a pod. The annotation value is a comma separated list of sysctl_name=value - // key-value pairs. Unsafe sysctls must be explicitly enabled for a kubelet. They are properly - // namespaced to a pod or a container, but their isolation is usually unclear or weak. Their use - // is at-your-own-risk. Pods that attempt to set an unsafe sysctl that is not enabled for a kubelet - // will fail to launch. - UnsafeSysctlsPodAnnotationKey string = "security.alpha.kubernetes.io/unsafe-sysctls" - - // ObjectTTLAnnotations represents a suggestion for kubelet for how long it can cache - // an object (e.g. secret, config map) before fetching it again from apiserver. - // This annotation can be attached to node. - ObjectTTLAnnotationKey string = "node.alpha.kubernetes.io/ttl" - - // AffinityAnnotationKey represents the key of affinity data (json serialized) - // in the Annotations of a Pod. - // TODO: remove when alpha support for affinity is removed - AffinityAnnotationKey string = "scheduler.alpha.kubernetes.io/affinity" - - // annotation key prefix used to identify non-convertible json paths. - NonConvertibleAnnotationPrefix = "non-convertible.kubernetes.io" - - kubectlPrefix = "kubectl.kubernetes.io/" - - // LastAppliedConfigAnnotation is the annotation used to store the previous - // configuration of a resource for use in a three way diff by UpdateApplyAnnotation. - LastAppliedConfigAnnotation = kubectlPrefix + "last-applied-configuration" - - // AnnotationLoadBalancerSourceRangesKey is the key of the annotation on a service to set allowed ingress ranges on their LoadBalancers - // - // It should be a comma-separated list of CIDRs, e.g. `0.0.0.0/0` to - // allow full access (the default) or `18.0.0.0/8,56.0.0.0/8` to allow - // access only from the CIDRs currently allocated to MIT & the USPS. - // - // Not all cloud providers support this annotation, though AWS & GCE do. - AnnotationLoadBalancerSourceRangesKey = "service.beta.kubernetes.io/load-balancer-source-ranges" - - // AnnotationValueExternalTrafficLocal Value of annotation to specify local endpoints behavior. - AnnotationValueExternalTrafficLocal = "OnlyLocal" - // AnnotationValueExternalTrafficGlobal Value of annotation to specify global (legacy) behavior. - AnnotationValueExternalTrafficGlobal = "Global" - - // TODO: The beta annotations have been deprecated, remove them when we release k8s 1.8. - - // BetaAnnotationHealthCheckNodePort Annotation specifying the healthcheck nodePort for the service. - // If not specified, annotation is created by the service api backend with the allocated nodePort. - // Will use user-specified nodePort value if specified by the client. - BetaAnnotationHealthCheckNodePort = "service.beta.kubernetes.io/healthcheck-nodeport" - - // BetaAnnotationExternalTraffic An annotation that denotes if this Service desires to route - // external traffic to local endpoints only. This preserves Source IP and avoids a second hop. - BetaAnnotationExternalTraffic = "service.beta.kubernetes.io/external-traffic" -) diff --git a/vendor/k8s.io/client-go/pkg/api/doc.go b/vendor/k8s.io/client-go/pkg/api/doc.go deleted file mode 100644 index a4262ab36..000000000 --- a/vendor/k8s.io/client-go/pkg/api/doc.go +++ /dev/null @@ -1,22 +0,0 @@ -/* -Copyright 2014 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 api contains the latest (or "internal") version of the -// Kubernetes API objects. This is the API objects as represented in memory. -// The contract presented to clients is located in the versioned packages, -// which are sub-directories. The first one is "v1". Those packages -// describe how a particular version is serialized to storage/network. -package api diff --git a/vendor/k8s.io/client-go/pkg/api/field_constants.go b/vendor/k8s.io/client-go/pkg/api/field_constants.go deleted file mode 100644 index 5ead0f13f..000000000 --- a/vendor/k8s.io/client-go/pkg/api/field_constants.go +++ /dev/null @@ -1,38 +0,0 @@ -/* -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 api - -// Field path constants that are specific to the internal API -// representation. -const ( - NodeUnschedulableField = "spec.unschedulable" - ObjectNameField = "metadata.name" - PodHostField = "spec.nodeName" - PodStatusField = "status.phase" - SecretTypeField = "type" - - EventReasonField = "reason" - EventSourceField = "source" - EventTypeField = "type" - EventInvolvedKindField = "involvedObject.kind" - EventInvolvedNamespaceField = "involvedObject.namespace" - EventInvolvedNameField = "involvedObject.name" - EventInvolvedUIDField = "involvedObject.uid" - EventInvolvedAPIVersionField = "involvedObject.apiVersion" - EventInvolvedResourceVersionField = "involvedObject.resourceVersion" - EventInvolvedFieldPathField = "involvedObject.fieldPath" -) diff --git a/vendor/k8s.io/client-go/pkg/api/json.go b/vendor/k8s.io/client-go/pkg/api/json.go deleted file mode 100644 index 3a6e04c18..000000000 --- a/vendor/k8s.io/client-go/pkg/api/json.go +++ /dev/null @@ -1,28 +0,0 @@ -/* -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 api - -import "encoding/json" - -// This file implements json marshaling/unmarshaling interfaces on objects that are currently marshaled into annotations -// to prevent anyone from marshaling these internal structs. - -var _ = json.Marshaler(&AvoidPods{}) -var _ = json.Unmarshaler(&AvoidPods{}) - -func (AvoidPods) MarshalJSON() ([]byte, error) { panic("do not marshal internal struct") } -func (*AvoidPods) UnmarshalJSON([]byte) error { panic("do not unmarshal to internal struct") } diff --git a/vendor/k8s.io/client-go/pkg/api/objectreference.go b/vendor/k8s.io/client-go/pkg/api/objectreference.go deleted file mode 100644 index b36ecab27..000000000 --- a/vendor/k8s.io/client-go/pkg/api/objectreference.go +++ /dev/null @@ -1,34 +0,0 @@ -/* -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. -*/ - -//TODO: consider making these methods functions, because we don't want helper -//functions in the k8s.io/api repo. - -package api - -import ( - "k8s.io/apimachinery/pkg/runtime/schema" -) - -func (obj *ObjectReference) SetGroupVersionKind(gvk schema.GroupVersionKind) { - obj.APIVersion, obj.Kind = gvk.ToAPIVersionAndKind() -} - -func (obj *ObjectReference) GroupVersionKind() schema.GroupVersionKind { - return schema.FromAPIVersionAndKind(obj.APIVersion, obj.Kind) -} - -func (obj *ObjectReference) GetObjectKind() schema.ObjectKind { return obj } diff --git a/vendor/k8s.io/client-go/pkg/api/register.go b/vendor/k8s.io/client-go/pkg/api/register.go deleted file mode 100644 index 5f261bdfb..000000000 --- a/vendor/k8s.io/client-go/pkg/api/register.go +++ /dev/null @@ -1,123 +0,0 @@ -/* -Copyright 2014 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 api - -import ( - "os" - - "k8s.io/apimachinery/pkg/apimachinery/announced" - "k8s.io/apimachinery/pkg/apimachinery/registered" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/apimachinery/pkg/runtime/serializer" -) - -// GroupFactoryRegistry is the APIGroupFactoryRegistry (overlaps a bit with Registry, see comments in package for details) -var GroupFactoryRegistry = make(announced.APIGroupFactoryRegistry) - -// Registry is an instance of an API registry. This is an interim step to start removing the idea of a global -// API registry. -var Registry = registered.NewOrDie(os.Getenv("KUBE_API_VERSIONS")) - -// Scheme is the default instance of runtime.Scheme to which types in the Kubernetes API are already registered. -// NOTE: If you are copying this file to start a new api group, STOP! Copy the -// extensions group instead. This Scheme is special and should appear ONLY in -// the api group, unless you really know what you're doing. -// TODO(lavalamp): make the above error impossible. -var Scheme = runtime.NewScheme() - -// Codecs provides access to encoding and decoding for the scheme -var Codecs = serializer.NewCodecFactory(Scheme) - -// GroupName is the group name use in this package -const GroupName = "" - -// SchemeGroupVersion is group version used to register these objects -var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} - -// ParameterCodec handles versioning of objects that are converted to query parameters. -var ParameterCodec = runtime.NewParameterCodec(Scheme) - -// 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 { - if err := scheme.AddIgnoredConversionType(&metav1.TypeMeta{}, &metav1.TypeMeta{}); err != nil { - return err - } - scheme.AddKnownTypes(SchemeGroupVersion, - &Pod{}, - &PodList{}, - &PodStatusResult{}, - &PodTemplate{}, - &PodTemplateList{}, - &ReplicationControllerList{}, - &ReplicationController{}, - &ServiceList{}, - &Service{}, - &ServiceProxyOptions{}, - &NodeList{}, - &Node{}, - &NodeProxyOptions{}, - &Endpoints{}, - &EndpointsList{}, - &Binding{}, - &Event{}, - &EventList{}, - &List{}, - &LimitRange{}, - &LimitRangeList{}, - &ResourceQuota{}, - &ResourceQuotaList{}, - &Namespace{}, - &NamespaceList{}, - &ServiceAccount{}, - &ServiceAccountList{}, - &Secret{}, - &SecretList{}, - &PersistentVolume{}, - &PersistentVolumeList{}, - &PersistentVolumeClaim{}, - &PersistentVolumeClaimList{}, - &PodAttachOptions{}, - &PodLogOptions{}, - &PodExecOptions{}, - &PodPortForwardOptions{}, - &PodProxyOptions{}, - &ComponentStatus{}, - &ComponentStatusList{}, - &SerializedReference{}, - &RangeAllocation{}, - &ConfigMap{}, - &ConfigMapList{}, - ) - - return nil -} diff --git a/vendor/k8s.io/client-go/pkg/api/resource.go b/vendor/k8s.io/client-go/pkg/api/resource.go deleted file mode 100644 index 27b7fd665..000000000 --- a/vendor/k8s.io/client-go/pkg/api/resource.go +++ /dev/null @@ -1,62 +0,0 @@ -/* -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 api - -import ( - "k8s.io/apimachinery/pkg/api/resource" -) - -func (self ResourceName) String() string { - return string(self) -} - -// Returns the CPU limit if specified. -func (self *ResourceList) Cpu() *resource.Quantity { - if val, ok := (*self)[ResourceCPU]; ok { - return &val - } - return &resource.Quantity{Format: resource.DecimalSI} -} - -// Returns the Memory limit if specified. -func (self *ResourceList) Memory() *resource.Quantity { - if val, ok := (*self)[ResourceMemory]; ok { - return &val - } - return &resource.Quantity{Format: resource.BinarySI} -} - -func (self *ResourceList) Pods() *resource.Quantity { - if val, ok := (*self)[ResourcePods]; ok { - return &val - } - return &resource.Quantity{} -} - -func (self *ResourceList) NvidiaGPU() *resource.Quantity { - if val, ok := (*self)[ResourceNvidiaGPU]; ok { - return &val - } - 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/taint.go b/vendor/k8s.io/client-go/pkg/api/taint.go deleted file mode 100644 index 173e4e601..000000000 --- a/vendor/k8s.io/client-go/pkg/api/taint.go +++ /dev/null @@ -1,36 +0,0 @@ -/* -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. -*/ - -//TODO: consider making these methods functions, because we don't want helper -//functions in the k8s.io/api repo. - -package api - -import "fmt" - -// MatchTaint checks if the taint matches taintToMatch. Taints are unique by key:effect, -// if the two taints have same key:effect, regard as they match. -func (t *Taint) MatchTaint(taintToMatch Taint) bool { - return t.Key == taintToMatch.Key && t.Effect == taintToMatch.Effect -} - -// taint.ToString() converts taint struct to string in format key=value:effect or key:effect. -func (t *Taint) ToString() string { - if len(t.Value) == 0 { - return fmt.Sprintf("%v:%v", t.Key, t.Effect) - } - return fmt.Sprintf("%v=%v:%v", t.Key, t.Value, t.Effect) -} diff --git a/vendor/k8s.io/client-go/pkg/api/toleration.go b/vendor/k8s.io/client-go/pkg/api/toleration.go deleted file mode 100644 index edb73b74e..000000000 --- a/vendor/k8s.io/client-go/pkg/api/toleration.go +++ /dev/null @@ -1,30 +0,0 @@ -/* -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. -*/ - -//TODO: consider making these methods functions, because we don't want helper -//functions in the k8s.io/api repo. - -package api - -// MatchToleration checks if the toleration matches tolerationToMatch. Tolerations are unique by , -// if the two tolerations have same combination, regard as they match. -// TODO: uniqueness check for tolerations in api validations. -func (t *Toleration) MatchToleration(tolerationToMatch *Toleration) bool { - return t.Key == tolerationToMatch.Key && - t.Effect == tolerationToMatch.Effect && - t.Operator == tolerationToMatch.Operator && - t.Value == tolerationToMatch.Value -} diff --git a/vendor/k8s.io/client-go/pkg/api/types.go b/vendor/k8s.io/client-go/pkg/api/types.go deleted file mode 100644 index 412d6d08c..000000000 --- a/vendor/k8s.io/client-go/pkg/api/types.go +++ /dev/null @@ -1,3989 +0,0 @@ -/* -Copyright 2014 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 api - -import ( - "k8s.io/apimachinery/pkg/api/resource" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/fields" - "k8s.io/apimachinery/pkg/labels" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/types" - "k8s.io/apimachinery/pkg/util/intstr" -) - -// Common string formats -// --------------------- -// Many fields in this API have formatting requirements. The commonly used -// formats are defined here. -// -// C_IDENTIFIER: This is a string that conforms to the definition of an "identifier" -// in the C language. This is captured by the following regex: -// [A-Za-z_][A-Za-z0-9_]* -// This defines the format, but not the length restriction, which should be -// specified at the definition of any field of this type. -// -// DNS_LABEL: This is a string, no more than 63 characters long, that conforms -// to the definition of a "label" in RFCs 1035 and 1123. This is captured -// by the following regex: -// [a-z0-9]([-a-z0-9]*[a-z0-9])? -// -// DNS_SUBDOMAIN: This is a string, no more than 253 characters long, that conforms -// to the definition of a "subdomain" in RFCs 1035 and 1123. This is captured -// by the following regex: -// [a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)* -// or more simply: -// DNS_LABEL(\.DNS_LABEL)* -// -// IANA_SVC_NAME: This is a string, no more than 15 characters long, that -// conforms to the definition of IANA service name in RFC 6335. -// It must contains at least one letter [a-z] and it must contains only [a-z0-9-]. -// Hypens ('-') cannot be leading or trailing character of the string -// and cannot be adjacent to other hyphens. - -// 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. -type ObjectMeta struct { - // Name is unique within a namespace. Name 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. - // +optional - Name string - - // GenerateName indicates that the name should be made unique by the server prior to persisting - // it. A non-empty value for the field indicates the name will be made unique (and the name - // returned to the client will be different than the name passed). The value of this field will - // be combined with a unique suffix on the server if the Name field has not been provided. - // The provided value must be valid within the rules for Name, and may be truncated by the length - // of the suffix required to make the value unique on the server. - // - // If this field is specified, and Name is not present, the server will NOT return a 409 if the - // generated name exists - 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). - // +optional - GenerateName string - - // Namespace defines the space within which 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. - // +optional - Namespace string - - // SelfLink is a URL representing this object. - // +optional - SelfLink string - - // 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. - // +optional - UID types.UID - - // An opaque value that represents the version of this resource. 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 values may only be valid for a particular - // resource or set of resources. Only servers will generate resource versions. - // +optional - ResourceVersion string - - // A sequence number representing a specific generation of the desired state. - // Populated by the system. Read-only. - // +optional - Generation int64 - - // 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. - // +optional - CreationTimestamp metav1.Time - - // 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. - // - // Populated by the system when a graceful deletion is requested. - // Read-only. - // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata - // +optional - DeletionTimestamp *metav1.Time - - // DeletionGracePeriodSeconds records the graceful deletion value set when graceful deletion - // was requested. Represents the most recent grace period, and may only be shortened once set. - // +optional - DeletionGracePeriodSeconds *int64 - - // Labels are key value pairs that may be used to scope and select individual resources. - // Label keys are of the form: - // label-key ::= prefixed-name | name - // prefixed-name ::= prefix '/' name - // prefix ::= DNS_SUBDOMAIN - // name ::= DNS_LABEL - // The prefix is optional. If the prefix is not specified, the key is assumed to be private - // to the user. Other system components that wish to use labels must specify a prefix. The - // "kubernetes.io/" prefix is reserved for use by kubernetes components. - // +optional - Labels map[string]string - - // Annotations are unstructured key value data stored with a resource that may be set by - // external tooling. They are not queryable and should be preserved when modifying - // objects. Annotation keys have the same formatting restrictions as Label keys. See the - // comments on Labels for details. - // +optional - Annotations map[string]string - - // List of objects depended by this object. If ALL objects in the list have - // been deleted, this object will be garbage collected. If this object is managed by a controller, - // then an entry in this list will point to this controller, with the controller field set to true. - // There cannot be more than one managing controller. - // +optional - OwnerReferences []metav1.OwnerReference - - // An initializer is a controller which enforces some system invariant at object creation time. - // This field is a list of initializers that have not yet acted on this object. If nil or empty, - // this object has been completely initialized. Otherwise, the object is considered uninitialized - // and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to - // observe uninitialized objects. - // - // When an object is created, the system will populate this list with the current set of initializers. - // Only privileged users may set or modify this list. Once it is empty, it may not be modified further - // by any user. - Initializers *metav1.Initializers - - // Must be empty before the object is deleted from the registry. Each entry - // is an identifier for the responsible component that will remove the entry - // from the list. If the deletionTimestamp of the object is non-nil, entries - // in this list can only be removed. - // +optional - Finalizers []string - - // The name of the cluster which the object belongs to. - // This is used to distinguish resources with same name and namespace in different clusters. - // This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request. - // +optional - ClusterName string -} - -const ( - // NamespaceDefault means the object is in the default namespace which is applied when not specified by clients - NamespaceDefault string = "default" - // NamespaceAll is the default argument to specify on a context when you want to list or filter resources across all namespaces - NamespaceAll string = "" - // NamespaceNone is the argument for a context when there is no namespace. - NamespaceNone string = "" - // NamespaceSystem is the system namespace where we place system components. - NamespaceSystem string = "kube-system" - // NamespacePublic is the namespace where we place public info (ConfigMaps) - NamespacePublic string = "kube-public" - // TerminationMessagePathDefault means the default path to capture the application termination message running in a container - TerminationMessagePathDefault string = "/dev/termination-log" -) - -// Volume represents a named volume in a pod that may be accessed by any containers in the pod. -type Volume struct { - // Required: This must be a DNS_LABEL. Each volume in a pod must have - // a unique name. - Name string - // The VolumeSource represents the location and type of a volume to mount. - // This is optional for now. If not specified, the Volume is implied to be an EmptyDir. - // This implied behavior is deprecated and will be removed in a future version. - // +optional - VolumeSource -} - -// VolumeSource represents the source location of a volume to mount. -// Only one of its members may be specified. -type VolumeSource struct { - // HostPath represents file or directory on the host machine that is - // directly exposed to the container. This is generally used for system - // agents or other privileged things that are allowed to see the host - // machine. Most containers will NOT need this. - // --- - // TODO(jonesdl) We need to restrict who can use host directory mounts and who can/can not - // mount host directories as read/write. - // +optional - HostPath *HostPathVolumeSource - // EmptyDir represents a temporary directory that shares a pod's lifetime. - // +optional - EmptyDir *EmptyDirVolumeSource - // GCEPersistentDisk represents a GCE Disk resource that is attached to a - // kubelet's host machine and then exposed to the pod. - // +optional - GCEPersistentDisk *GCEPersistentDiskVolumeSource - // AWSElasticBlockStore represents an AWS EBS disk that is attached to a - // kubelet's host machine and then exposed to the pod. - // +optional - AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource - // GitRepo represents a git repository at a particular revision. - // +optional - GitRepo *GitRepoVolumeSource - // Secret represents a secret that should populate this volume. - // +optional - Secret *SecretVolumeSource - // NFS represents an NFS mount on the host that shares a pod's lifetime - // +optional - NFS *NFSVolumeSource - // ISCSIVolumeSource represents an ISCSI Disk resource that is attached to a - // kubelet's host machine and then exposed to the pod. - // +optional - ISCSI *ISCSIVolumeSource - // Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime - // +optional - Glusterfs *GlusterfsVolumeSource - // PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace - // +optional - PersistentVolumeClaim *PersistentVolumeClaimVolumeSource - // RBD represents a Rados Block Device mount on the host that shares a pod's lifetime - // +optional - RBD *RBDVolumeSource - - // Quobyte represents a Quobyte mount on the host that shares a pod's lifetime - // +optional - Quobyte *QuobyteVolumeSource - - // FlexVolume represents a generic volume resource that is - // provisioned/attached using an exec based plugin. This is an alpha feature and may change in future. - // +optional - FlexVolume *FlexVolumeSource - - // Cinder represents a cinder volume attached and mounted on kubelets host machine - // +optional - Cinder *CinderVolumeSource - - // CephFS represents a Cephfs mount on the host that shares a pod's lifetime - // +optional - CephFS *CephFSVolumeSource - - // Flocker represents a Flocker volume attached to a kubelet's host machine. This depends on the Flocker control service being running - // +optional - Flocker *FlockerVolumeSource - - // DownwardAPI represents metadata about the pod that should populate this volume - // +optional - DownwardAPI *DownwardAPIVolumeSource - // FC represents a Fibre Channel resource that is attached to a kubelet's host machine and then exposed to the pod. - // +optional - FC *FCVolumeSource - // AzureFile represents an Azure File Service mount on the host and bind mount to the pod. - // +optional - AzureFile *AzureFileVolumeSource - // ConfigMap represents a configMap that should populate this volume - // +optional - ConfigMap *ConfigMapVolumeSource - // VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine - // +optional - VsphereVolume *VsphereVirtualDiskVolumeSource - // AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod. - // +optional - AzureDisk *AzureDiskVolumeSource - // PhotonPersistentDisk represents a Photon Controller persistent disk attached and mounted on kubelets host machine - PhotonPersistentDisk *PhotonPersistentDiskVolumeSource - // Items for all in one resources secrets, configmaps, and downward API - Projected *ProjectedVolumeSource - // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine - // +optional - PortworxVolume *PortworxVolumeSource - // 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. -// Exactly one of its members must be set. -type PersistentVolumeSource struct { - // GCEPersistentDisk represents a GCE Disk resource that is attached to a - // kubelet's host machine and then exposed to the pod. - // +optional - GCEPersistentDisk *GCEPersistentDiskVolumeSource - // AWSElasticBlockStore represents an AWS EBS disk that is attached to a - // kubelet's host machine and then exposed to the pod. - // +optional - AWSElasticBlockStore *AWSElasticBlockStoreVolumeSource - // HostPath represents a directory on the host. - // Provisioned by a developer or tester. - // This is useful for single-node development and testing only! - // On-host storage is not supported in any way and WILL NOT WORK in a multi-node cluster. - // +optional - HostPath *HostPathVolumeSource - // Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod - // +optional - Glusterfs *GlusterfsVolumeSource - // NFS represents an NFS mount on the host that shares a pod's lifetime - // +optional - NFS *NFSVolumeSource - // RBD represents a Rados Block Device mount on the host that shares a pod's lifetime - // +optional - RBD *RBDVolumeSource - // Quobyte represents a Quobyte mount on the host that shares a pod's lifetime - // +optional - Quobyte *QuobyteVolumeSource - // ISCSIVolumeSource represents an ISCSI resource that is attached to a - // kubelet's host machine and then exposed to the pod. - // +optional - ISCSI *ISCSIVolumeSource - // FlexVolume represents a generic volume resource that is - // provisioned/attached using an exec based plugin. This is an alpha feature and may change in future. - // +optional - FlexVolume *FlexVolumeSource - // Cinder represents a cinder volume attached and mounted on kubelets host machine - // +optional - Cinder *CinderVolumeSource - // CephFS represents a Ceph FS mount on the host that shares a pod's lifetime - // +optional - CephFS *CephFSVolumeSource - // FC represents a Fibre Channel resource that is attached to a kubelet's host machine and then exposed to the pod. - // +optional - FC *FCVolumeSource - // Flocker represents a Flocker volume attached to a kubelet's host machine. This depends on the Flocker control service being running - // +optional - Flocker *FlockerVolumeSource - // AzureFile represents an Azure File Service mount on the host and bind mount to the pod. - // +optional - AzureFile *AzureFileVolumeSource - // VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine - // +optional - VsphereVolume *VsphereVirtualDiskVolumeSource - // AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod. - // +optional - AzureDisk *AzureDiskVolumeSource - // PhotonPersistentDisk represents a Photon Controller persistent disk attached and mounted on kubelets host machine - PhotonPersistentDisk *PhotonPersistentDiskVolumeSource - // PortworxVolume represents a portworx volume attached and mounted on kubelets host machine - // +optional - PortworxVolume *PortworxVolumeSource - // 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 { - // ClaimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume - ClaimName string - // Optional: Defaults to false (read/write). ReadOnly here - // will force the ReadOnly setting in VolumeMounts - // +optional - ReadOnly bool -} - -const ( - // BetaStorageClassAnnotation represents the beta/previous StorageClass annotation. - // It's currently still used and will be held for backwards compatibility - BetaStorageClassAnnotation = "volume.beta.kubernetes.io/storage-class" - - // 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 -// +nonNamespaced=true - -type PersistentVolume struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - //Spec defines a persistent volume owned by the cluster - // +optional - Spec PersistentVolumeSpec - - // Status represents the current information about persistent volume. - // +optional - Status PersistentVolumeStatus -} - -type PersistentVolumeSpec struct { - // Resources represents the actual resources of the volume - Capacity ResourceList - // Source represents the location and type of a volume to mount. - PersistentVolumeSource - // AccessModes contains all ways the volume can be mounted - // +optional - AccessModes []PersistentVolumeAccessMode - // ClaimRef is part of a bi-directional binding between PersistentVolume and PersistentVolumeClaim. - // ClaimRef is expected to be non-nil when bound. - // claim.VolumeName is the authoritative bind between PV and PVC. - // When set to non-nil value, PVC.Spec.Selector of the referenced PVC is - // ignored, i.e. labels of this PV do not need to match PVC selector. - // +optional - ClaimRef *ObjectReference - // Optional: what happens to a persistent volume when released from its claim. - // +optional - PersistentVolumeReclaimPolicy PersistentVolumeReclaimPolicy - // Name of StorageClass to which this persistent volume belongs. Empty value - // means that this volume does not belong to any StorageClass. - // +optional - StorageClassName string -} - -// PersistentVolumeReclaimPolicy describes a policy for end-of-life maintenance of persistent volumes -type PersistentVolumeReclaimPolicy string - -const ( - // PersistentVolumeReclaimRecycle means the volume will be recycled back into the pool of unbound persistent volumes on release from its claim. - // The volume plugin must support Recycling. - PersistentVolumeReclaimRecycle PersistentVolumeReclaimPolicy = "Recycle" - // PersistentVolumeReclaimDelete means the volume will be deleted from Kubernetes on release from its claim. - // The volume plugin must support Deletion. - PersistentVolumeReclaimDelete PersistentVolumeReclaimPolicy = "Delete" - // PersistentVolumeReclaimRetain means the volume will be left in its current phase (Released) for manual reclamation by the administrator. - // The default policy is Retain. - PersistentVolumeReclaimRetain PersistentVolumeReclaimPolicy = "Retain" -) - -type PersistentVolumeStatus struct { - // Phase indicates if a volume is available, bound to a claim, or released by a claim - // +optional - Phase PersistentVolumePhase - // A human-readable message indicating details about why the volume is in this state. - // +optional - Message string - // Reason is a brief CamelCase string that describes any failure and is meant for machine parsing and tidy display in the CLI - // +optional - Reason string -} - -type PersistentVolumeList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - Items []PersistentVolume -} - -// +genclient=true - -// PersistentVolumeClaim is a user's request for and claim to a persistent volume -type PersistentVolumeClaim struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the volume requested by a pod author - // +optional - Spec PersistentVolumeClaimSpec - - // Status represents the current information about a claim - // +optional - Status PersistentVolumeClaimStatus -} - -type PersistentVolumeClaimList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - Items []PersistentVolumeClaim -} - -// PersistentVolumeClaimSpec describes the common attributes of storage devices -// and allows a Source for provider-specific attributes -type PersistentVolumeClaimSpec struct { - // Contains the types of access modes required - // +optional - AccessModes []PersistentVolumeAccessMode - // A label query over volumes to consider for binding. This selector is - // ignored when VolumeName is set - // +optional - Selector *metav1.LabelSelector - // Resources represents the minimum resources required - // +optional - Resources ResourceRequirements - // VolumeName is the binding reference to the PersistentVolume backing this - // claim. When set to non-empty value Selector is not evaluated - // +optional - VolumeName string - // Name of the StorageClass required by the claim. - // More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#class-1 - // +optional - StorageClassName *string -} - -type PersistentVolumeClaimStatus struct { - // Phase represents the current phase of PersistentVolumeClaim - // +optional - Phase PersistentVolumeClaimPhase - // AccessModes contains all ways the volume backing the PVC can be mounted - // +optional - AccessModes []PersistentVolumeAccessMode - // Represents the actual resources of the underlying volume - // +optional - Capacity ResourceList -} - -type PersistentVolumeAccessMode string - -const ( - // can be mounted read/write mode to exactly 1 host - ReadWriteOnce PersistentVolumeAccessMode = "ReadWriteOnce" - // can be mounted in read-only mode to many hosts - ReadOnlyMany PersistentVolumeAccessMode = "ReadOnlyMany" - // can be mounted in read/write mode to many hosts - ReadWriteMany PersistentVolumeAccessMode = "ReadWriteMany" -) - -type PersistentVolumePhase string - -const ( - // used for PersistentVolumes that are not available - VolumePending PersistentVolumePhase = "Pending" - // used for PersistentVolumes that are not yet bound - // Available volumes are held by the binder and matched to PersistentVolumeClaims - VolumeAvailable PersistentVolumePhase = "Available" - // used for PersistentVolumes that are bound - VolumeBound PersistentVolumePhase = "Bound" - // used for PersistentVolumes where the bound PersistentVolumeClaim was deleted - // released volumes must be recycled before becoming available again - // this phase is used by the persistent volume claim binder to signal to another process to reclaim the resource - VolumeReleased PersistentVolumePhase = "Released" - // used for PersistentVolumes that failed to be correctly recycled or deleted after being released from a claim - VolumeFailed PersistentVolumePhase = "Failed" -) - -type PersistentVolumeClaimPhase string - -const ( - // used for PersistentVolumeClaims that are not yet bound - ClaimPending PersistentVolumeClaimPhase = "Pending" - // used for PersistentVolumeClaims that are bound - ClaimBound PersistentVolumeClaimPhase = "Bound" - // used for PersistentVolumeClaims that lost their underlying - // PersistentVolume. The claim was bound to a PersistentVolume and this - // volume does not exist any longer and all data on it was lost. - ClaimLost PersistentVolumeClaimPhase = "Lost" -) - -// Represents a host path mapped into a pod. -// Host path volumes do not support ownership management or SELinux relabeling. -type HostPathVolumeSource struct { - Path string -} - -// Represents an empty directory for a pod. -// Empty directory volumes support ownership management and SELinux relabeling. -type EmptyDirVolumeSource struct { - // TODO: Longer term we want to represent the selection of underlying - // media more like a scheduling problem - user says what traits they - // need, we give them a backing store that satisfies that. For now - // this will cover the most common needs. - // Optional: what type of storage medium should back this directory. - // 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. -type StorageMedium string - -const ( - StorageMediumDefault StorageMedium = "" // use whatever the default is for the node - StorageMediumMemory StorageMedium = "Memory" // use memory (tmpfs) -) - -// Protocol defines network protocols supported for things like container ports. -type Protocol string - -const ( - // ProtocolTCP is the TCP protocol. - ProtocolTCP Protocol = "TCP" - // ProtocolUDP is the UDP protocol. - ProtocolUDP Protocol = "UDP" -) - -// Represents a Persistent Disk resource in Google Compute Engine. -// -// A GCE PD must exist before mounting to a container. The disk must -// also be in the same GCE project and zone as the kubelet. A GCE PD -// can only be mounted as read/write once or read-only many times. GCE -// PDs support ownership management and SELinux relabeling. -type GCEPersistentDiskVolumeSource struct { - // Unique name of the PD resource. Used to identify the disk in GCE - PDName 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. - // TODO: how do we prevent errors in the filesystem from compromising the machine - // +optional - FSType string - // Optional: Partition on the disk to mount. - // If omitted, kubelet will attempt to mount the device name. - // Ex. For /dev/sda1, this field is "1", for /dev/sda, this field is 0 or empty. - // +optional - Partition int32 - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool -} - -// Represents an ISCSI disk. -// ISCSI volumes can only be mounted as read/write once. -// ISCSI volumes support ownership management and SELinux relabeling. -type ISCSIVolumeSource struct { - // Required: iSCSI target portal - // the portal is either an IP or ip_addr:port if port is other than default (typically TCP ports 860 and 3260) - // +optional - TargetPortal string - // Required: target iSCSI Qualified Name - // +optional - IQN string - // Required: iSCSI target lun number - // +optional - Lun int32 - // Optional: Defaults to 'default' (tcp). iSCSI interface name that uses an iSCSI transport. - // +optional - ISCSIInterface 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. - // TODO: how do we prevent errors in the filesystem from compromising the machine - // +optional - FSType string - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool - // Optional: list of iSCSI target portal ips for high availability. - // the portal is either an IP or ip_addr:port if port is other than default (typically TCP ports 860 and 3260) - // +optional - Portals []string - // Optional: whether support iSCSI Discovery CHAP authentication - // +optional - DiscoveryCHAPAuth bool - // Optional: whether support iSCSI Session CHAP authentication - // +optional - SessionCHAPAuth bool - // Optional: CHAP secret for iSCSI target and initiator authentication. - // The secret is used if either DiscoveryCHAPAuth or SessionCHAPAuth is true - // +optional - SecretRef *LocalObjectReference -} - -// Represents a Fibre Channel volume. -// Fibre Channel volumes can only be mounted as read/write once. -// Fibre Channel volumes support ownership management and SELinux relabeling. -type FCVolumeSource struct { - // Required: FC target worldwide names (WWNs) - TargetWWNs []string - // Required: FC target lun number - Lun *int32 - // 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. - // TODO: how do we prevent errors in the filesystem from compromising the machine - // +optional - FSType string - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool -} - -// FlexVolume represents a generic volume resource that is -// provisioned/attached using an exec based plugin. This is an alpha feature and may change in future. -type FlexVolumeSource struct { - // Driver is the name of the driver to use for this volume. - Driver string - // Filesystem type to mount. - // Must be a filesystem type supported by the host operating system. - // Ex. "ext4", "xfs", "ntfs". The default filesystem depends on FlexVolume script. - // +optional - FSType string - // Optional: SecretRef is reference to the secret object containing - // sensitive information to pass to the plugin scripts. This may be - // empty if no secret object is specified. If the secret object - // contains more than one secret, all secrets are passed to the plugin - // scripts. - // +optional - SecretRef *LocalObjectReference - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool - // Optional: Extra driver options if any. - // +optional - Options map[string]string -} - -// Represents a Persistent Disk resource in AWS. -// -// An AWS EBS disk must exist before mounting to a container. The disk -// must also be in the same AWS zone as the kubelet. An AWS EBS disk -// can only be mounted as read/write once. AWS EBS volumes support -// ownership management and SELinux relabeling. -type AWSElasticBlockStoreVolumeSource struct { - // Unique id of the persistent disk resource. Used to identify the disk in AWS - VolumeID 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. - // TODO: how do we prevent errors in the filesystem from compromising the machine - // +optional - FSType string - // Optional: Partition on the disk to mount. - // If omitted, kubelet will attempt to mount the device name. - // Ex. For /dev/sda1, this field is "1", for /dev/sda, this field is 0 or empty. - // +optional - Partition int32 - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool -} - -// Represents a volume that is populated with the contents of a git repository. -// Git repo volumes do not support ownership management. -// Git repo volumes support SELinux relabeling. -type GitRepoVolumeSource struct { - // Repository URL - Repository string - // Commit hash, this is optional - // +optional - Revision string - // Clone target, this is optional - // Must not contain or start with '..'. If '.' is supplied, the volume directory will be the - // git repository. Otherwise, if specified, the volume will contain the git repository in - // the subdirectory with the given name. - // +optional - Directory string - // TODO: Consider credentials here. -} - -// Adapts a Secret into a volume. -// -// The contents of the target Secret's Data field will be presented in a volume -// as files using the keys in the Data field as the file names. -// Secret volumes support ownership management and SELinux relabeling. -type SecretVolumeSource struct { - // Name of the secret in the pod's namespace to use. - // +optional - SecretName string - // If unspecified, each key-value pair in the Data field of the referenced - // Secret will be projected into the volume as a file whose name is the - // key and content is the value. If specified, the listed keys will be - // projected into the specified paths, and unlisted keys will not be - // present. If a key is specified which is not present in the Secret, - // the volume setup will error unless it is marked optional. Paths must be - // relative and may not contain the '..' path or start with '..'. - // +optional - Items []KeyToPath - // Mode bits to use on created files by default. Must be a value between - // 0 and 0777. - // Directories within the path are not affected by this setting. - // This might be in conflict with other options that affect the file - // mode, like fsGroup, and the result can be other mode bits set. - // +optional - DefaultMode *int32 - // Specify whether the Secret or its key must be defined - // +optional - Optional *bool -} - -// Adapts a secret into a projected volume. -// -// The contents of the target Secret's Data field will be presented in a -// projected volume as files using the keys in the Data field as the file names. -// Note that this is identical to a secret volume source without the default -// mode. -type SecretProjection struct { - LocalObjectReference - // If unspecified, each key-value pair in the Data field of the referenced - // Secret will be projected into the volume as a file whose name is the - // key and content is the value. If specified, the listed keys will be - // projected into the specified paths, and unlisted keys will not be - // present. If a key is specified which is not present in the Secret, - // the volume setup will error unless it is marked optional. Paths must be - // relative and may not contain the '..' path or start with '..'. - // +optional - Items []KeyToPath - // Specify whether the Secret or its key must be defined - // +optional - Optional *bool -} - -// Represents an NFS mount that lasts the lifetime of a pod. -// NFS volumes do not support ownership management or SELinux relabeling. -type NFSVolumeSource struct { - // Server is the hostname or IP address of the NFS server - Server string - - // Path is the exported NFS share - Path string - - // Optional: Defaults to false (read/write). ReadOnly here will force - // the NFS export to be mounted with read-only permissions - // +optional - ReadOnly bool -} - -// Represents a Quobyte mount that lasts the lifetime of a pod. -// Quobyte volumes do not support ownership management or SELinux relabeling. -type QuobyteVolumeSource struct { - // Registry represents a single or multiple Quobyte Registry services - // specified as a string as host:port pair (multiple entries are separated with commas) - // which acts as the central registry for volumes - Registry string - - // Volume is a string that references an already created Quobyte volume by name. - Volume string - - // Defaults to false (read/write). ReadOnly here will force - // the Quobyte to be mounted with read-only permissions - // +optional - ReadOnly bool - - // User to map volume access to - // Defaults to the root user - // +optional - User string - - // Group to map volume access to - // Default is no group - // +optional - Group string -} - -// Represents a Glusterfs mount that lasts the lifetime of a pod. -// Glusterfs volumes do not support ownership management or SELinux relabeling. -type GlusterfsVolumeSource struct { - // Required: EndpointsName is the endpoint name that details Glusterfs topology - EndpointsName string - - // Required: Path is the Glusterfs volume path - Path string - - // Optional: Defaults to false (read/write). ReadOnly here will force - // the Glusterfs to be mounted with read-only permissions - // +optional - ReadOnly bool -} - -// Represents a Rados Block Device mount that lasts the lifetime of a pod. -// RBD volumes support ownership management and SELinux relabeling. -type RBDVolumeSource struct { - // Required: CephMonitors is a collection of Ceph monitors - CephMonitors []string - // Required: RBDImage is the rados image name - RBDImage 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. - // TODO: how do we prevent errors in the filesystem from compromising the machine - // +optional - FSType string - // Optional: RadosPool is the rados pool name,default is rbd - // +optional - RBDPool string - // Optional: RBDUser is the rados user name, default is admin - // +optional - RadosUser string - // Optional: Keyring is the path to key ring for RBDUser, default is /etc/ceph/keyring - // +optional - Keyring string - // Optional: SecretRef is name of the authentication secret for RBDUser, default is nil. - // +optional - SecretRef *LocalObjectReference - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool -} - -// Represents a cinder volume resource in Openstack. A Cinder volume -// must exist before mounting to a container. The volume must also be -// in the same region as the kubelet. Cinder volumes support ownership -// management and SELinux relabeling. -type CinderVolumeSource struct { - // Unique id of the volume used to identify the cinder volume - VolumeID 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 - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool -} - -// Represents a Ceph Filesystem mount that lasts the lifetime of a pod -// Cephfs volumes do not support ownership management or SELinux relabeling. -type CephFSVolumeSource struct { - // Required: Monitors is a collection of Ceph monitors - Monitors []string - // Optional: Used as the mounted root, rather than the full Ceph tree, default is / - // +optional - Path string - // Optional: User is the rados user name, default is admin - // +optional - User string - // Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret - // +optional - SecretFile string - // Optional: SecretRef is reference to the authentication secret for User, default is empty. - // +optional - SecretRef *LocalObjectReference - // Optional: Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool -} - -// Represents a Flocker volume mounted by the Flocker agent. -// One and only one of datasetName and datasetUUID should be set. -// Flocker volumes do not support ownership management or SELinux relabeling. -type FlockerVolumeSource struct { - // Name of the dataset stored as metadata -> name on the dataset for Flocker - // should be considered as deprecated - // +optional - DatasetName string - // UUID of the dataset. This is unique identifier of a Flocker dataset - // +optional - DatasetUUID string -} - -// Represents a volume containing downward API info. -// Downward API volumes support ownership management and SELinux relabeling. -type DownwardAPIVolumeSource struct { - // Items is a list of DownwardAPIVolume file - // +optional - Items []DownwardAPIVolumeFile - // Mode bits to use on created files by default. Must be a value between - // 0 and 0777. - // Directories within the path are not affected by this setting. - // This might be in conflict with other options that affect the file - // mode, like fsGroup, and the result can be other mode bits set. - // +optional - DefaultMode *int32 -} - -// Represents a single file containing information from the downward API -type DownwardAPIVolumeFile struct { - // Required: Path is the relative path name of the file to be created. Must not be absolute or contain the '..' path. Must be utf-8 encoded. The first item of the relative path must not start with '..' - Path string - // Required: Selects a field of the pod: only annotations, labels, name and namespace are supported. - // +optional - FieldRef *ObjectFieldSelector - // Selects a resource of the container: only resources limits and requests - // (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported. - // +optional - ResourceFieldRef *ResourceFieldSelector - // Optional: mode bits to use on this file, must be a value between 0 - // and 0777. If not specified, the volume defaultMode will be used. - // This might be in conflict with other options that affect the file - // mode, like fsGroup, and the result can be other mode bits set. - // +optional - Mode *int32 -} - -// Represents downward API info for projecting into a projected volume. -// Note that this is identical to a downwardAPI volume source without the default -// mode. -type DownwardAPIProjection struct { - // Items is a list of DownwardAPIVolume file - // +optional - Items []DownwardAPIVolumeFile -} - -// AzureFile represents an Azure File Service mount on the host and bind mount to the pod. -type AzureFileVolumeSource struct { - // the name of secret that contains Azure Storage Account Name and Key - SecretName string - // Share Name - ShareName string - // Defaults to false (read/write). ReadOnly here will force - // the ReadOnly setting in VolumeMounts. - // +optional - ReadOnly bool -} - -// Represents a vSphere volume resource. -type VsphereVirtualDiskVolumeSource struct { - // Path that identifies vSphere volume vmdk - VolumePath 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 - // 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. -type PhotonPersistentDiskVolumeSource struct { - // ID that identifies Photon Controller persistent disk - PdID 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. - FSType string -} - -// PortworxVolumeSource represents a Portworx volume resource. -type PortworxVolumeSource struct { - // VolumeID uniquely identifies a Portworx volume - VolumeID string - // FSType represents the filesystem type to mount - // Must be a filesystem type supported by the host operating system. - // Ex. "ext4", "xfs". 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 -} - -type AzureDataDiskCachingMode string -type AzureDataDiskKind string - -const ( - AzureDataDiskCachingNone AzureDataDiskCachingMode = "None" - AzureDataDiskCachingReadOnly AzureDataDiskCachingMode = "ReadOnly" - AzureDataDiskCachingReadWrite AzureDataDiskCachingMode = "ReadWrite" - - AzureSharedBlobDisk AzureDataDiskKind = "Shared" - AzureDedicatedBlobDisk AzureDataDiskKind = "Dedicated" - AzureManagedDisk AzureDataDiskKind = "Managed" -) - -// AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod. -type AzureDiskVolumeSource struct { - // The Name of the data disk in the blob storage - DiskName string - // The URI of the data disk in the blob storage - DataDiskURI string - // Host Caching mode: None, Read Only, Read Write. - // +optional - CachingMode *AzureDataDiskCachingMode - // 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 - // Expected values Shared: mulitple blob disks per storage account Dedicated: single blob disk per storage account Managed: azure managed data disk (only in managed availability set). defaults to shared - Kind *AzureDataDiskKind -} - -// ScaleIOVolumeSource represents a persistent ScaleIO volume -type ScaleIOVolumeSource struct { - // The host address of the ScaleIO API Gateway. - Gateway string - // The name of the storage system as configured in ScaleIO. - System string - // SecretRef references to the secret for ScaleIO user and other - // sensitive information. If this is not provided, Login operation will fail. - SecretRef *LocalObjectReference - // Flag to enable/disable SSL communication with Gateway, default false - // +optional - SSLEnabled bool - // The name of the Protection Domain for the configured storage (defaults to "default"). - // +optional - ProtectionDomain string - // The Storage Pool associated with the protection domain (defaults to "default"). - // +optional - StoragePool string - // Indicates whether the storage for a volume should be thick or thin (defaults to "thin"). - // +optional - StorageMode string - // The name of a volume already created in the ScaleIO system - // that is associated with this volume source. - VolumeName 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 -} - -// 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 -// volume as files using the keys in the Data field as the file names, unless -// the items element is populated with specific mappings of keys to paths. -// ConfigMap volumes support ownership management and SELinux relabeling. -type ConfigMapVolumeSource struct { - LocalObjectReference - // If unspecified, each key-value pair in the Data field of the referenced - // ConfigMap will be projected into the volume as a file whose name is the - // key and content is the value. If specified, the listed keys will be - // projected into the specified paths, and unlisted keys will not be - // present. If a key is specified which is not present in the ConfigMap, - // the volume setup will error unless it is marked optional. Paths must be - // relative and may not contain the '..' path or start with '..'. - // +optional - Items []KeyToPath - // Mode bits to use on created files by default. Must be a value between - // 0 and 0777. - // Directories within the path are not affected by this setting. - // This might be in conflict with other options that affect the file - // mode, like fsGroup, and the result can be other mode bits set. - // +optional - DefaultMode *int32 - // Specify whether the ConfigMap or it's keys must be defined - // +optional - Optional *bool -} - -// Adapts a ConfigMap into a projected volume. -// -// The contents of the target ConfigMap's Data field will be presented in a -// projected volume as files using the keys in the Data field as the file names, -// unless the items element is populated with specific mappings of keys to paths. -// Note that this is identical to a configmap volume source without the default -// mode. -type ConfigMapProjection struct { - LocalObjectReference - // If unspecified, each key-value pair in the Data field of the referenced - // ConfigMap will be projected into the volume as a file whose name is the - // key and content is the value. If specified, the listed keys will be - // projected into the specified paths, and unlisted keys will not be - // present. If a key is specified which is not present in the ConfigMap, - // the volume setup will error unless it is marked optional. Paths must be - // relative and may not contain the '..' path or start with '..'. - // +optional - Items []KeyToPath - // Specify whether the ConfigMap or it's keys must be defined - // +optional - Optional *bool -} - -// Represents a projected volume source -type ProjectedVolumeSource struct { - // list of volume projections - Sources []VolumeProjection - // Mode bits to use on created files by default. Must be a value between - // 0 and 0777. - // Directories within the path are not affected by this setting. - // This might be in conflict with other options that affect the file - // mode, like fsGroup, and the result can be other mode bits set. - // +optional - DefaultMode *int32 -} - -// Projection that may be projected along with other supported volume types -type VolumeProjection struct { - // all types below are the supported types for projection into the same volume - - // information about the secret data to project - Secret *SecretProjection - // information about the downwardAPI data to project - DownwardAPI *DownwardAPIProjection - // information about the configMap data to project - ConfigMap *ConfigMapProjection -} - -// Maps a string key to a path within a volume. -type KeyToPath struct { - // The key to project. - Key string - - // The relative path of the file to map the key to. - // May not be an absolute path. - // May not contain the path element '..'. - // May not start with the string '..'. - Path string - // Optional: mode bits to use on this file, should be a value between 0 - // and 0777. If not specified, the volume defaultMode will be used. - // This might be in conflict with other options that affect the file - // mode, like fsGroup, and the result can be other mode bits set. - // +optional - 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 - // in a pod must have a unique name. - // +optional - Name string - // Optional: If specified, this must be a valid port number, 0 < x < 65536. - // If HostNetwork is specified, this must match ContainerPort. - // +optional - HostPort int32 - // Required: This must be a valid port number, 0 < x < 65536. - ContainerPort int32 - // Required: Supports "TCP" and "UDP". - // +optional - Protocol Protocol - // Optional: What host IP to bind the external port to. - // +optional - HostIP string -} - -// VolumeMount describes a mounting of a Volume within a container. -type VolumeMount struct { - // Required: This must match the Name of a Volume [above]. - Name string - // Optional: Defaults to false (read-write). - // +optional - ReadOnly bool - // Required. Must not contain ':'. - MountPath string - // Path within the volume from which the container's volume should be mounted. - // Defaults to "" (volume's root). - // +optional - SubPath string -} - -// EnvVar represents an environment variable present in a Container. -type EnvVar struct { - // Required: This must be a C_IDENTIFIER. - Name string - // Optional: no more than one of the following may be specified. - // Optional: Defaults to ""; variable references $(VAR_NAME) are expanded - // using the previous defined environment variables in the container and - // any service environment variables. If a variable cannot be resolved, - // the reference in the input string will be unchanged. The $(VAR_NAME) - // syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped - // references will never be expanded, regardless of whether the variable - // exists or not. - // +optional - Value string - // Optional: Specifies a source the value of this var should come from. - // +optional - ValueFrom *EnvVarSource -} - -// EnvVarSource represents a source for the value of an EnvVar. -// Only one of its fields may be set. -type EnvVarSource struct { - // Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels, metadata.annotations, - // spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP. - // +optional - FieldRef *ObjectFieldSelector - // Selects a resource of the container: only resources limits and requests - // (limits.cpu, limits.memory, requests.cpu and requests.memory) are currently supported. - // +optional - ResourceFieldRef *ResourceFieldSelector - // Selects a key of a ConfigMap. - // +optional - ConfigMapKeyRef *ConfigMapKeySelector - // Selects a key of a secret in the pod's namespace. - // +optional - SecretKeyRef *SecretKeySelector -} - -// ObjectFieldSelector selects an APIVersioned field of an object. -type ObjectFieldSelector struct { - // Required: Version of the schema the FieldPath is written in terms of. - // If no value is specified, it will be defaulted to the APIVersion of the - // enclosing object. - APIVersion string - // Required: Path of the field to select in the specified API version - FieldPath string -} - -// ResourceFieldSelector represents container resources (cpu, memory) and their output format -type ResourceFieldSelector struct { - // Container name: required for volumes, optional for env vars - // +optional - ContainerName string - // Required: resource to select - Resource string - // Specifies the output format of the exposed resources, defaults to "1" - // +optional - Divisor resource.Quantity -} - -// Selects a key from a ConfigMap. -type ConfigMapKeySelector struct { - // The ConfigMap to select from. - LocalObjectReference - // The key to select. - Key string - // Specify whether the ConfigMap or it's key must be defined - // +optional - Optional *bool -} - -// SecretKeySelector selects a key of a Secret. -type SecretKeySelector struct { - // The name of the secret in the pod's namespace to select from. - LocalObjectReference - // The key of the secret to select from. Must be a valid secret key. - Key string - // Specify whether the Secret or it's key must be defined - // +optional - Optional *bool -} - -// EnvFromSource represents the source of a set of ConfigMaps -type EnvFromSource struct { - // An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. - // +optional - Prefix string - // The ConfigMap to select from. - //+optional - ConfigMapRef *ConfigMapEnvSource - // The Secret to select from. - //+optional - SecretRef *SecretEnvSource -} - -// ConfigMapEnvSource selects a ConfigMap to populate the environment -// variables with. -// -// The contents of the target ConfigMap's Data field will represent the -// key-value pairs as environment variables. -type ConfigMapEnvSource struct { - // The ConfigMap to select from. - LocalObjectReference - // Specify whether the ConfigMap must be defined - // +optional - Optional *bool -} - -// SecretEnvSource selects a Secret to populate the environment -// variables with. -// -// The contents of the target Secret's Data field will represent the -// key-value pairs as environment variables. -type SecretEnvSource struct { - // The Secret to select from. - LocalObjectReference - // Specify whether the Secret must be defined - // +optional - Optional *bool -} - -// HTTPHeader describes a custom header to be used in HTTP probes -type HTTPHeader struct { - // The header field name - Name string - // The header field value - Value string -} - -// HTTPGetAction describes an action based on HTTP Get requests. -type HTTPGetAction struct { - // Optional: Path to access on the HTTP server. - // +optional - Path string - // Required: Name or number of the port to access on the container. - // +optional - Port intstr.IntOrString - // Optional: Host name to connect to, defaults to the pod IP. You - // probably want to set "Host" in httpHeaders instead. - // +optional - Host string - // Optional: Scheme to use for connecting to the host, defaults to HTTP. - // +optional - Scheme URIScheme - // Optional: Custom headers to set in the request. HTTP allows repeated headers. - // +optional - HTTPHeaders []HTTPHeader -} - -// URIScheme identifies the scheme used for connection to a host for Get actions -type URIScheme string - -const ( - // URISchemeHTTP means that the scheme used will be http:// - URISchemeHTTP URIScheme = "HTTP" - // URISchemeHTTPS means that the scheme used will be https:// - URISchemeHTTPS URIScheme = "HTTPS" -) - -// TCPSocketAction describes an action based on opening a socket -type TCPSocketAction struct { - // Required: Port to connect to. - // +optional - Port intstr.IntOrString - // Optional: Host name to connect to, defaults to the pod IP. - // +optional - Host string -} - -// ExecAction describes a "run in container" action. -type ExecAction struct { - // Command is the command line to execute inside the container, the working directory for the - // command is root ('/') in the container's filesystem. The command is simply exec'd, it is - // not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use - // a shell, you need to explicitly call out to that shell. - // +optional - Command []string -} - -// Probe describes a health check to be performed against a container to determine whether it is -// alive or ready to receive traffic. -type Probe struct { - // The action taken to determine the health of a container - Handler - // Length of time before health checking is activated. In seconds. - // +optional - InitialDelaySeconds int32 - // Length of time before health checking times out. In seconds. - // +optional - TimeoutSeconds int32 - // How often (in seconds) to perform the probe. - // +optional - PeriodSeconds int32 - // Minimum consecutive successes for the probe to be considered successful after having failed. - // Must be 1 for liveness. - // +optional - SuccessThreshold int32 - // Minimum consecutive failures for the probe to be considered failed after having succeeded. - // +optional - FailureThreshold int32 -} - -// PullPolicy describes a policy for if/when to pull a container image -type PullPolicy string - -const ( - // PullAlways means that kubelet always attempts to pull the latest image. Container will fail If the pull fails. - PullAlways PullPolicy = "Always" - // PullNever means that kubelet never pulls an image, but only uses a local image. Container will fail if the image isn't present - PullNever PullPolicy = "Never" - // PullIfNotPresent means that kubelet pulls if the image isn't present on disk. Container will fail if the image isn't present and the pull fails. - PullIfNotPresent PullPolicy = "IfNotPresent" -) - -// TerminationMessagePolicy describes how termination messages are retrieved from a container. -type TerminationMessagePolicy string - -const ( - // TerminationMessageReadFile is the default behavior and will set the container status message to - // the contents of the container's terminationMessagePath when the container exits. - TerminationMessageReadFile TerminationMessagePolicy = "File" - // TerminationMessageFallbackToLogsOnError will read the most recent contents of the container logs - // for the container status message when the container exits with an error and the - // terminationMessagePath has no contents. - TerminationMessageFallbackToLogsOnError TerminationMessagePolicy = "FallbackToLogsOnError" -) - -// Capability represent POSIX capabilities type -type Capability string - -// Capabilities represent POSIX capabilities that can be added or removed to a running container. -type Capabilities struct { - // Added capabilities - // +optional - Add []Capability - // Removed capabilities - // +optional - Drop []Capability -} - -// ResourceRequirements describes the compute resource requirements. -type ResourceRequirements struct { - // Limits describes the maximum amount of compute resources allowed. - // +optional - Limits ResourceList - // Requests describes the minimum amount of compute resources required. - // If Request is omitted for a container, it defaults to Limits if that is explicitly specified, - // otherwise to an implementation-defined value - // +optional - Requests ResourceList -} - -// Container represents a single container that is expected to be run on the host. -type Container struct { - // Required: This must be a DNS_LABEL. Each container in a pod must - // have a unique name. - Name string - // Required. - Image string - // Optional: The docker image's entrypoint is used if this is not provided; cannot be updated. - // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable - // cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax - // can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, - // regardless of whether the variable exists or not. - // +optional - Command []string - // Optional: The docker image's cmd is used if this is not provided; cannot be updated. - // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable - // cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax - // can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, - // regardless of whether the variable exists or not. - // +optional - Args []string - // Optional: Defaults to Docker's default. - // +optional - WorkingDir string - // +optional - Ports []ContainerPort - // List of sources to populate environment variables in the container. - // The keys defined within a source must be a C_IDENTIFIER. All invalid keys - // will be reported as an event when the container is starting. When a key exists in multiple - // sources, the value associated with the last source will take precedence. - // Values defined by an Env with a duplicate key will take precedence. - // Cannot be updated. - // +optional - EnvFrom []EnvFromSource - // +optional - Env []EnvVar - // Compute resource requirements. - // +optional - Resources ResourceRequirements - // +optional - VolumeMounts []VolumeMount - // +optional - LivenessProbe *Probe - // +optional - ReadinessProbe *Probe - // +optional - Lifecycle *Lifecycle - // Required. - // +optional - TerminationMessagePath string - // +optional - TerminationMessagePolicy TerminationMessagePolicy - // Required: Policy for pulling images for this container - ImagePullPolicy PullPolicy - // Optional: SecurityContext defines the security options the container should be run with. - // If set, the fields of SecurityContext override the equivalent fields of PodSecurityContext. - // +optional - SecurityContext *SecurityContext - - // Variables for interactive containers, these have very specialized use-cases (e.g. debugging) - // and shouldn't be used for general purpose containers. - // +optional - Stdin bool - // +optional - StdinOnce bool - // +optional - TTY bool -} - -// Handler defines a specific action that should be taken -// TODO: pass structured data to these actions, and document that data here. -type Handler struct { - // One and only one of the following should be specified. - // Exec specifies the action to take. - // +optional - Exec *ExecAction - // HTTPGet specifies the http request to perform. - // +optional - HTTPGet *HTTPGetAction - // TCPSocket specifies an action involving a TCP port. - // TODO: implement a realistic TCP lifecycle hook - // +optional - TCPSocket *TCPSocketAction -} - -// Lifecycle describes actions that the management system should take in response to container lifecycle -// events. For the PostStart and PreStop lifecycle handlers, management of the container blocks -// until the action is complete, unless the container process fails, in which case the handler is aborted. -type Lifecycle struct { - // PostStart is called immediately after a container is created. If the handler fails, the container - // is terminated and restarted. - // +optional - PostStart *Handler - // PreStop is called immediately before a container is terminated. The reason for termination is - // passed to the handler. Regardless of the outcome of the handler, the container is eventually terminated. - // +optional - PreStop *Handler -} - -// The below types are used by kube_client and api_server. - -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" -) - -type ContainerStateWaiting struct { - // A brief CamelCase string indicating details about why the container is in waiting state. - // +optional - Reason string - // A human-readable message indicating details about why the container is in waiting state. - // +optional - Message string -} - -type ContainerStateRunning struct { - // +optional - StartedAt metav1.Time -} - -type ContainerStateTerminated struct { - ExitCode int32 - // +optional - Signal int32 - // +optional - Reason string - // +optional - Message string - // +optional - StartedAt metav1.Time - // +optional - FinishedAt metav1.Time - // +optional - ContainerID string -} - -// ContainerState holds a possible state of container. -// Only one of its members may be specified. -// If none of them is specified, the default one is ContainerStateWaiting. -type ContainerState struct { - // +optional - Waiting *ContainerStateWaiting - // +optional - Running *ContainerStateRunning - // +optional - Terminated *ContainerStateTerminated -} - -type ContainerStatus struct { - // Each container in a pod must have a unique name. - Name string - // +optional - State ContainerState - // +optional - LastTerminationState ContainerState - // Ready specifies whether the container has passed its readiness check. - Ready bool - // Note that this is calculated from dead containers. But those containers are subject to - // garbage collection. This value will get capped at 5 by GC. - RestartCount int32 - Image string - ImageID string - // +optional - ContainerID string -} - -// PodPhase is a label for the condition of a pod at the current time. -type PodPhase string - -// These are the valid statuses of pods. -const ( - // PodPending means the pod has been accepted by the system, but one or more of the containers - // has not been started. This includes time before being bound to a node, as well as time spent - // pulling images onto the host. - PodPending PodPhase = "Pending" - // PodRunning means the pod has been bound to a node and all of the containers have been started. - // At least one container is still running or is in the process of being restarted. - PodRunning PodPhase = "Running" - // PodSucceeded means that all containers in the pod have voluntarily terminated - // with a container exit code of 0, and the system is not going to restart any of these containers. - PodSucceeded PodPhase = "Succeeded" - // PodFailed means that all containers in the pod have terminated, and at least one container has - // terminated in a failure (exited with a non-zero exit code or was stopped by the system). - PodFailed PodPhase = "Failed" - // PodUnknown means that for some reason the state of the pod could not be obtained, typically due - // to an error in communicating with the host of the pod. - PodUnknown PodPhase = "Unknown" -) - -type PodConditionType string - -// These are valid conditions of pod. -const ( - // PodScheduled represents status of the scheduling process for this pod. - PodScheduled PodConditionType = "PodScheduled" - // PodReady means the pod is able to service requests and should be added to the - // load balancing pools of all matching services. - PodReady PodConditionType = "Ready" - // PodInitialized means that all init containers in the pod have started successfully. - PodInitialized PodConditionType = "Initialized" - // PodReasonUnschedulable reason in PodScheduled PodCondition means that the scheduler - // can't schedule the pod right now, for example due to insufficient resources in the cluster. - PodReasonUnschedulable = "Unschedulable" -) - -type PodCondition struct { - Type PodConditionType - Status ConditionStatus - // +optional - LastProbeTime metav1.Time - // +optional - LastTransitionTime metav1.Time - // +optional - Reason string - // +optional - Message string -} - -// RestartPolicy describes how the container should be restarted. -// Only one of the following restart policies may be specified. -// If none of the following policies is specified, the default one -// is RestartPolicyAlways. -type RestartPolicy string - -const ( - RestartPolicyAlways RestartPolicy = "Always" - RestartPolicyOnFailure RestartPolicy = "OnFailure" - RestartPolicyNever RestartPolicy = "Never" -) - -// PodList is a list of Pods. -type PodList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []Pod -} - -// DNSPolicy defines how a pod's DNS will be configured. -type DNSPolicy string - -const ( - // DNSClusterFirstWithHostNet indicates that the pod should use cluster DNS - // first, if it is available, then fall back on the default - // (as determined by kubelet) DNS settings. - DNSClusterFirstWithHostNet DNSPolicy = "ClusterFirstWithHostNet" - - // DNSClusterFirst indicates that the pod should use cluster DNS - // first unless hostNetwork is true, if it is available, then - // fall back on the default (as determined by kubelet) DNS settings. - DNSClusterFirst DNSPolicy = "ClusterFirst" - - // DNSDefault indicates that the pod should use the default (as - // determined by kubelet) DNS settings. - DNSDefault DNSPolicy = "Default" -) - -// A node selector represents the union of the results of one or more label queries -// over a set of nodes; that is, it represents the OR of the selectors represented -// by the node selector terms. -type NodeSelector struct { - //Required. A list of node selector terms. The terms are ORed. - NodeSelectorTerms []NodeSelectorTerm -} - -// A null or empty node selector term matches no objects. -type NodeSelectorTerm struct { - //Required. A list of node selector requirements. The requirements are ANDed. - MatchExpressions []NodeSelectorRequirement -} - -// A node selector requirement is a selector that contains values, a key, and an operator -// that relates the key and values. -type NodeSelectorRequirement struct { - // The label key that the selector applies to. - Key string - // Represents a key's relationship to a set of values. - // Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. - Operator NodeSelectorOperator - // An array of string values. If the operator is In or NotIn, - // the values array must be non-empty. If the operator is Exists or DoesNotExist, - // the values array must be empty. If the operator is Gt or Lt, the values - // array must have a single element, which will be interpreted as an integer. - // This array is replaced during a strategic merge patch. - // +optional - Values []string -} - -// A node selector operator is the set of operators that can be used in -// a node selector requirement. -type NodeSelectorOperator string - -const ( - NodeSelectorOpIn NodeSelectorOperator = "In" - NodeSelectorOpNotIn NodeSelectorOperator = "NotIn" - NodeSelectorOpExists NodeSelectorOperator = "Exists" - NodeSelectorOpDoesNotExist NodeSelectorOperator = "DoesNotExist" - NodeSelectorOpGt NodeSelectorOperator = "Gt" - NodeSelectorOpLt NodeSelectorOperator = "Lt" -) - -// Affinity is a group of affinity scheduling rules. -type Affinity struct { - // Describes node affinity scheduling rules for the pod. - // +optional - NodeAffinity *NodeAffinity - // Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). - // +optional - PodAffinity *PodAffinity - // Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). - // +optional - PodAntiAffinity *PodAntiAffinity -} - -// Pod affinity is a group of inter pod affinity scheduling rules. -type PodAffinity struct { - // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - // If the affinity requirements specified by this field are not met at - // scheduling time, the pod will not be scheduled onto the node. - // If the affinity requirements specified by this field cease to be met - // at some point during pod execution (e.g. due to a pod label update), the - // system will try to eventually evict the pod from its node. - // When there are multiple elements, the lists of nodes corresponding to each - // podAffinityTerm are intersected, i.e. all terms must be satisfied. - // +optional - // RequiredDuringSchedulingRequiredDuringExecution []PodAffinityTerm - // If the affinity requirements specified by this field are not met at - // scheduling time, the pod will not be scheduled onto the node. - // If the affinity requirements specified by this field cease to be met - // at some point during pod execution (e.g. due to a pod label update), the - // system may or may not try to eventually evict the pod from its node. - // When there are multiple elements, the lists of nodes corresponding to each - // podAffinityTerm are intersected, i.e. all terms must be satisfied. - // +optional - RequiredDuringSchedulingIgnoredDuringExecution []PodAffinityTerm - // The scheduler will prefer to schedule pods to nodes that satisfy - // the affinity expressions specified by this field, but it may choose - // a node that violates one or more of the expressions. The node that is - // most preferred is the one with the greatest sum of weights, i.e. - // for each node that meets all of the scheduling requirements (resource - // request, requiredDuringScheduling affinity expressions, etc.), - // compute a sum by iterating through the elements of this field and adding - // "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the - // node(s) with the highest sum are the most preferred. - // +optional - PreferredDuringSchedulingIgnoredDuringExecution []WeightedPodAffinityTerm -} - -// Pod anti affinity is a group of inter pod anti affinity scheduling rules. -type PodAntiAffinity struct { - // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - // If the anti-affinity requirements specified by this field are not met at - // scheduling time, the pod will not be scheduled onto the node. - // If the anti-affinity requirements specified by this field cease to be met - // at some point during pod execution (e.g. due to a pod label update), the - // system will try to eventually evict the pod from its node. - // When there are multiple elements, the lists of nodes corresponding to each - // podAffinityTerm are intersected, i.e. all terms must be satisfied. - // +optional - // RequiredDuringSchedulingRequiredDuringExecution []PodAffinityTerm - // If the anti-affinity requirements specified by this field are not met at - // scheduling time, the pod will not be scheduled onto the node. - // If the anti-affinity requirements specified by this field cease to be met - // at some point during pod execution (e.g. due to a pod label update), the - // system may or may not try to eventually evict the pod from its node. - // When there are multiple elements, the lists of nodes corresponding to each - // podAffinityTerm are intersected, i.e. all terms must be satisfied. - // +optional - RequiredDuringSchedulingIgnoredDuringExecution []PodAffinityTerm - // The scheduler will prefer to schedule pods to nodes that satisfy - // the anti-affinity expressions specified by this field, but it may choose - // a node that violates one or more of the expressions. The node that is - // most preferred is the one with the greatest sum of weights, i.e. - // for each node that meets all of the scheduling requirements (resource - // request, requiredDuringScheduling anti-affinity expressions, etc.), - // compute a sum by iterating through the elements of this field and adding - // "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the - // node(s) with the highest sum are the most preferred. - // +optional - PreferredDuringSchedulingIgnoredDuringExecution []WeightedPodAffinityTerm -} - -// The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s) -type WeightedPodAffinityTerm struct { - // weight associated with matching the corresponding podAffinityTerm, - // in the range 1-100. - Weight int32 - // Required. A pod affinity term, associated with the corresponding weight. - PodAffinityTerm PodAffinityTerm -} - -// Defines a set of pods (namely those matching the labelSelector -// relative to the given namespace(s)) that this pod should be -// co-located (affinity) or not co-located (anti-affinity) with, -// where co-located is defined as running on a node whose value of -// the label with key matches that of any node on which -// a pod of the set of pods is running. -type PodAffinityTerm struct { - // A label query over a set of resources, in this case pods. - // +optional - LabelSelector *metav1.LabelSelector - // namespaces specifies which namespaces the labelSelector applies to (matches against); - // null or empty list means "this pod's namespace" - Namespaces []string - // This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching - // the labelSelector in the specified namespaces, where co-located is defined as running on a node - // whose value of the label with key topologyKey matches that of any node on which any of the - // selected pods is running. - // For PreferredDuringScheduling pod anti-affinity, empty topologyKey is interpreted as "all topologies" - // ("all topologies" here means all the topologyKeys indicated by scheduler command-line argument --failure-domains); - // for affinity and for RequiredDuringScheduling pod anti-affinity, empty topologyKey is not allowed. - // +optional - TopologyKey string -} - -// Node affinity is a group of node affinity scheduling rules. -type NodeAffinity struct { - // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - // If the affinity requirements specified by this field are not met at - // scheduling time, the pod will not be scheduled onto the node. - // If the affinity requirements specified by this field cease to be met - // at some point during pod execution (e.g. due to an update), the system - // will try to eventually evict the pod from its node. - // +optional - // RequiredDuringSchedulingRequiredDuringExecution *NodeSelector - - // If the affinity requirements specified by this field are not met at - // scheduling time, the pod will not be scheduled onto the node. - // If the affinity requirements specified by this field cease to be met - // at some point during pod execution (e.g. due to an update), the system - // may or may not try to eventually evict the pod from its node. - // +optional - RequiredDuringSchedulingIgnoredDuringExecution *NodeSelector - // The scheduler will prefer to schedule pods to nodes that satisfy - // the affinity expressions specified by this field, but it may choose - // a node that violates one or more of the expressions. The node that is - // most preferred is the one with the greatest sum of weights, i.e. - // for each node that meets all of the scheduling requirements (resource - // request, requiredDuringScheduling affinity expressions, etc.), - // compute a sum by iterating through the elements of this field and adding - // "weight" to the sum if the node matches the corresponding matchExpressions; the - // node(s) with the highest sum are the most preferred. - // +optional - PreferredDuringSchedulingIgnoredDuringExecution []PreferredSchedulingTerm -} - -// An empty preferred scheduling term matches all objects with implicit weight 0 -// (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op). -type PreferredSchedulingTerm struct { - // Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100. - Weight int32 - // A node selector term, associated with the corresponding weight. - Preference NodeSelectorTerm -} - -// The node this Taint is attached to has the effect "effect" on -// any pod that that does not tolerate the Taint. -type Taint struct { - // Required. The taint key to be applied to a node. - Key string - // Required. The taint value corresponding to the taint key. - // +optional - Value string - // Required. The effect of the taint on pods - // that do not tolerate the taint. - // Valid effects are NoSchedule, PreferNoSchedule and NoExecute. - Effect TaintEffect - // TimeAdded represents the time at which the taint was added. - // It is only written for NoExecute taints. - // +optional - TimeAdded metav1.Time -} - -type TaintEffect string - -const ( - // Do not allow new pods to schedule onto the node unless they tolerate the taint, - // but allow all pods submitted to Kubelet without going through the scheduler - // to start, and allow all already-running pods to continue running. - // Enforced by the scheduler. - TaintEffectNoSchedule TaintEffect = "NoSchedule" - // Like TaintEffectNoSchedule, but the scheduler tries not to schedule - // new pods onto the node, rather than prohibiting new pods from scheduling - // onto the node entirely. Enforced by the scheduler. - TaintEffectPreferNoSchedule TaintEffect = "PreferNoSchedule" - // NOT YET IMPLEMENTED. TODO: Uncomment field once it is implemented. - // Like TaintEffectNoSchedule, but additionally do not allow pods submitted to - // Kubelet without going through the scheduler to start. - // Enforced by Kubelet and the scheduler. - // TaintEffectNoScheduleNoAdmit TaintEffect = "NoScheduleNoAdmit" - // Evict any already-running pods that do not tolerate the taint. - // Currently enforced by NodeController. - TaintEffectNoExecute TaintEffect = "NoExecute" -) - -// The pod this Toleration is attached to tolerates any taint that matches -// the triple using the matching operator . -type Toleration struct { - // Key is the taint key that the toleration applies to. Empty means match all taint keys. - // If the key is empty, operator must be Exists; this combination means to match all values and all keys. - // +optional - Key string - // Operator represents a key's relationship to the value. - // Valid operators are Exists and Equal. Defaults to Equal. - // Exists is equivalent to wildcard for value, so that a pod can - // tolerate all taints of a particular category. - // +optional - Operator TolerationOperator - // Value is the taint value the toleration matches to. - // If the operator is Exists, the value should be empty, otherwise just a regular string. - // +optional - Value string - // Effect indicates the taint effect to match. Empty means match all taint effects. - // When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. - // +optional - Effect TaintEffect - // TolerationSeconds represents the period of time the toleration (which must be - // of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, - // it is not set, which means tolerate the taint forever (do not evict). Zero and - // negative values will be treated as 0 (evict immediately) by the system. - // +optional - TolerationSeconds *int64 -} - -// A toleration operator is the set of operators that can be used in a toleration. -type TolerationOperator string - -const ( - TolerationOpExists TolerationOperator = "Exists" - TolerationOpEqual TolerationOperator = "Equal" -) - -// PodSpec is a description of a pod -type PodSpec struct { - Volumes []Volume - // List of initialization containers belonging to the pod. - InitContainers []Container - // List of containers belonging to the pod. - Containers []Container - // +optional - RestartPolicy RestartPolicy - // Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request. - // Value must be non-negative integer. The value zero indicates delete immediately. - // If this value is nil, the default grace period will be used instead. - // The grace period is the duration in seconds after the processes running in the pod are sent - // a termination signal and the time when the processes are forcibly halted with a kill signal. - // Set this value longer than the expected cleanup time for your process. - // +optional - TerminationGracePeriodSeconds *int64 - // Optional duration in seconds relative to the StartTime that the pod may be active on a node - // before the system actively tries to terminate the pod; value must be positive integer - // +optional - ActiveDeadlineSeconds *int64 - // Required: Set DNS policy. - // +optional - DNSPolicy DNSPolicy - // NodeSelector is a selector which must be true for the pod to fit on a node - // +optional - NodeSelector map[string]string - - // ServiceAccountName is the name of the ServiceAccount to use to run this pod - // The pod will be allowed to use secrets referenced by the ServiceAccount - ServiceAccountName string - // AutomountServiceAccountToken indicates whether a service account token should be automatically mounted. - // +optional - AutomountServiceAccountToken *bool - - // NodeName is a request to schedule this pod onto a specific node. If it is non-empty, - // the scheduler simply schedules this pod onto that node, assuming that it fits resource - // requirements. - // +optional - NodeName string - // SecurityContext holds pod-level security attributes and common container settings. - // Optional: Defaults to empty. See type description for default values of each field. - // +optional - SecurityContext *PodSecurityContext - // ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. - // If specified, these secrets will be passed to individual puller implementations for them to use. For example, - // in the case of docker, only DockerConfig type secrets are honored. - // +optional - ImagePullSecrets []LocalObjectReference - // Specifies the hostname of the Pod. - // If not specified, the pod's hostname will be set to a system-defined value. - // +optional - Hostname string - // If specified, the fully qualified Pod hostname will be "...svc.". - // If not specified, the pod will not have a domainname at all. - // +optional - Subdomain string - // If specified, the pod's scheduling constraints - // +optional - Affinity *Affinity - // If specified, the pod will be dispatched by specified scheduler. - // If not specified, the pod will be dispatched by default scheduler. - // +optional - SchedulerName string - // If specified, the pod's tolerations. - // +optional - Tolerations []Toleration - // HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts - // file if specified. This is only valid for non-hostNetwork pods. - // +optional - HostAliases []HostAlias -} - -// HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the -// pod's hosts file. -type HostAlias struct { - IP string - Hostnames []string -} - -// Sysctl defines a kernel parameter to be set -type Sysctl struct { - // Name of a property to set - Name string - // Value of a property to set - Value string -} - -// PodSecurityContext holds pod-level security attributes and common container settings. -// Some fields are also present in container.securityContext. Field values of -// container.securityContext take precedence over field values of PodSecurityContext. -type PodSecurityContext struct { - // Use the host's network namespace. If this option is set, the ports that will be - // used must be specified. - // Optional: Default to false - // +k8s:conversion-gen=false - // +optional - HostNetwork bool - // Use the host's pid namespace. - // Optional: Default to false. - // +k8s:conversion-gen=false - // +optional - HostPID bool - // Use the host's ipc namespace. - // Optional: Default to false. - // +k8s:conversion-gen=false - // +optional - HostIPC bool - // The SELinux context to be applied to all containers. - // If unspecified, the container runtime will allocate a random SELinux context for each - // container. May also be set in SecurityContext. If set in - // both SecurityContext and PodSecurityContext, the value specified in SecurityContext - // takes precedence for that container. - // +optional - SELinuxOptions *SELinuxOptions - // The UID to run the entrypoint of the container process. - // Defaults to user specified in image metadata if unspecified. - // May also be set in SecurityContext. If set in both SecurityContext and - // PodSecurityContext, the value specified in SecurityContext takes precedence - // for that container. - // +optional - RunAsUser *types.UnixUserID - // Indicates that the container must run as a non-root user. - // If true, the Kubelet will validate the image at runtime to ensure that it - // does not run as UID 0 (root) and fail to start the container if it does. - // If unset or false, no such validation will be performed. - // May also be set in SecurityContext. If set in both SecurityContext and - // PodSecurityContext, the value specified in SecurityContext takes precedence. - // +optional - RunAsNonRoot *bool - // A list of groups applied to the first process run in each container, in addition - // to the container's primary GID. If unspecified, no groups will be added to - // any container. - // +optional - SupplementalGroups []types.UnixGroupID - // A special supplemental group that applies to all containers in a pod. - // Some volume types allow the Kubelet to change the ownership of that volume - // to be owned by the pod: - // - // 1. The owning GID will be the FSGroup - // 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) - // 3. The permission bits are OR'd with rw-rw---- - // - // If unset, the Kubelet will not modify the ownership and permissions of any volume. - // +optional - FSGroup *types.UnixGroupID -} - -// PodQOSClass defines the supported qos classes of Pods. -type PodQOSClass string - -const ( - // PodQOSGuaranteed is the Guaranteed qos class. - PodQOSGuaranteed PodQOSClass = "Guaranteed" - // PodQOSBurstable is the Burstable qos class. - PodQOSBurstable PodQOSClass = "Burstable" - // PodQOSBestEffort is the BestEffort qos class. - PodQOSBestEffort PodQOSClass = "BestEffort" -) - -// PodStatus represents information about the status of a pod. Status may trail the actual -// state of a system. -type PodStatus struct { - // +optional - Phase PodPhase - // +optional - Conditions []PodCondition - // A human readable message indicating details about why the pod is in this state. - // +optional - Message string - // A brief CamelCase message indicating details about why the pod is in this state. e.g. 'OutOfDisk' - // +optional - Reason string - - // +optional - HostIP string - // +optional - PodIP string - - // Date and time at which the object was acknowledged by the Kubelet. - // This is before the Kubelet pulled the container image(s) for the pod. - // +optional - StartTime *metav1.Time - // +optional - QOSClass PodQOSClass - - // The list has one entry per init container in the manifest. The most recent successful - // init container will have ready = true, the most recently started container will have - // startTime set. - // More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-and-container-status - InitContainerStatuses []ContainerStatus - // The list has one entry per container in the manifest. Each entry is - // currently the output of `docker inspect`. This output format is *not* - // final and should not be relied upon. - // TODO: Make real decisions about what our info should look like. Re-enable fuzz test - // when we have done this. - // +optional - ContainerStatuses []ContainerStatus -} - -// PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded -type PodStatusResult struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - // Status represents the current information about a pod. This data may not be up - // to date. - // +optional - Status PodStatus -} - -// +genclient=true - -// Pod is a collection of containers, used as either input (create, update) or as output (list, get). -type Pod struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the behavior of a pod. - // +optional - Spec PodSpec - - // Status represents the current information about a pod. This data may not be up - // to date. - // +optional - Status PodStatus -} - -// PodTemplateSpec describes the data a pod should have when created from a template -type PodTemplateSpec struct { - // Metadata of the pods created from this template. - // +optional - metav1.ObjectMeta - - // Spec defines the behavior of a pod. - // +optional - Spec PodSpec -} - -// +genclient=true - -// PodTemplate describes a template for creating copies of a predefined pod. -type PodTemplate struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Template defines the pods that will be created from this pod template - // +optional - Template PodTemplateSpec -} - -// PodTemplateList is a list of PodTemplates. -type PodTemplateList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []PodTemplate -} - -// ReplicationControllerSpec is the specification of a replication controller. -// As the internal representation of a replication controller, it may have either -// a TemplateRef or a Template set. -type ReplicationControllerSpec struct { - // Replicas is the number of desired replicas. - Replicas int32 - - // Minimum number of seconds for which a newly created 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) - // +optional - MinReadySeconds int32 - - // Selector is a label query over pods that should match the Replicas count. - Selector map[string]string - - // TemplateRef is a reference to an object that describes the pod that will be created if - // insufficient replicas are detected. This reference is ignored if a Template is set. - // Must be set before converting to a versioned API object - // +optional - //TemplateRef *ObjectReference - - // Template is the object that describes the pod that will be created if - // insufficient replicas are detected. Internally, this takes precedence over a - // TemplateRef. - // +optional - Template *PodTemplateSpec -} - -// ReplicationControllerStatus represents the current status of a replication -// controller. -type ReplicationControllerStatus struct { - // Replicas is the number of actual replicas. - Replicas int32 - - // The number of pods that have labels matching the labels of the pod template of the replication controller. - // +optional - FullyLabeledReplicas int32 - - // The number of ready replicas for this replication controller. - // +optional - ReadyReplicas int32 - - // The number of available replicas (ready for at least minReadySeconds) for this replication controller. - // +optional - AvailableReplicas int32 - - // ObservedGeneration is the most recent generation observed by the controller. - // +optional - ObservedGeneration int64 - - // Represents the latest available observations of a replication controller's current state. - // +optional - Conditions []ReplicationControllerCondition -} - -type ReplicationControllerConditionType string - -// These are valid conditions of a replication controller. -const ( - // ReplicationControllerReplicaFailure is added in a replication controller when one of its pods - // fails to be created due to insufficient quota, limit ranges, pod security policy, node selectors, - // etc. or deleted due to kubelet being down or finalizers are failing. - ReplicationControllerReplicaFailure ReplicationControllerConditionType = "ReplicaFailure" -) - -// ReplicationControllerCondition describes the state of a replication controller at a certain point. -type ReplicationControllerCondition struct { - // Type of replication controller condition. - Type ReplicationControllerConditionType - // Status of the condition, one of True, False, Unknown. - Status ConditionStatus - // The last time the condition transitioned from one status to another. - // +optional - LastTransitionTime metav1.Time - // The reason for the condition's last transition. - // +optional - Reason string - // A human readable message indicating details about the transition. - // +optional - Message string -} - -// +genclient=true - -// ReplicationController represents the configuration of a replication controller. -type ReplicationController struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the desired behavior of this replication controller. - // +optional - Spec ReplicationControllerSpec - - // Status is the current status of this replication controller. This data may be - // out of date by some window of time. - // +optional - Status ReplicationControllerStatus -} - -// ReplicationControllerList is a collection of replication controllers. -type ReplicationControllerList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []ReplicationController -} - -const ( - // ClusterIPNone - do not assign a cluster IP - // no proxying required and no environment variables should be created for pods - ClusterIPNone = "None" -) - -// ServiceList holds a list of services. -type ServiceList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []Service -} - -// Session Affinity Type string -type ServiceAffinity string - -const ( - // ServiceAffinityClientIP is the Client IP based. - ServiceAffinityClientIP ServiceAffinity = "ClientIP" - - // ServiceAffinityNone - no session affinity. - ServiceAffinityNone ServiceAffinity = "None" -) - -// Service Type string describes ingress methods for a service -type ServiceType string - -const ( - // ServiceTypeClusterIP means a service will only be accessible inside the - // cluster, via the ClusterIP. - ServiceTypeClusterIP ServiceType = "ClusterIP" - - // ServiceTypeNodePort means a service will be exposed on one port of - // every node, in addition to 'ClusterIP' type. - ServiceTypeNodePort ServiceType = "NodePort" - - // ServiceTypeLoadBalancer means a service will be exposed via an - // external load balancer (if the cloud provider supports it), in addition - // to 'NodePort' type. - ServiceTypeLoadBalancer ServiceType = "LoadBalancer" - - // ServiceTypeExternalName means a service consists of only a reference to - // an external name that kubedns or equivalent will return as a CNAME - // record, with no exposing or proxying of any pods involved. - ServiceTypeExternalName ServiceType = "ExternalName" -) - -// Service External Traffic Policy Type string -type ServiceExternalTrafficPolicyType string - -const ( - // ServiceExternalTrafficPolicyTypeLocal specifies node-local endpoints behavior. - ServiceExternalTrafficPolicyTypeLocal ServiceExternalTrafficPolicyType = "Local" - // ServiceExternalTrafficPolicyTypeCluster specifies cluster-wide (legacy) behavior. - ServiceExternalTrafficPolicyTypeCluster ServiceExternalTrafficPolicyType = "Cluster" -) - -// ServiceStatus represents the current status of a service -type ServiceStatus struct { - // LoadBalancer contains the current status of the load-balancer, - // if one is present. - // +optional - LoadBalancer LoadBalancerStatus -} - -// LoadBalancerStatus represents the status of a load-balancer -type LoadBalancerStatus struct { - // Ingress is a list containing ingress points for the load-balancer; - // traffic intended for the service should be sent to these ingress points. - // +optional - Ingress []LoadBalancerIngress -} - -// LoadBalancerIngress represents the status of a load-balancer ingress point: -// traffic intended for the service should be sent to an ingress point. -type LoadBalancerIngress struct { - // IP is set for load-balancer ingress points that are IP based - // (typically GCE or OpenStack load-balancers) - // +optional - IP string - - // Hostname is set for load-balancer ingress points that are DNS based - // (typically AWS load-balancers) - // +optional - Hostname string -} - -// ServiceSpec describes the attributes that a user creates on a service -type ServiceSpec struct { - // Type determines how the Service is exposed. Defaults to ClusterIP. Valid - // options are ExternalName, ClusterIP, NodePort, and LoadBalancer. - // "ExternalName" maps to the specified externalName. - // "ClusterIP" allocates a cluster-internal IP address for load-balancing to - // endpoints. Endpoints are determined by the selector or if that is not - // specified, by manual construction of an Endpoints object. If clusterIP is - // "None", no virtual IP is allocated and the endpoints are published as a - // set of endpoints rather than a stable IP. - // "NodePort" builds on ClusterIP and allocates a port on every node which - // routes to the clusterIP. - // "LoadBalancer" builds on NodePort and creates an - // external load-balancer (if supported in the current cloud) which routes - // to the clusterIP. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/ - // +optional - Type ServiceType - - // Required: The list of ports that are exposed by this service. - Ports []ServicePort - - // Route service traffic to pods with label keys and values matching this - // selector. If empty or not present, the service is assumed to have an - // external process managing its endpoints, which Kubernetes will not - // modify. Only applies to types ClusterIP, NodePort, and LoadBalancer. - // Ignored if type is ExternalName. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/ - Selector map[string]string - - // ClusterIP is the IP address of the service and is usually assigned - // randomly by the master. If an address is specified manually and is not in - // use by others, it will be allocated to the service; otherwise, creation - // of the service will fail. This field can not be changed through updates. - // Valid values are "None", empty string (""), or a valid IP address. "None" - // can be specified for headless services when proxying is not required. - // Only applies to types ClusterIP, NodePort, and LoadBalancer. Ignored if - // type is ExternalName. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - // +optional - ClusterIP string - - // 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. - ExternalName string - - // ExternalIPs are used by external load balancers, or can be set by - // users to handle external traffic that arrives at a node. - // +optional - ExternalIPs []string - - // 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. - // +optional - LoadBalancerIP string - - // Optional: Supports "ClientIP" and "None". Used to maintain session affinity. - // +optional - SessionAffinity ServiceAffinity - - // Optional: 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." - // +optional - LoadBalancerSourceRanges []string - - // 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 - - // 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. - // +optional - HealthCheckNodePort int32 -} - -type ServicePort struct { - // Optional if only one ServicePort is defined on this service: The - // name of this port within the service. This must be a DNS_LABEL. - // All ports within a ServiceSpec must have unique names. This maps to - // the 'Name' field in EndpointPort objects. - Name string - - // The IP protocol for this port. Supports "TCP" and "UDP". - Protocol Protocol - - // The port that will be exposed on the service. - Port int32 - - // Optional: The target port on pods selected by this service. If this - // is a string, it will be looked up as a named port in the target - // Pod's container ports. If this is not specified, the value - // of the 'port' field is used (an identity map). - // This field is ignored for services with clusterIP=None, and should be - // omitted or set equal to the 'port' field. - TargetPort intstr.IntOrString - - // The port on each node on which this service is exposed. - // Default is to auto-allocate a port if the ServiceType of this Service requires one. - NodePort int32 -} - -// +genclient=true - -// 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. -type Service struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the behavior of a service. - // +optional - Spec ServiceSpec - - // Status represents the current status of a service. - // +optional - Status ServiceStatus -} - -// +genclient=true - -// 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 -type ServiceAccount struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Secrets is the list of secrets allowed to be used by pods running using this ServiceAccount - Secrets []ObjectReference - - // 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. - // +optional - ImagePullSecrets []LocalObjectReference - - // AutomountServiceAccountToken indicates whether pods running as this service account should have an API token automatically mounted. - // Can be overridden at the pod level. - // +optional - AutomountServiceAccountToken *bool -} - -// ServiceAccountList is a list of ServiceAccount objects -type ServiceAccountList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []ServiceAccount -} - -// +genclient=true - -// Endpoints is a collection of endpoints that implement the actual service. Example: -// Name: "mysvc", -// Subsets: [ -// { -// Addresses: [{"ip": "10.10.1.1"}, {"ip": "10.10.2.2"}], -// Ports: [{"name": "a", "port": 8675}, {"name": "b", "port": 309}] -// }, -// { -// Addresses: [{"ip": "10.10.3.3"}], -// Ports: [{"name": "a", "port": 93}, {"name": "b", "port": 76}] -// }, -// ] -type Endpoints struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // The set of all endpoints is the union of all subsets. - Subsets []EndpointSubset -} - -// EndpointSubset is a group of addresses with a common set of ports. The -// expanded set of endpoints is the Cartesian product of Addresses x Ports. -// For example, given: -// { -// Addresses: [{"ip": "10.10.1.1"}, {"ip": "10.10.2.2"}], -// Ports: [{"name": "a", "port": 8675}, {"name": "b", "port": 309}] -// } -// The resulting set of endpoints can be viewed as: -// a: [ 10.10.1.1:8675, 10.10.2.2:8675 ], -// b: [ 10.10.1.1:309, 10.10.2.2:309 ] -type EndpointSubset struct { - Addresses []EndpointAddress - NotReadyAddresses []EndpointAddress - Ports []EndpointPort -} - -// EndpointAddress is a tuple that describes single IP address. -type EndpointAddress struct { - // The IP of this endpoint. - // IPv6 is also accepted but not fully supported on all platforms. Also, certain - // kubernetes components, like kube-proxy, are not IPv6 ready. - // TODO: This should allow hostname or IP, see #4447. - IP string - // Optional: Hostname of this endpoint - // Meant to be used by DNS servers etc. - // +optional - Hostname string - // Optional: Node hosting this endpoint. This can be used to determine endpoints local to a node. - // +optional - NodeName *string - // Optional: The kubernetes object related to the entry point. - TargetRef *ObjectReference -} - -// EndpointPort is a tuple that describes a single port. -type EndpointPort struct { - // The name of this port (corresponds to ServicePort.Name). Optional - // if only one port is defined. Must be a DNS_LABEL. - Name string - - // The port number. - Port int32 - - // The IP protocol for this port. - Protocol Protocol -} - -// EndpointsList is a list of endpoints. -type EndpointsList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []Endpoints -} - -// NodeSpec describes the attributes that a node is created with. -type NodeSpec struct { - // PodCIDR represents the pod IP range assigned to the node - // Note: assigning IP ranges to nodes might need to be revisited when we support migratable IPs. - // +optional - PodCIDR string - - // External ID of the node assigned by some machine database (e.g. a cloud provider) - // +optional - ExternalID string - - // ID of the node assigned by the cloud provider - // Note: format is "://" - // +optional - ProviderID string - - // Unschedulable controls node schedulability of new pods. By default node is schedulable. - // +optional - Unschedulable bool - - // If specified, the node's taints. - // +optional - Taints []Taint -} - -// DaemonEndpoint contains information about a single Daemon endpoint. -type DaemonEndpoint struct { - /* - The port tag was not properly in quotes in earlier releases, so it must be - uppercased for backwards compat (since it was falling back to var name of - 'Port'). - */ - - // Port number of the given endpoint. - Port int32 -} - -// NodeDaemonEndpoints lists ports opened by daemons running on the Node. -type NodeDaemonEndpoints struct { - // Endpoint on which Kubelet is listening. - // +optional - KubeletEndpoint DaemonEndpoint -} - -// 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 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 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. - BootID string - // Kernel Version reported by the node. - KernelVersion string - // OS Image reported by the node. - OSImage string - // ContainerRuntime Version reported by the node. - ContainerRuntimeVersion string - // Kubelet Version reported by the node. - KubeletVersion string - // KubeProxy Version reported by the node. - KubeProxyVersion string - // The Operating System reported by the node - OperatingSystem string - // The Architecture reported by the node - Architecture string -} - -// NodeStatus is information about the current status of a node. -type NodeStatus struct { - // Capacity represents the total resources of a node. - // +optional - Capacity ResourceList - // Allocatable represents the resources of a node that are available for scheduling. - // +optional - Allocatable ResourceList - // NodePhase is the current lifecycle phase of the node. - // +optional - Phase NodePhase - // Conditions is an array of current node conditions. - // +optional - Conditions []NodeCondition - // Queried from cloud provider, if available. - // +optional - Addresses []NodeAddress - // Endpoints of daemons running on the Node. - // +optional - DaemonEndpoints NodeDaemonEndpoints - // Set of ids/uuids to uniquely identify the node. - // +optional - NodeInfo NodeSystemInfo - // List of container images on this node - // +optional - Images []ContainerImage - // List of attachable volumes in use (mounted) by the node. - // +optional - VolumesInUse []UniqueVolumeName - // List of volumes that are attached to the node. - // +optional - VolumesAttached []AttachedVolume -} - -type UniqueVolumeName string - -// AttachedVolume describes a volume attached to a node -type AttachedVolume struct { - // Name of the attached volume - Name UniqueVolumeName - - // DevicePath represents the device path where the volume should be available - DevicePath string -} - -// AvoidPods describes pods that should avoid this node. This is the value for a -// Node annotation with key scheduler.alpha.kubernetes.io/preferAvoidPods and -// will eventually become a field of NodeStatus. -type AvoidPods struct { - // Bounded-sized list of signatures of pods that should avoid this node, sorted - // in timestamp order from oldest to newest. Size of the slice is unspecified. - // +optional - PreferAvoidPods []PreferAvoidPodsEntry -} - -// Describes a class of pods that should avoid this node. -type PreferAvoidPodsEntry struct { - // The class of pods. - PodSignature PodSignature - // Time at which this entry was added to the list. - // +optional - EvictionTime metav1.Time - // (brief) reason why this entry was added to the list. - // +optional - Reason string - // Human readable message indicating why this entry was added to the list. - // +optional - Message string -} - -// Describes the class of pods that should avoid this node. -// Exactly one field should be set. -type PodSignature struct { - // Reference to controller whose pods should avoid this node. - // +optional - PodController *metav1.OwnerReference -} - -// Describe a container image -type ContainerImage struct { - // Names by which this image is known. - Names []string - // The size of the image in bytes. - // +optional - SizeBytes int64 -} - -type NodePhase string - -// These are the valid phases of node. -const ( - // NodePending means the node has been created/added by the system, but not configured. - NodePending NodePhase = "Pending" - // NodeRunning means the node has been configured and has Kubernetes components running. - NodeRunning NodePhase = "Running" - // NodeTerminated means the node has been removed from the cluster. - NodeTerminated NodePhase = "Terminated" -) - -type NodeConditionType string - -// These are valid conditions of node. Currently, we don't have enough information to decide -// node condition. In the future, we will add more. The proposed set of conditions are: -// NodeReady, NodeReachable -const ( - // NodeReady means kubelet is healthy and ready to accept pods. - NodeReady NodeConditionType = "Ready" - // NodeOutOfDisk means the kubelet will not accept new pods due to insufficient free disk - // space on the node. - NodeOutOfDisk NodeConditionType = "OutOfDisk" - // NodeMemoryPressure means the kubelet is under pressure due to insufficient available memory. - NodeMemoryPressure NodeConditionType = "MemoryPressure" - // NodeDiskPressure means the kubelet is under pressure due to insufficient available disk. - NodeDiskPressure NodeConditionType = "DiskPressure" - // NodeNetworkUnavailable means that network for the node is not correctly configured. - NodeNetworkUnavailable NodeConditionType = "NetworkUnavailable" -) - -type NodeCondition struct { - Type NodeConditionType - Status ConditionStatus - // +optional - LastHeartbeatTime metav1.Time - // +optional - LastTransitionTime metav1.Time - // +optional - Reason string - // +optional - Message string -} - -type NodeAddressType string - -const ( - NodeHostName NodeAddressType = "Hostname" - NodeExternalIP NodeAddressType = "ExternalIP" - NodeInternalIP NodeAddressType = "InternalIP" - NodeExternalDNS NodeAddressType = "ExternalDNS" - NodeInternalDNS NodeAddressType = "InternalDNS" -) - -type NodeAddress struct { - Type NodeAddressType - Address string -} - -// NodeResources is an object for conveying resource information about a node. -// see http://releases.k8s.io/HEAD/docs/design/resources.md for more details. -type NodeResources struct { - // Capacity represents the available resources of a node - // +optional - Capacity ResourceList -} - -// ResourceName is the name identifying various resources in a ResourceList. -type ResourceName string - -// Resource names must be not more than 63 characters, consisting of upper- or lower-case alphanumeric characters, -// with the -, _, and . characters allowed anywhere, except the first or last character. -// The default convention, matching that for annotations, is to use lower-case names, with dashes, rather than -// camel case, separating compound words. -// Fully-qualified resource typenames are constructed from a DNS-style subdomain, followed by a slash `/` and a name. -const ( - // CPU, in cores. (500m = .5 cores) - ResourceCPU ResourceName = "cpu" - // Memory, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) - 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 -) - -const ( - // Namespace prefix for opaque counted resources (alpha). - ResourceOpaqueIntPrefix = "pod.alpha.kubernetes.io/opaque-int-resource-" -) - -// ResourceList is a set of (resource name, quantity) pairs. -type ResourceList map[ResourceName]resource.Quantity - -// +genclient=true -// +nonNamespaced=true - -// Node is a worker node in Kubernetes -// The name of the node according to etcd is in ObjectMeta.Name. -type Node struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the behavior of a node. - // +optional - Spec NodeSpec - - // Status describes the current status of a Node - // +optional - Status NodeStatus -} - -// NodeList is a list of nodes. -type NodeList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []Node -} - -// 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 - Finalizers []FinalizerName -} - -// FinalizerName is the name identifying a finalizer during namespace lifecycle. -type FinalizerName string - -// These are internal finalizer values to Kubernetes, must be qualified name unless defined here or -// in metav1. -const ( - FinalizerKubernetes FinalizerName = "kubernetes" -) - -// NamespaceStatus is information about the current status of a Namespace. -type NamespaceStatus struct { - // Phase is the current lifecycle phase of the namespace. - // +optional - Phase NamespacePhase -} - -type NamespacePhase string - -// These are the valid phases of a namespace. -const ( - // NamespaceActive means the namespace is available for use in the system - NamespaceActive NamespacePhase = "Active" - // NamespaceTerminating means the namespace is undergoing graceful termination - NamespaceTerminating NamespacePhase = "Terminating" -) - -// +genclient=true -// +nonNamespaced=true - -// A namespace provides a scope for Names. -// Use of multiple namespaces is optional -type Namespace struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the behavior of the Namespace. - // +optional - Spec NamespaceSpec - - // Status describes the current status of a Namespace - // +optional - Status NamespaceStatus -} - -// NamespaceList is a list of Namespaces. -type NamespaceList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []Namespace -} - -// 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. - // +optional - metav1.ObjectMeta - - // Target is the object to bind to. - Target ObjectReference -} - -// Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out. -type Preconditions struct { - // Specifies the target UID. - // +optional - UID *types.UID -} - -// DeletionPropagation decides whether and how garbage collection will be performed. -type DeletionPropagation string - -const ( - // Orphans the dependents. - DeletePropagationOrphan DeletionPropagation = "Orphan" - // Deletes the object from the key-value store, the garbage collector will delete the dependents in the background. - DeletePropagationBackground DeletionPropagation = "Background" - // The object exists in the key-value store until the garbage collector deletes all the dependents whose ownerReference.blockOwnerDeletion=true from the key-value store. - // API sever will put the "DeletingDependents" finalizer on the object, and sets its deletionTimestamp. - // This policy is cascading, i.e., the dependents will be deleted with Foreground. - DeletePropagationForeground DeletionPropagation = "Foreground" -) - -// DeleteOptions may be provided when deleting an API object -// DEPRECATED: This type has been moved to meta/v1 and will be removed soon. -type DeleteOptions struct { - metav1.TypeMeta - - // Optional duration in seconds before the object should be deleted. Value must be non-negative integer. - // The value zero indicates delete immediately. If this value is nil, the default grace period for the - // specified type will be used. - // +optional - GracePeriodSeconds *int64 - - // Must be fulfilled before a deletion is carried out. If not possible, a 409 Conflict status will be - // returned. - // +optional - Preconditions *Preconditions - - // Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. - // Should the dependent objects be orphaned. If true/false, the "orphan" - // finalizer will be added to/removed from the object's finalizers list. - // Either this field or PropagationPolicy may be set, but not both. - // +optional - OrphanDependents *bool - - // Whether and how garbage collection will be performed. - // Either this field or OrphanDependents may be set, but not both. - // The default policy is decided by the existing finalizer set in the - // metadata.finalizers and the resource-specific default policy. - // +optional - PropagationPolicy *DeletionPropagation -} - -// ListOptions is the query options to a standard REST list call, and has future support for -// watch calls. -// DEPRECATED: This type has been moved to meta/v1 and will be removed soon. -type ListOptions struct { - metav1.TypeMeta - - // A selector based on labels - LabelSelector labels.Selector - // A selector based on fields - FieldSelector fields.Selector - - // If true, partially initialized resources are included in the response. - IncludeUninitialized bool - - // If true, watch for changes to this list - Watch bool - // When specified with a watch call, shows changes that occur after that particular version of a resource. - // Defaults to changes from the beginning of history. - // When specified for list: - // - if unset, then the result is returned from remote storage based on quorum-read flag; - // - if it's 0, then we simply return what we currently have in cache, no guarantee; - // - if set to non zero, then the result is at least as fresh as given rv. - ResourceVersion string - // Timeout for the list/watch call. - TimeoutSeconds *int64 -} - -// PodLogOptions is the query options for a Pod's logs REST call -type PodLogOptions struct { - metav1.TypeMeta - - // Container for which to return logs - Container string - // If true, follow the logs for the pod - Follow bool - // If true, return previous terminated container logs - Previous bool - // A relative time in seconds before the current time from which to show logs. If this value - // precedes the time a pod was started, only logs since the pod start will be returned. - // If this value is in the future, no logs will be returned. - // Only one of sinceSeconds or sinceTime may be specified. - SinceSeconds *int64 - // An RFC3339 timestamp from which to show logs. If this value - // precedes the time a pod was started, only logs since the pod start will be returned. - // If this value is in the future, no logs will be returned. - // Only one of sinceSeconds or sinceTime may be specified. - SinceTime *metav1.Time - // If true, add an RFC3339 or RFC3339Nano timestamp at the beginning of every line - // of log output. - Timestamps bool - // If set, the number of lines from the end of the logs to show. If not specified, - // logs are shown from the creation of the container or sinceSeconds or sinceTime - TailLines *int64 - // If set, the number of bytes to read from the server before terminating the - // log output. This may not display a complete final line of logging, and may return - // slightly more or slightly less than the specified limit. - LimitBytes *int64 -} - -// PodAttachOptions is the query options to a Pod's remote attach call -// TODO: merge w/ PodExecOptions below for stdin, stdout, etc -type PodAttachOptions struct { - metav1.TypeMeta - - // Stdin if true indicates that stdin is to be redirected for the attach call - // +optional - Stdin bool - - // Stdout if true indicates that stdout is to be redirected for the attach call - // +optional - Stdout bool - - // Stderr if true indicates that stderr is to be redirected for the attach call - // +optional - Stderr bool - - // TTY if true indicates that a tty will be allocated for the attach call - // +optional - TTY bool - - // Container to attach to. - // +optional - Container string -} - -// PodExecOptions is the query options to a Pod's remote exec call -type PodExecOptions struct { - metav1.TypeMeta - - // Stdin if true indicates that stdin is to be redirected for the exec call - Stdin bool - - // Stdout if true indicates that stdout is to be redirected for the exec call - Stdout bool - - // Stderr if true indicates that stderr is to be redirected for the exec call - Stderr bool - - // TTY if true indicates that a tty will be allocated for the exec call - TTY bool - - // Container in which to execute the command. - Container string - - // Command is the remote command to execute; argv array; not executed within a shell. - Command []string -} - -// PodPortForwardOptions is the query options to a Pod's port forward call -type PodPortForwardOptions struct { - metav1.TypeMeta - - // The list of ports to forward - // +optional - Ports []int32 -} - -// PodProxyOptions is the query options to a Pod's proxy call -type PodProxyOptions struct { - metav1.TypeMeta - - // Path is the URL path to use for the current proxy request - Path string -} - -// NodeProxyOptions is the query options to a Node's proxy call -type NodeProxyOptions struct { - metav1.TypeMeta - - // Path is the URL path to use for the current proxy request - Path string -} - -// ServiceProxyOptions is the query options to a Service's proxy call. -type ServiceProxyOptions struct { - metav1.TypeMeta - - // Path is the part of URLs that include service endpoints, suffixes, - // and parameters to use for the current proxy request to service. - // For example, the whole request URL is - // http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q=user:kimchy. - // Path is _search?q=user:kimchy. - Path string -} - -// ObjectReference contains enough information to let you inspect or modify the referred object. -type ObjectReference struct { - // +optional - Kind string - // +optional - Namespace string - // +optional - Name string - // +optional - UID types.UID - // +optional - APIVersion string - // +optional - ResourceVersion string - - // Optional. If referring to a piece of an object instead of an entire object, this string - // should contain information to identify the sub-object. 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. - // TODO: this design is not final and this field is subject to change in the future. - // +optional - FieldPath string -} - -// LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. -type LocalObjectReference struct { - //TODO: Add other useful fields. apiVersion, kind, uid? - Name string -} - -type SerializedReference struct { - metav1.TypeMeta - // +optional - Reference ObjectReference -} - -type EventSource struct { - // Component from which the event is generated. - // +optional - Component string - // Node name on which the event is generated. - // +optional - Host string -} - -// Valid values for event types (new types could be added in future) -const ( - // Information only and will not cause any problems - EventTypeNormal string = "Normal" - // These events are to warn that something might go wrong - EventTypeWarning string = "Warning" -) - -// +genclient=true - -// Event is a report of an event somewhere in the cluster. -// TODO: Decide whether to store these separately or with the object they apply to. -type Event struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Required. The object that this event is about. - // +optional - InvolvedObject ObjectReference - - // Optional; this should be a short, machine understandable string that gives the reason - // for this event being generated. For example, if the event is reporting that a container - // can't start, the Reason might be "ImageNotFound". - // TODO: provide exact specification for format. - // +optional - Reason string - - // Optional. A human-readable description of the status of this operation. - // TODO: decide on maximum length. - // +optional - Message string - - // Optional. The component reporting this event. Should be a short machine understandable string. - // +optional - Source EventSource - - // The time at which the event was first recorded. (Time of server receipt is in TypeMeta.) - // +optional - FirstTimestamp metav1.Time - - // The time at which the most recent occurrence of this event was recorded. - // +optional - LastTimestamp metav1.Time - - // The number of times this event has occurred. - // +optional - Count int32 - - // Type of this event (Normal, Warning), new types could be added in the future. - // +optional - Type string -} - -// EventList is a list of events. -type EventList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []Event -} - -// List holds a list of objects, which may not be known by the server. -type List struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []runtime.Object -} - -// A type of object that is limited -type LimitType string - -const ( - // Limit that applies to all pods in a namespace - LimitTypePod LimitType = "Pod" - // Limit that applies to all containers in a namespace - LimitTypeContainer LimitType = "Container" - // Limit that applies to all persistent volume claims in a namespace - LimitTypePersistentVolumeClaim LimitType = "PersistentVolumeClaim" -) - -// LimitRangeItem defines a min/max usage limit for any resource that matches on kind -type LimitRangeItem struct { - // Type of resource that this limit applies to - // +optional - Type LimitType - // Max usage constraints on this kind by resource name - // +optional - Max ResourceList - // Min usage constraints on this kind by resource name - // +optional - Min ResourceList - // Default resource requirement limit value by resource name. - // +optional - Default ResourceList - // DefaultRequest resource requirement request value by resource name. - // +optional - DefaultRequest ResourceList - // MaxLimitRequestRatio represents the max burst value for the named resource - // +optional - MaxLimitRequestRatio ResourceList -} - -// LimitRangeSpec defines a min/max usage limit for resources that match on kind -type LimitRangeSpec struct { - // Limits is the list of LimitRangeItem objects that are enforced - Limits []LimitRangeItem -} - -// +genclient=true - -// LimitRange sets resource usage limits for each kind of resource in a Namespace -type LimitRange struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the limits enforced - // +optional - Spec LimitRangeSpec -} - -// LimitRangeList is a list of LimitRange items. -type LimitRangeList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - // Items is a list of LimitRange objects - Items []LimitRange -} - -// The following identify resource constants for Kubernetes object types -const ( - // Pods, number - ResourcePods ResourceName = "pods" - // Services, number - ResourceServices ResourceName = "services" - // ReplicationControllers, number - ResourceReplicationControllers ResourceName = "replicationcontrollers" - // ResourceQuotas, number - ResourceQuotas ResourceName = "resourcequotas" - // ResourceSecrets, number - ResourceSecrets ResourceName = "secrets" - // ResourceConfigMaps, number - ResourceConfigMaps ResourceName = "configmaps" - // ResourcePersistentVolumeClaims, number - ResourcePersistentVolumeClaims ResourceName = "persistentvolumeclaims" - // ResourceServicesNodePorts, number - ResourceServicesNodePorts ResourceName = "services.nodeports" - // ResourceServicesLoadBalancers, number - ResourceServicesLoadBalancers ResourceName = "services.loadbalancers" - // CPU request, in cores. (500m = .5 cores) - ResourceRequestsCPU ResourceName = "requests.cpu" - // Memory request, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) - ResourceRequestsMemory ResourceName = "requests.memory" - // Storage request, in bytes - ResourceRequestsStorage ResourceName = "requests.storage" - // CPU limit, in cores. (500m = .5 cores) - ResourceLimitsCPU ResourceName = "limits.cpu" - // Memory limit, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) - ResourceLimitsMemory ResourceName = "limits.memory" -) - -// A ResourceQuotaScope defines a filter that must match each object tracked by a quota -type ResourceQuotaScope string - -const ( - // Match all pod objects where spec.activeDeadlineSeconds - ResourceQuotaScopeTerminating ResourceQuotaScope = "Terminating" - // Match all pod objects where !spec.activeDeadlineSeconds - ResourceQuotaScopeNotTerminating ResourceQuotaScope = "NotTerminating" - // Match all pod objects that have best effort quality of service - ResourceQuotaScopeBestEffort ResourceQuotaScope = "BestEffort" - // Match all pod objects that do not have best effort quality of service - ResourceQuotaScopeNotBestEffort ResourceQuotaScope = "NotBestEffort" -) - -// 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 - // +optional - Hard ResourceList - // A collection of filters that must match each object tracked by a quota. - // If not specified, the quota matches all objects. - // +optional - Scopes []ResourceQuotaScope -} - -// ResourceQuotaStatus defines the enforced hard limits and observed use -type ResourceQuotaStatus struct { - // Hard is the set of enforced hard limits for each named resource - // +optional - Hard ResourceList - // Used is the current observed total usage of the resource in the namespace - // +optional - Used ResourceList -} - -// +genclient=true - -// ResourceQuota sets aggregate quota restrictions enforced per namespace -type ResourceQuota struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the desired quota - // +optional - Spec ResourceQuotaSpec - - // Status defines the actual enforced quota and its current usage - // +optional - Status ResourceQuotaStatus -} - -// ResourceQuotaList is a list of ResourceQuota items -type ResourceQuotaList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - // Items is a list of ResourceQuota objects - Items []ResourceQuota -} - -// +genclient=true - -// Secret holds secret data of a certain type. The total bytes of the values in -// the Data field must be less than MaxSecretSize bytes. -type Secret struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // 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. - // +optional - Data map[string][]byte - - // Used to facilitate programmatic handling of secret data. - // +optional - Type SecretType -} - -const MaxSecretSize = 1 * 1024 * 1024 - -type SecretType string - -const ( - // SecretTypeOpaque is the default; arbitrary user-defined data - SecretTypeOpaque SecretType = "Opaque" - - // SecretTypeServiceAccountToken contains a token that identifies a service account to the API - // - // Required fields: - // - Secret.Annotations["kubernetes.io/service-account.name"] - the name of the ServiceAccount the token identifies - // - Secret.Annotations["kubernetes.io/service-account.uid"] - the UID of the ServiceAccount the token identifies - // - Secret.Data["token"] - a token that identifies the service account to the API - SecretTypeServiceAccountToken SecretType = "kubernetes.io/service-account-token" - - // ServiceAccountNameKey is the key of the required annotation for SecretTypeServiceAccountToken secrets - ServiceAccountNameKey = "kubernetes.io/service-account.name" - // ServiceAccountUIDKey is the key of the required annotation for SecretTypeServiceAccountToken secrets - ServiceAccountUIDKey = "kubernetes.io/service-account.uid" - // ServiceAccountTokenKey is the key of the required data for SecretTypeServiceAccountToken secrets - ServiceAccountTokenKey = "token" - // ServiceAccountKubeconfigKey is the key of the optional kubeconfig data for SecretTypeServiceAccountToken secrets - ServiceAccountKubeconfigKey = "kubernetes.kubeconfig" - // ServiceAccountRootCAKey is the key of the optional root certificate authority for SecretTypeServiceAccountToken secrets - ServiceAccountRootCAKey = "ca.crt" - // ServiceAccountNamespaceKey is the key of the optional namespace to use as the default for namespaced API calls - ServiceAccountNamespaceKey = "namespace" - - // SecretTypeDockercfg contains a dockercfg file that follows the same format rules as ~/.dockercfg - // - // Required fields: - // - Secret.Data[".dockercfg"] - a serialized ~/.dockercfg file - SecretTypeDockercfg SecretType = "kubernetes.io/dockercfg" - - // DockerConfigKey is the key of the required data for SecretTypeDockercfg secrets - DockerConfigKey = ".dockercfg" - - // SecretTypeDockerConfigJson contains a dockercfg file that follows the same format rules as ~/.docker/config.json - // - // Required fields: - // - Secret.Data[".dockerconfigjson"] - a serialized ~/.docker/config.json file - SecretTypeDockerConfigJson SecretType = "kubernetes.io/dockerconfigjson" - - // DockerConfigJsonKey is the key of the required data for SecretTypeDockerConfigJson secrets - DockerConfigJsonKey = ".dockerconfigjson" - - // SecretTypeBasicAuth contains data needed for basic authentication. - // - // Required at least one of fields: - // - Secret.Data["username"] - username used for authentication - // - Secret.Data["password"] - password or token needed for authentication - SecretTypeBasicAuth SecretType = "kubernetes.io/basic-auth" - - // BasicAuthUsernameKey is the key of the username for SecretTypeBasicAuth secrets - BasicAuthUsernameKey = "username" - // BasicAuthPasswordKey is the key of the password or token for SecretTypeBasicAuth secrets - BasicAuthPasswordKey = "password" - - // SecretTypeSSHAuth contains data needed for SSH authetication. - // - // Required field: - // - Secret.Data["ssh-privatekey"] - private SSH key needed for authentication - SecretTypeSSHAuth SecretType = "kubernetes.io/ssh-auth" - - // SSHAuthPrivateKey is the key of the required SSH private key for SecretTypeSSHAuth secrets - SSHAuthPrivateKey = "ssh-privatekey" - - // SecretTypeTLS contains information about a TLS client or server secret. It - // is primarily used with TLS termination of the Ingress resource, but may be - // used in other types. - // - // Required fields: - // - Secret.Data["tls.key"] - TLS private key. - // Secret.Data["tls.crt"] - TLS certificate. - // TODO: Consider supporting different formats, specifying CA/destinationCA. - SecretTypeTLS SecretType = "kubernetes.io/tls" - - // TLSCertKey is the key for tls certificates in a TLS secret. - TLSCertKey = "tls.crt" - // TLSPrivateKeyKey is the key for the private key field in a TLS secret. - TLSPrivateKeyKey = "tls.key" -) - -type SecretList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []Secret -} - -// +genclient=true - -// ConfigMap holds configuration data for components or applications to consume. -type ConfigMap struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Data contains the configuration data. - // Each key must consist of alphanumeric characters, '-', '_' or '.'. - // +optional - Data map[string]string -} - -// ConfigMapList is a resource containing a list of ConfigMap objects. -type ConfigMapList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - // Items is the list of ConfigMaps. - Items []ConfigMap -} - -// These constants are for remote command execution and port forwarding and are -// used by both the client side and server side components. -// -// This is probably not the ideal place for them, but it didn't seem worth it -// to create pkg/exec and pkg/portforward just to contain a single file with -// constants in it. Suggestions for more appropriate alternatives are -// definitely welcome! -const ( - // Enable stdin for remote command execution - ExecStdinParam = "input" - // Enable stdout for remote command execution - ExecStdoutParam = "output" - // Enable stderr for remote command execution - ExecStderrParam = "error" - // Enable TTY for remote command execution - ExecTTYParam = "tty" - // Command to run for remote command execution - ExecCommandParamm = "command" - - // Name of header that specifies stream type - StreamType = "streamType" - // Value for streamType header for stdin stream - StreamTypeStdin = "stdin" - // Value for streamType header for stdout stream - StreamTypeStdout = "stdout" - // Value for streamType header for stderr stream - StreamTypeStderr = "stderr" - // Value for streamType header for data stream - StreamTypeData = "data" - // Value for streamType header for error stream - StreamTypeError = "error" - // Value for streamType header for terminal resize stream - StreamTypeResize = "resize" - - // Name of header that specifies the port being forwarded - PortHeader = "port" - // Name of header that specifies a request ID used to associate the error - // and data streams for a single forwarded connection - PortForwardRequestIDHeader = "requestID" -) - -// Type and constants for component health validation. -type ComponentConditionType string - -// These are the valid conditions for the component. -const ( - ComponentHealthy ComponentConditionType = "Healthy" -) - -type ComponentCondition struct { - Type ComponentConditionType - Status ConditionStatus - // +optional - Message string - // +optional - Error string -} - -// +genclient=true -// +nonNamespaced=true - -// ComponentStatus (and ComponentStatusList) holds the cluster validation info. -type ComponentStatus struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // +optional - Conditions []ComponentCondition -} - -type ComponentStatusList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []ComponentStatus -} - -// SecurityContext holds security configuration that will be applied to a container. -// Some fields are present in both SecurityContext and PodSecurityContext. When both -// are set, the values in SecurityContext take precedence. -type SecurityContext struct { - // The capabilities to add/drop when running containers. - // Defaults to the default set of capabilities granted by the container runtime. - // +optional - Capabilities *Capabilities - // Run container in privileged mode. - // Processes in privileged containers are essentially equivalent to root on the host. - // Defaults to false. - // +optional - Privileged *bool - // The SELinux context to be applied to the container. - // If unspecified, the container runtime will allocate a random SELinux context for each - // container. May also be set in PodSecurityContext. If set in both SecurityContext and - // PodSecurityContext, the value specified in SecurityContext takes precedence. - // +optional - SELinuxOptions *SELinuxOptions - // The UID to run the entrypoint of the container process. - // Defaults to user specified in image metadata if unspecified. - // May also be set in PodSecurityContext. If set in both SecurityContext and - // PodSecurityContext, the value specified in SecurityContext takes precedence. - // +optional - RunAsUser *types.UnixUserID - // Indicates that the container must run as a non-root user. - // If true, the Kubelet will validate the image at runtime to ensure that it - // does not run as UID 0 (root) and fail to start the container if it does. - // If unset or false, no such validation will be performed. - // May also be set in PodSecurityContext. If set in both SecurityContext and - // PodSecurityContext, the value specified in SecurityContext takes precedence. - // +optional - RunAsNonRoot *bool - // The read-only root filesystem allows you to restrict the locations that an application can write - // files to, ensuring the persistent data can only be written to mounts. - // +optional - ReadOnlyRootFilesystem *bool -} - -// SELinuxOptions are the labels to be applied to the container. -type SELinuxOptions struct { - // SELinux user label - // +optional - User string - // SELinux role label - // +optional - Role string - // SELinux type label - // +optional - Type string - // SELinux level label. - // +optional - Level string -} - -// RangeAllocation is an opaque API object (not exposed to end users) that can be persisted to record -// the global allocation state of the cluster. The schema of Range and Data generic, in that Range -// should be a string representation of the inputs to a range (for instance, for IP allocation it -// might be a CIDR) and Data is an opaque blob understood by an allocator which is typically a -// binary range. Consumers should use annotations to record additional information (schema version, -// data encoding hints). A range allocation should *ALWAYS* be recreatable at any time by observation -// of the cluster, thus the object is less strongly typed than most. -type RangeAllocation struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - // A string representing a unique label for a range of resources, such as a CIDR "10.0.0.0/8" or - // port range "10000-30000". Range is not strongly schema'd here. The Range is expected to define - // a start and end unless there is an implicit end. - Range string - // A byte array representing the serialized state of a range allocation. Additional clarifiers on - // the type or format of data should be represented with annotations. For IP allocations, this is - // represented as a bit array starting at the base IP of the CIDR in Range, with each bit representing - // a single allocated address (the fifth bit on CIDR 10.0.0.0/8 is 10.0.0.4). - Data []byte -} - -const ( - // "default-scheduler" is the name of default scheduler. - DefaultSchedulerName = "default-scheduler" - - // RequiredDuringScheduling affinity is not symmetric, but there is an implicit PreferredDuringScheduling affinity rule - // corresponding to every RequiredDuringScheduling affinity rule. - // When the --hard-pod-affinity-weight scheduler flag is not specified, - // DefaultHardPodAffinityWeight defines the weight of the implicit PreferredDuringScheduling affinity rule. - DefaultHardPodAffinitySymmetricWeight int = 1 -) diff --git a/vendor/k8s.io/client-go/pkg/api/v1/conversion.go b/vendor/k8s.io/client-go/pkg/api/v1/conversion.go deleted file mode 100644 index 4ded76091..000000000 --- a/vendor/k8s.io/client-go/pkg/api/v1/conversion.go +++ /dev/null @@ -1,776 +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 - -import ( - "encoding/json" - "fmt" - "reflect" - - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/conversion" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/util/validation/field" - "k8s.io/client-go/pkg/api" - "k8s.io/client-go/pkg/apis/extensions" -) - -// This is a "fast-path" that avoids reflection for common types. It focuses on the objects that are -// converted the most in the cluster. -// TODO: generate one of these for every external API group - this is to prove the impact -func addFastPathConversionFuncs(scheme *runtime.Scheme) error { - scheme.AddGenericConversionFunc(func(objA, objB interface{}, s conversion.Scope) (bool, error) { - switch a := objA.(type) { - case *Pod: - switch b := objB.(type) { - case *api.Pod: - return true, Convert_v1_Pod_To_api_Pod(a, b, s) - } - case *api.Pod: - switch b := objB.(type) { - case *Pod: - return true, Convert_api_Pod_To_v1_Pod(a, b, s) - } - - case *Event: - switch b := objB.(type) { - case *api.Event: - return true, Convert_v1_Event_To_api_Event(a, b, s) - } - case *api.Event: - switch b := objB.(type) { - case *Event: - return true, Convert_api_Event_To_v1_Event(a, b, s) - } - - case *ReplicationController: - switch b := objB.(type) { - case *api.ReplicationController: - return true, Convert_v1_ReplicationController_To_api_ReplicationController(a, b, s) - } - case *api.ReplicationController: - switch b := objB.(type) { - case *ReplicationController: - return true, Convert_api_ReplicationController_To_v1_ReplicationController(a, b, s) - } - - case *Node: - switch b := objB.(type) { - case *api.Node: - return true, Convert_v1_Node_To_api_Node(a, b, s) - } - case *api.Node: - switch b := objB.(type) { - case *Node: - return true, Convert_api_Node_To_v1_Node(a, b, s) - } - - case *Namespace: - switch b := objB.(type) { - case *api.Namespace: - return true, Convert_v1_Namespace_To_api_Namespace(a, b, s) - } - case *api.Namespace: - switch b := objB.(type) { - case *Namespace: - return true, Convert_api_Namespace_To_v1_Namespace(a, b, s) - } - - case *Service: - switch b := objB.(type) { - case *api.Service: - return true, Convert_v1_Service_To_api_Service(a, b, s) - } - case *api.Service: - switch b := objB.(type) { - case *Service: - return true, Convert_api_Service_To_v1_Service(a, b, s) - } - - case *Endpoints: - switch b := objB.(type) { - case *api.Endpoints: - return true, Convert_v1_Endpoints_To_api_Endpoints(a, b, s) - } - case *api.Endpoints: - switch b := objB.(type) { - case *Endpoints: - return true, Convert_api_Endpoints_To_v1_Endpoints(a, b, s) - } - - case *metav1.WatchEvent: - switch b := objB.(type) { - case *metav1.InternalEvent: - return true, metav1.Convert_versioned_Event_to_versioned_InternalEvent(a, b, s) - } - case *metav1.InternalEvent: - switch b := objB.(type) { - case *metav1.WatchEvent: - return true, metav1.Convert_versioned_InternalEvent_to_versioned_Event(a, b, s) - } - } - return false, nil - }) - return nil -} - -func addConversionFuncs(scheme *runtime.Scheme) error { - // Add non-generated conversion functions - err := scheme.AddConversionFuncs( - Convert_api_Pod_To_v1_Pod, - Convert_api_PodSpec_To_v1_PodSpec, - Convert_api_ReplicationControllerSpec_To_v1_ReplicationControllerSpec, - Convert_api_ServiceSpec_To_v1_ServiceSpec, - Convert_v1_Pod_To_api_Pod, - Convert_v1_PodSpec_To_api_PodSpec, - Convert_v1_ReplicationControllerSpec_To_api_ReplicationControllerSpec, - Convert_v1_Secret_To_api_Secret, - Convert_v1_ServiceSpec_To_api_ServiceSpec, - Convert_v1_ResourceList_To_api_ResourceList, - Convert_v1_ReplicationController_to_extensions_ReplicaSet, - Convert_v1_ReplicationControllerSpec_to_extensions_ReplicaSetSpec, - Convert_v1_ReplicationControllerStatus_to_extensions_ReplicaSetStatus, - Convert_extensions_ReplicaSet_to_v1_ReplicationController, - Convert_extensions_ReplicaSetSpec_to_v1_ReplicationControllerSpec, - Convert_extensions_ReplicaSetStatus_to_v1_ReplicationControllerStatus, - ) - if err != nil { - return err - } - - // Add field label conversions for kinds having selectable nothing but ObjectMeta fields. - for _, k := range []string{ - "Endpoints", - "ResourceQuota", - "PersistentVolumeClaim", - "Service", - "ServiceAccount", - "ConfigMap", - } { - kind := k // don't close over range variables - err = scheme.AddFieldLabelConversionFunc("v1", kind, - func(label, value string) (string, string, error) { - switch label { - case "metadata.namespace", - "metadata.name": - return label, value, nil - default: - return "", "", fmt.Errorf("field label %q not supported for %q", label, kind) - } - }, - ) - if err != nil { - return err - } - } - - // Add field conversion funcs. - err = scheme.AddFieldLabelConversionFunc("v1", "Pod", - func(label, value string) (string, string, error) { - switch label { - case "metadata.annotations", - "metadata.labels", - "metadata.name", - "metadata.namespace", - "spec.nodeName", - "spec.restartPolicy", - "spec.serviceAccountName", - "status.phase", - "status.hostIP", - "status.podIP": - return label, value, nil - // This is for backwards compatibility with old v1 clients which send spec.host - case "spec.host": - return "spec.nodeName", value, nil - default: - return "", "", fmt.Errorf("field label not supported: %s", label) - } - }, - ) - if err != nil { - return err - } - err = scheme.AddFieldLabelConversionFunc("v1", "Node", - func(label, value string) (string, string, error) { - switch label { - case "metadata.name": - return label, value, nil - case "spec.unschedulable": - return label, value, nil - default: - return "", "", fmt.Errorf("field label not supported: %s", label) - } - }, - ) - if err != nil { - return err - } - err = scheme.AddFieldLabelConversionFunc("v1", "ReplicationController", - func(label, value string) (string, string, error) { - switch label { - case "metadata.name", - "metadata.namespace", - "status.replicas": - return label, value, nil - default: - return "", "", fmt.Errorf("field label not supported: %s", label) - } - }) - if err != nil { - return err - } - err = scheme.AddFieldLabelConversionFunc("v1", "PersistentVolume", - func(label, value string) (string, string, error) { - switch label { - case "metadata.name": - return label, value, nil - default: - return "", "", fmt.Errorf("field label not supported: %s", label) - } - }, - ) - if err != nil { - return err - } - if err := AddFieldLabelConversionsForEvent(scheme); err != nil { - return err - } - if err := AddFieldLabelConversionsForNamespace(scheme); err != nil { - return err - } - if err := AddFieldLabelConversionsForSecret(scheme); err != nil { - return err - } - return nil -} - -func Convert_v1_ReplicationController_to_extensions_ReplicaSet(in *ReplicationController, out *extensions.ReplicaSet, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_ReplicationControllerSpec_to_extensions_ReplicaSetSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_ReplicationControllerStatus_to_extensions_ReplicaSetStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func Convert_v1_ReplicationControllerSpec_to_extensions_ReplicaSetSpec(in *ReplicationControllerSpec, out *extensions.ReplicaSetSpec, s conversion.Scope) error { - out.Replicas = *in.Replicas - if in.Selector != nil { - metav1.Convert_map_to_unversioned_LabelSelector(&in.Selector, out.Selector, s) - } - if in.Template != nil { - if err := Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec(in.Template, &out.Template, s); err != nil { - return err - } - } - return nil -} - -func Convert_v1_ReplicationControllerStatus_to_extensions_ReplicaSetStatus(in *ReplicationControllerStatus, out *extensions.ReplicaSetStatus, s conversion.Scope) error { - out.Replicas = in.Replicas - out.FullyLabeledReplicas = in.FullyLabeledReplicas - out.ReadyReplicas = in.ReadyReplicas - out.AvailableReplicas = in.AvailableReplicas - out.ObservedGeneration = in.ObservedGeneration - return nil -} - -func Convert_extensions_ReplicaSet_to_v1_ReplicationController(in *extensions.ReplicaSet, out *ReplicationController, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_extensions_ReplicaSetSpec_to_v1_ReplicationControllerSpec(&in.Spec, &out.Spec, s); err != nil { - fieldErr, ok := err.(*field.Error) - if !ok { - return err - } - if out.Annotations == nil { - out.Annotations = make(map[string]string) - } - out.Annotations[NonConvertibleAnnotationPrefix+"/"+fieldErr.Field] = reflect.ValueOf(fieldErr.BadValue).String() - } - if err := Convert_extensions_ReplicaSetStatus_to_v1_ReplicationControllerStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func Convert_extensions_ReplicaSetSpec_to_v1_ReplicationControllerSpec(in *extensions.ReplicaSetSpec, out *ReplicationControllerSpec, s conversion.Scope) error { - out.Replicas = new(int32) - *out.Replicas = in.Replicas - out.MinReadySeconds = in.MinReadySeconds - var invalidErr error - if in.Selector != nil { - invalidErr = metav1.Convert_unversioned_LabelSelector_to_map(in.Selector, &out.Selector, s) - } - out.Template = new(PodTemplateSpec) - if err := Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, out.Template, s); err != nil { - return err - } - return invalidErr -} - -func Convert_extensions_ReplicaSetStatus_to_v1_ReplicationControllerStatus(in *extensions.ReplicaSetStatus, out *ReplicationControllerStatus, s conversion.Scope) error { - out.Replicas = in.Replicas - out.FullyLabeledReplicas = in.FullyLabeledReplicas - out.ReadyReplicas = in.ReadyReplicas - out.AvailableReplicas = in.AvailableReplicas - out.ObservedGeneration = in.ObservedGeneration - return nil -} - -func Convert_api_ReplicationControllerSpec_To_v1_ReplicationControllerSpec(in *api.ReplicationControllerSpec, out *ReplicationControllerSpec, s conversion.Scope) error { - out.Replicas = &in.Replicas - out.MinReadySeconds = in.MinReadySeconds - out.Selector = in.Selector - if in.Template != nil { - out.Template = new(PodTemplateSpec) - if err := Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(in.Template, out.Template, s); err != nil { - return err - } - } else { - out.Template = nil - } - return nil -} - -func Convert_v1_ReplicationControllerSpec_To_api_ReplicationControllerSpec(in *ReplicationControllerSpec, out *api.ReplicationControllerSpec, s conversion.Scope) error { - if in.Replicas != nil { - out.Replicas = *in.Replicas - } - out.MinReadySeconds = in.MinReadySeconds - out.Selector = in.Selector - if in.Template != nil { - out.Template = new(api.PodTemplateSpec) - if err := Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec(in.Template, out.Template, s); err != nil { - return err - } - } else { - out.Template = nil - } - return nil -} - -func Convert_api_PodStatusResult_To_v1_PodStatusResult(in *api.PodStatusResult, out *PodStatusResult, s conversion.Scope) error { - if err := autoConvert_api_PodStatusResult_To_v1_PodStatusResult(in, out, s); err != nil { - return err - } - - if old := out.Annotations; old != nil { - out.Annotations = make(map[string]string, len(old)) - for k, v := range old { - out.Annotations[k] = v - } - } - if len(out.Status.InitContainerStatuses) > 0 { - if out.Annotations == nil { - out.Annotations = make(map[string]string) - } - value, err := json.Marshal(out.Status.InitContainerStatuses) - if err != nil { - return err - } - out.Annotations[PodInitContainerStatusesAnnotationKey] = string(value) - out.Annotations[PodInitContainerStatusesBetaAnnotationKey] = string(value) - } else { - delete(out.Annotations, PodInitContainerStatusesAnnotationKey) - delete(out.Annotations, PodInitContainerStatusesBetaAnnotationKey) - } - return nil -} - -func Convert_v1_PodStatusResult_To_api_PodStatusResult(in *PodStatusResult, out *api.PodStatusResult, s conversion.Scope) error { - // TODO: sometime after we move init container to stable, remove these conversions - // If there is a beta annotation, copy to alpha key. - // See commit log for PR #31026 for why we do this. - if valueBeta, okBeta := in.Annotations[PodInitContainerStatusesBetaAnnotationKey]; okBeta { - in.Annotations[PodInitContainerStatusesAnnotationKey] = valueBeta - } - // Move the annotation to the internal repr. field - if value, ok := in.Annotations[PodInitContainerStatusesAnnotationKey]; ok { - var values []ContainerStatus - if err := json.Unmarshal([]byte(value), &values); err != nil { - return err - } - // Conversion from external to internal version exists more to - // satisfy the needs of the decoder than it does to be a general - // purpose tool. And Decode always creates an intermediate object - // to decode to. Thus the caller of UnsafeConvertToVersion is - // taking responsibility to ensure mutation of in is not exposed - // back to the caller. - in.Status.InitContainerStatuses = values - } - - if err := autoConvert_v1_PodStatusResult_To_api_PodStatusResult(in, out, s); err != nil { - return err - } - if len(out.Annotations) > 0 { - old := out.Annotations - out.Annotations = make(map[string]string, len(old)) - for k, v := range old { - out.Annotations[k] = v - } - delete(out.Annotations, PodInitContainerStatusesAnnotationKey) - delete(out.Annotations, PodInitContainerStatusesBetaAnnotationKey) - } - return nil -} - -func Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(in *api.PodTemplateSpec, out *PodTemplateSpec, s conversion.Scope) error { - if err := autoConvert_api_PodTemplateSpec_To_v1_PodTemplateSpec(in, out, s); err != nil { - return err - } - - // TODO: sometime after we move init container to stable, remove these conversions. - if old := out.Annotations; old != nil { - out.Annotations = make(map[string]string, len(old)) - for k, v := range old { - out.Annotations[k] = v - } - } - if len(out.Spec.InitContainers) > 0 { - if out.Annotations == nil { - out.Annotations = make(map[string]string) - } - value, err := json.Marshal(out.Spec.InitContainers) - if err != nil { - return err - } - out.Annotations[PodInitContainersAnnotationKey] = string(value) - out.Annotations[PodInitContainersBetaAnnotationKey] = string(value) - } else { - delete(out.Annotations, PodInitContainersAnnotationKey) - delete(out.Annotations, PodInitContainersBetaAnnotationKey) - } - return nil -} - -func Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec(in *PodTemplateSpec, out *api.PodTemplateSpec, s conversion.Scope) error { - // TODO: sometime after we move init container to stable, remove these conversions - // If there is a beta annotation, copy to alpha key. - // See commit log for PR #31026 for why we do this. - if valueBeta, okBeta := in.Annotations[PodInitContainersBetaAnnotationKey]; okBeta { - in.Annotations[PodInitContainersAnnotationKey] = valueBeta - } - // Move the annotation to the internal repr. field - if value, ok := in.Annotations[PodInitContainersAnnotationKey]; ok { - var values []Container - if err := json.Unmarshal([]byte(value), &values); err != nil { - return err - } - // Conversion from external to internal version exists more to - // satisfy the needs of the decoder than it does to be a general - // purpose tool. And Decode always creates an intermediate object - // to decode to. Thus the caller of UnsafeConvertToVersion is - // taking responsibility to ensure mutation of in is not exposed - // back to the caller. - in.Spec.InitContainers = values - - // Call defaulters explicitly until annotations are removed - tmpPodTemp := &PodTemplate{ - Template: PodTemplateSpec{ - Spec: PodSpec{ - HostNetwork: in.Spec.HostNetwork, - InitContainers: values, - }, - }, - } - SetObjectDefaults_PodTemplate(tmpPodTemp) - in.Spec.InitContainers = tmpPodTemp.Template.Spec.InitContainers - } - - if err := autoConvert_v1_PodTemplateSpec_To_api_PodTemplateSpec(in, out, s); err != nil { - return err - } - if len(out.Annotations) > 0 { - old := out.Annotations - out.Annotations = make(map[string]string, len(old)) - for k, v := range old { - out.Annotations[k] = v - } - delete(out.Annotations, PodInitContainersAnnotationKey) - delete(out.Annotations, PodInitContainersBetaAnnotationKey) - } - return nil -} - -// The following two PodSpec conversions are done here to support ServiceAccount -// as an alias for ServiceAccountName. -func Convert_api_PodSpec_To_v1_PodSpec(in *api.PodSpec, out *PodSpec, s conversion.Scope) error { - if err := autoConvert_api_PodSpec_To_v1_PodSpec(in, out, s); err != nil { - return err - } - - // DeprecatedServiceAccount is an alias for ServiceAccountName. - out.DeprecatedServiceAccount = in.ServiceAccountName - - if in.SecurityContext != nil { - // the host namespace fields have to be handled here for backward compatibility - // with v1.0.0 - out.HostPID = in.SecurityContext.HostPID - out.HostNetwork = in.SecurityContext.HostNetwork - out.HostIPC = in.SecurityContext.HostIPC - } - - return nil -} - -func Convert_v1_PodSpec_To_api_PodSpec(in *PodSpec, out *api.PodSpec, s conversion.Scope) error { - if err := autoConvert_v1_PodSpec_To_api_PodSpec(in, out, s); err != nil { - return err - } - - // We support DeprecatedServiceAccount as an alias for ServiceAccountName. - // If both are specified, ServiceAccountName (the new field) wins. - if in.ServiceAccountName == "" { - out.ServiceAccountName = in.DeprecatedServiceAccount - } - - // the host namespace fields have to be handled specially for backward compatibility - // with v1.0.0 - if out.SecurityContext == nil { - out.SecurityContext = new(api.PodSecurityContext) - } - out.SecurityContext.HostNetwork = in.HostNetwork - out.SecurityContext.HostPID = in.HostPID - out.SecurityContext.HostIPC = in.HostIPC - - return nil -} - -func Convert_api_Pod_To_v1_Pod(in *api.Pod, out *Pod, s conversion.Scope) error { - if err := autoConvert_api_Pod_To_v1_Pod(in, out, s); err != nil { - return err - } - - // TODO: sometime after we move init container to stable, remove these conversions - if len(out.Spec.InitContainers) > 0 || len(out.Status.InitContainerStatuses) > 0 { - old := out.Annotations - out.Annotations = make(map[string]string, len(old)) - for k, v := range old { - out.Annotations[k] = v - } - delete(out.Annotations, PodInitContainersAnnotationKey) - delete(out.Annotations, PodInitContainersBetaAnnotationKey) - delete(out.Annotations, PodInitContainerStatusesAnnotationKey) - delete(out.Annotations, PodInitContainerStatusesBetaAnnotationKey) - } - if len(out.Spec.InitContainers) > 0 { - value, err := json.Marshal(out.Spec.InitContainers) - if err != nil { - return err - } - out.Annotations[PodInitContainersAnnotationKey] = string(value) - out.Annotations[PodInitContainersBetaAnnotationKey] = string(value) - } - if len(out.Status.InitContainerStatuses) > 0 { - value, err := json.Marshal(out.Status.InitContainerStatuses) - if err != nil { - return err - } - out.Annotations[PodInitContainerStatusesAnnotationKey] = string(value) - out.Annotations[PodInitContainerStatusesBetaAnnotationKey] = string(value) - } - - return nil -} - -func Convert_v1_Pod_To_api_Pod(in *Pod, out *api.Pod, s conversion.Scope) error { - // If there is a beta annotation, copy to alpha key. - // See commit log for PR #31026 for why we do this. - if valueBeta, okBeta := in.Annotations[PodInitContainersBetaAnnotationKey]; okBeta { - in.Annotations[PodInitContainersAnnotationKey] = valueBeta - } - // TODO: sometime after we move init container to stable, remove these conversions - // Move the annotation to the internal repr. field - if value, ok := in.Annotations[PodInitContainersAnnotationKey]; ok { - var values []Container - if err := json.Unmarshal([]byte(value), &values); err != nil { - return err - } - // Conversion from external to internal version exists more to - // satisfy the needs of the decoder than it does to be a general - // purpose tool. And Decode always creates an intermediate object - // to decode to. Thus the caller of UnsafeConvertToVersion is - // taking responsibility to ensure mutation of in is not exposed - // back to the caller. - in.Spec.InitContainers = values - // Call defaulters explicitly until annotations are removed - tmpPod := &Pod{ - Spec: PodSpec{ - HostNetwork: in.Spec.HostNetwork, - InitContainers: values, - }, - } - SetObjectDefaults_Pod(tmpPod) - in.Spec.InitContainers = tmpPod.Spec.InitContainers - } - // If there is a beta annotation, copy to alpha key. - // See commit log for PR #31026 for why we do this. - if valueBeta, okBeta := in.Annotations[PodInitContainerStatusesBetaAnnotationKey]; okBeta { - in.Annotations[PodInitContainerStatusesAnnotationKey] = valueBeta - } - if value, ok := in.Annotations[PodInitContainerStatusesAnnotationKey]; ok { - var values []ContainerStatus - if err := json.Unmarshal([]byte(value), &values); err != nil { - return err - } - // Conversion from external to internal version exists more to - // satisfy the needs of the decoder than it does to be a general - // purpose tool. And Decode always creates an intermediate object - // to decode to. Thus the caller of UnsafeConvertToVersion is - // taking responsibility to ensure mutation of in is not exposed - // back to the caller. - in.Status.InitContainerStatuses = values - } - - if err := autoConvert_v1_Pod_To_api_Pod(in, out, s); err != nil { - return err - } - if len(out.Annotations) > 0 { - old := out.Annotations - out.Annotations = make(map[string]string, len(old)) - for k, v := range old { - out.Annotations[k] = v - } - delete(out.Annotations, PodInitContainersAnnotationKey) - delete(out.Annotations, PodInitContainersBetaAnnotationKey) - delete(out.Annotations, PodInitContainerStatusesAnnotationKey) - delete(out.Annotations, PodInitContainerStatusesBetaAnnotationKey) - } - return nil -} - -func Convert_v1_Secret_To_api_Secret(in *Secret, out *api.Secret, s conversion.Scope) error { - if err := autoConvert_v1_Secret_To_api_Secret(in, out, s); err != nil { - return err - } - - // StringData overwrites Data - if len(in.StringData) > 0 { - if out.Data == nil { - out.Data = map[string][]byte{} - } - for k, v := range in.StringData { - out.Data[k] = []byte(v) - } - } - - return nil -} - -func Convert_api_PodSecurityContext_To_v1_PodSecurityContext(in *api.PodSecurityContext, out *PodSecurityContext, s conversion.Scope) error { - out.SupplementalGroups = in.SupplementalGroups - if in.SELinuxOptions != nil { - out.SELinuxOptions = new(SELinuxOptions) - if err := Convert_api_SELinuxOptions_To_v1_SELinuxOptions(in.SELinuxOptions, out.SELinuxOptions, s); err != nil { - return err - } - } else { - out.SELinuxOptions = nil - } - out.RunAsUser = in.RunAsUser - out.RunAsNonRoot = in.RunAsNonRoot - out.FSGroup = in.FSGroup - return nil -} - -func Convert_v1_PodSecurityContext_To_api_PodSecurityContext(in *PodSecurityContext, out *api.PodSecurityContext, s conversion.Scope) error { - out.SupplementalGroups = in.SupplementalGroups - if in.SELinuxOptions != nil { - out.SELinuxOptions = new(api.SELinuxOptions) - if err := Convert_v1_SELinuxOptions_To_api_SELinuxOptions(in.SELinuxOptions, out.SELinuxOptions, s); err != nil { - return err - } - } else { - out.SELinuxOptions = nil - } - out.RunAsUser = in.RunAsUser - out.RunAsNonRoot = in.RunAsNonRoot - out.FSGroup = in.FSGroup - return nil -} - -// +k8s:conversion-fn=copy-only -func Convert_v1_ResourceList_To_api_ResourceList(in *ResourceList, out *api.ResourceList, s conversion.Scope) error { - if *in == nil { - return nil - } - if *out == nil { - *out = make(api.ResourceList, len(*in)) - } - for key, val := range *in { - // Moved to defaults - // TODO(#18538): We round up resource values to milli scale to maintain API compatibility. - // In the future, we should instead reject values that need rounding. - // const milliScale = -3 - // val.RoundUp(milliScale) - - (*out)[api.ResourceName(key)] = val - } - return nil -} - -func AddFieldLabelConversionsForEvent(scheme *runtime.Scheme) error { - return scheme.AddFieldLabelConversionFunc("v1", "Event", - func(label, value string) (string, string, error) { - switch label { - case "involvedObject.kind", - "involvedObject.namespace", - "involvedObject.name", - "involvedObject.uid", - "involvedObject.apiVersion", - "involvedObject.resourceVersion", - "involvedObject.fieldPath", - "reason", - "source", - "type", - "metadata.namespace", - "metadata.name": - return label, value, nil - default: - return "", "", fmt.Errorf("field label not supported: %s", label) - } - }) -} - -func AddFieldLabelConversionsForNamespace(scheme *runtime.Scheme) error { - return scheme.AddFieldLabelConversionFunc("v1", "Namespace", - func(label, value string) (string, string, error) { - switch label { - case "status.phase", - "metadata.name": - return label, value, nil - default: - return "", "", fmt.Errorf("field label not supported: %s", label) - } - }) -} - -func AddFieldLabelConversionsForSecret(scheme *runtime.Scheme) error { - return scheme.AddFieldLabelConversionFunc("v1", "Secret", - func(label, value string) (string, string, error) { - switch label { - case "type", - "metadata.namespace", - "metadata.name": - return label, value, nil - default: - return "", "", fmt.Errorf("field label not supported: %s", label) - } - }) -} diff --git a/vendor/k8s.io/client-go/pkg/api/v1/defaults.go b/vendor/k8s.io/client-go/pkg/api/v1/defaults.go deleted file mode 100644 index a791ba7b5..000000000 --- a/vendor/k8s.io/client-go/pkg/api/v1/defaults.go +++ /dev/null @@ -1,373 +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 - -import ( - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/util/intstr" - "k8s.io/client-go/pkg/util" - "k8s.io/client-go/pkg/util/parsers" -) - -func addDefaultingFuncs(scheme *runtime.Scheme) error { - return RegisterDefaults(scheme) -} - -func SetDefaults_ResourceList(obj *ResourceList) { - for key, val := range *obj { - // TODO(#18538): We round up resource values to milli scale to maintain API compatibility. - // In the future, we should instead reject values that need rounding. - const milliScale = -3 - val.RoundUp(milliScale) - - (*obj)[ResourceName(key)] = val - } -} - -func SetDefaults_PodExecOptions(obj *PodExecOptions) { - obj.Stdout = true - obj.Stderr = true -} -func SetDefaults_PodAttachOptions(obj *PodAttachOptions) { - obj.Stdout = true - obj.Stderr = true -} -func SetDefaults_ReplicationController(obj *ReplicationController) { - var labels map[string]string - if obj.Spec.Template != nil { - labels = obj.Spec.Template.Labels - } - // TODO: support templates defined elsewhere when we support them in the API - if labels != nil { - if len(obj.Spec.Selector) == 0 { - obj.Spec.Selector = labels - } - if len(obj.Labels) == 0 { - obj.Labels = labels - } - } - if obj.Spec.Replicas == nil { - obj.Spec.Replicas = new(int32) - *obj.Spec.Replicas = 1 - } -} -func SetDefaults_Volume(obj *Volume) { - if util.AllPtrFieldsNil(&obj.VolumeSource) { - obj.VolumeSource = VolumeSource{ - EmptyDir: &EmptyDirVolumeSource{}, - } - } -} -func SetDefaults_ContainerPort(obj *ContainerPort) { - if obj.Protocol == "" { - obj.Protocol = ProtocolTCP - } -} -func SetDefaults_Container(obj *Container) { - if obj.ImagePullPolicy == "" { - // Ignore error and assume it has been validated elsewhere - _, tag, _, _ := parsers.ParseImageName(obj.Image) - - // Check image tag - if tag == "latest" { - obj.ImagePullPolicy = PullAlways - } else { - obj.ImagePullPolicy = PullIfNotPresent - } - } - if obj.TerminationMessagePath == "" { - obj.TerminationMessagePath = TerminationMessagePathDefault - } - if obj.TerminationMessagePolicy == "" { - obj.TerminationMessagePolicy = TerminationMessageReadFile - } -} -func SetDefaults_Service(obj *Service) { - if obj.Spec.SessionAffinity == "" { - obj.Spec.SessionAffinity = ServiceAffinityNone - } - if obj.Spec.Type == "" { - obj.Spec.Type = ServiceTypeClusterIP - } - for i := range obj.Spec.Ports { - sp := &obj.Spec.Ports[i] - if sp.Protocol == "" { - sp.Protocol = ProtocolTCP - } - if sp.TargetPort == intstr.FromInt(0) || sp.TargetPort == intstr.FromString("") { - sp.TargetPort = intstr.FromInt(int(sp.Port)) - } - } - // Defaults ExternalTrafficPolicy field for NodePort / LoadBalancer service - // to Global for consistency. - if _, ok := obj.Annotations[BetaAnnotationExternalTraffic]; ok { - // Don't default this field if beta annotation exists. - return - } else if (obj.Spec.Type == ServiceTypeNodePort || - obj.Spec.Type == ServiceTypeLoadBalancer) && - obj.Spec.ExternalTrafficPolicy == "" { - obj.Spec.ExternalTrafficPolicy = ServiceExternalTrafficPolicyTypeCluster - } -} -func SetDefaults_Pod(obj *Pod) { - // If limits are specified, but requests are not, default requests to limits - // This is done here rather than a more specific defaulting pass on ResourceRequirements - // because we only want this defaulting semantic to take place on a Pod and not a PodTemplate - for i := range obj.Spec.Containers { - // set requests to limits if requests are not specified, but limits are - if obj.Spec.Containers[i].Resources.Limits != nil { - if obj.Spec.Containers[i].Resources.Requests == nil { - obj.Spec.Containers[i].Resources.Requests = make(ResourceList) - } - for key, value := range obj.Spec.Containers[i].Resources.Limits { - if _, exists := obj.Spec.Containers[i].Resources.Requests[key]; !exists { - obj.Spec.Containers[i].Resources.Requests[key] = *(value.Copy()) - } - } - } - } - for i := range obj.Spec.InitContainers { - if obj.Spec.InitContainers[i].Resources.Limits != nil { - if obj.Spec.InitContainers[i].Resources.Requests == nil { - obj.Spec.InitContainers[i].Resources.Requests = make(ResourceList) - } - for key, value := range obj.Spec.InitContainers[i].Resources.Limits { - if _, exists := obj.Spec.InitContainers[i].Resources.Requests[key]; !exists { - obj.Spec.InitContainers[i].Resources.Requests[key] = *(value.Copy()) - } - } - } - } -} -func SetDefaults_PodSpec(obj *PodSpec) { - if obj.DNSPolicy == "" { - obj.DNSPolicy = DNSClusterFirst - } - if obj.RestartPolicy == "" { - obj.RestartPolicy = RestartPolicyAlways - } - if obj.HostNetwork { - defaultHostNetworkPorts(&obj.Containers) - defaultHostNetworkPorts(&obj.InitContainers) - } - if obj.SecurityContext == nil { - obj.SecurityContext = &PodSecurityContext{} - } - if obj.TerminationGracePeriodSeconds == nil { - period := int64(DefaultTerminationGracePeriodSeconds) - obj.TerminationGracePeriodSeconds = &period - } - if obj.SchedulerName == "" { - obj.SchedulerName = DefaultSchedulerName - } -} -func SetDefaults_Probe(obj *Probe) { - if obj.TimeoutSeconds == 0 { - obj.TimeoutSeconds = 1 - } - if obj.PeriodSeconds == 0 { - obj.PeriodSeconds = 10 - } - if obj.SuccessThreshold == 0 { - obj.SuccessThreshold = 1 - } - if obj.FailureThreshold == 0 { - obj.FailureThreshold = 3 - } -} -func SetDefaults_SecretVolumeSource(obj *SecretVolumeSource) { - if obj.DefaultMode == nil { - perm := int32(SecretVolumeSourceDefaultMode) - obj.DefaultMode = &perm - } -} -func SetDefaults_ConfigMapVolumeSource(obj *ConfigMapVolumeSource) { - if obj.DefaultMode == nil { - perm := int32(ConfigMapVolumeSourceDefaultMode) - obj.DefaultMode = &perm - } -} -func SetDefaults_DownwardAPIVolumeSource(obj *DownwardAPIVolumeSource) { - if obj.DefaultMode == nil { - perm := int32(DownwardAPIVolumeSourceDefaultMode) - obj.DefaultMode = &perm - } -} -func SetDefaults_Secret(obj *Secret) { - if obj.Type == "" { - obj.Type = SecretTypeOpaque - } -} -func SetDefaults_ProjectedVolumeSource(obj *ProjectedVolumeSource) { - if obj.DefaultMode == nil { - perm := int32(ProjectedVolumeSourceDefaultMode) - obj.DefaultMode = &perm - } -} -func SetDefaults_PersistentVolume(obj *PersistentVolume) { - if obj.Status.Phase == "" { - obj.Status.Phase = VolumePending - } - if obj.Spec.PersistentVolumeReclaimPolicy == "" { - obj.Spec.PersistentVolumeReclaimPolicy = PersistentVolumeReclaimRetain - } -} -func SetDefaults_PersistentVolumeClaim(obj *PersistentVolumeClaim) { - if obj.Status.Phase == "" { - obj.Status.Phase = ClaimPending - } -} -func SetDefaults_ISCSIVolumeSource(obj *ISCSIVolumeSource) { - if obj.ISCSIInterface == "" { - obj.ISCSIInterface = "default" - } -} -func SetDefaults_AzureDiskVolumeSource(obj *AzureDiskVolumeSource) { - if obj.CachingMode == nil { - obj.CachingMode = new(AzureDataDiskCachingMode) - *obj.CachingMode = AzureDataDiskCachingReadWrite - } - if obj.Kind == nil { - obj.Kind = new(AzureDataDiskKind) - *obj.Kind = AzureSharedBlobDisk - } - if obj.FSType == nil { - obj.FSType = new(string) - *obj.FSType = "ext4" - } - if obj.ReadOnly == nil { - obj.ReadOnly = new(bool) - *obj.ReadOnly = false - } -} -func SetDefaults_Endpoints(obj *Endpoints) { - for i := range obj.Subsets { - ss := &obj.Subsets[i] - for i := range ss.Ports { - ep := &ss.Ports[i] - if ep.Protocol == "" { - ep.Protocol = ProtocolTCP - } - } - } -} -func SetDefaults_HTTPGetAction(obj *HTTPGetAction) { - if obj.Path == "" { - obj.Path = "/" - } - if obj.Scheme == "" { - obj.Scheme = URISchemeHTTP - } -} -func SetDefaults_NamespaceStatus(obj *NamespaceStatus) { - if obj.Phase == "" { - obj.Phase = NamespaceActive - } -} -func SetDefaults_Node(obj *Node) { - if obj.Spec.ExternalID == "" { - obj.Spec.ExternalID = obj.Name - } -} -func SetDefaults_NodeStatus(obj *NodeStatus) { - if obj.Allocatable == nil && obj.Capacity != nil { - obj.Allocatable = make(ResourceList, len(obj.Capacity)) - for key, value := range obj.Capacity { - obj.Allocatable[key] = *(value.Copy()) - } - obj.Allocatable = obj.Capacity - } -} -func SetDefaults_ObjectFieldSelector(obj *ObjectFieldSelector) { - if obj.APIVersion == "" { - obj.APIVersion = "v1" - } -} -func SetDefaults_LimitRangeItem(obj *LimitRangeItem) { - // for container limits, we apply default values - if obj.Type == LimitTypeContainer { - - if obj.Default == nil { - obj.Default = make(ResourceList) - } - if obj.DefaultRequest == nil { - obj.DefaultRequest = make(ResourceList) - } - - // If a default limit is unspecified, but the max is specified, default the limit to the max - for key, value := range obj.Max { - if _, exists := obj.Default[key]; !exists { - obj.Default[key] = *(value.Copy()) - } - } - // If a default limit is specified, but the default request is not, default request to limit - for key, value := range obj.Default { - if _, exists := obj.DefaultRequest[key]; !exists { - obj.DefaultRequest[key] = *(value.Copy()) - } - } - // If a default request is not specified, but the min is provided, default request to the min - for key, value := range obj.Min { - if _, exists := obj.DefaultRequest[key]; !exists { - obj.DefaultRequest[key] = *(value.Copy()) - } - } - } -} -func SetDefaults_ConfigMap(obj *ConfigMap) { - if obj.Data == nil { - obj.Data = make(map[string]string) - } -} - -// With host networking default all container ports to host ports. -func defaultHostNetworkPorts(containers *[]Container) { - for i := range *containers { - for j := range (*containers)[i].Ports { - if (*containers)[i].Ports[j].HostPort == 0 { - (*containers)[i].Ports[j].HostPort = (*containers)[i].Ports[j].ContainerPort - } - } - } -} - -func SetDefaults_RBDVolumeSource(obj *RBDVolumeSource) { - if obj.RBDPool == "" { - obj.RBDPool = "rbd" - } - if obj.RadosUser == "" { - obj.RadosUser = "admin" - } - if obj.Keyring == "" { - obj.Keyring = "/etc/ceph/keyring" - } -} - -func SetDefaults_ScaleIOVolumeSource(obj *ScaleIOVolumeSource) { - if obj.ProtectionDomain == "" { - obj.ProtectionDomain = "default" - } - if obj.StoragePool == "" { - obj.StoragePool = "default" - } - if obj.StorageMode == "" { - obj.StorageMode = "ThinProvisioned" - } - if obj.FSType == "" { - obj.FSType = "xfs" - } -} diff --git a/vendor/k8s.io/client-go/pkg/api/v1/generate.go b/vendor/k8s.io/client-go/pkg/api/v1/generate.go deleted file mode 100644 index b8c44e4c7..000000000 --- a/vendor/k8s.io/client-go/pkg/api/v1/generate.go +++ /dev/null @@ -1,64 +0,0 @@ -/* -Copyright 2014 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 ( - "fmt" - - utilrand "k8s.io/apimachinery/pkg/util/rand" -) - -// NameGenerator generates names for objects. Some backends may have more information -// available to guide selection of new names and this interface hides those details. -type NameGenerator interface { - // GenerateName generates a valid name from the base name, adding a random suffix to the - // the base. If base is valid, the returned name must also be valid. The generator is - // responsible for knowing the maximum valid name length. - GenerateName(base string) string -} - -// GenerateName will resolve the object name of the provided ObjectMeta to a generated version if -// necessary. It expects that validation for ObjectMeta has already completed (that Base is a -// valid name) and that the NameGenerator generates a name that is also valid. -func GenerateName(u NameGenerator, meta *ObjectMeta) { - if len(meta.GenerateName) == 0 || len(meta.Name) != 0 { - return - } - meta.Name = u.GenerateName(meta.GenerateName) -} - -// simpleNameGenerator generates random names. -type simpleNameGenerator struct{} - -// SimpleNameGenerator is a generator that returns the name plus a random suffix of five alphanumerics -// when a name is requested. The string is guaranteed to not exceed the length of a standard Kubernetes -// name (63 characters) -var SimpleNameGenerator NameGenerator = simpleNameGenerator{} - -const ( - // TODO: make this flexible for non-core resources with alternate naming rules. - maxNameLength = 63 - randomLength = 5 - maxGeneratedNameLength = maxNameLength - randomLength -) - -func (simpleNameGenerator) GenerateName(base string) string { - if len(base) > maxGeneratedNameLength { - base = base[:maxGeneratedNameLength] - } - return fmt.Sprintf("%s%s", base, utilrand.String(randomLength)) -} 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 deleted file mode 100644 index 2fdecd13f..000000000 --- a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.conversion.go +++ /dev/null @@ -1,5168 +0,0 @@ -// +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" - types "k8s.io/apimachinery/pkg/types" - api "k8s.io/client-go/pkg/api" - 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_AWSElasticBlockStoreVolumeSource_To_api_AWSElasticBlockStoreVolumeSource, - Convert_api_AWSElasticBlockStoreVolumeSource_To_v1_AWSElasticBlockStoreVolumeSource, - Convert_v1_Affinity_To_api_Affinity, - Convert_api_Affinity_To_v1_Affinity, - Convert_v1_AttachedVolume_To_api_AttachedVolume, - Convert_api_AttachedVolume_To_v1_AttachedVolume, - Convert_v1_AvoidPods_To_api_AvoidPods, - Convert_api_AvoidPods_To_v1_AvoidPods, - Convert_v1_AzureDiskVolumeSource_To_api_AzureDiskVolumeSource, - Convert_api_AzureDiskVolumeSource_To_v1_AzureDiskVolumeSource, - Convert_v1_AzureFileVolumeSource_To_api_AzureFileVolumeSource, - Convert_api_AzureFileVolumeSource_To_v1_AzureFileVolumeSource, - Convert_v1_Binding_To_api_Binding, - Convert_api_Binding_To_v1_Binding, - Convert_v1_Capabilities_To_api_Capabilities, - Convert_api_Capabilities_To_v1_Capabilities, - Convert_v1_CephFSVolumeSource_To_api_CephFSVolumeSource, - Convert_api_CephFSVolumeSource_To_v1_CephFSVolumeSource, - Convert_v1_CinderVolumeSource_To_api_CinderVolumeSource, - Convert_api_CinderVolumeSource_To_v1_CinderVolumeSource, - Convert_v1_ComponentCondition_To_api_ComponentCondition, - Convert_api_ComponentCondition_To_v1_ComponentCondition, - Convert_v1_ComponentStatus_To_api_ComponentStatus, - Convert_api_ComponentStatus_To_v1_ComponentStatus, - Convert_v1_ComponentStatusList_To_api_ComponentStatusList, - Convert_api_ComponentStatusList_To_v1_ComponentStatusList, - Convert_v1_ConfigMap_To_api_ConfigMap, - Convert_api_ConfigMap_To_v1_ConfigMap, - Convert_v1_ConfigMapEnvSource_To_api_ConfigMapEnvSource, - Convert_api_ConfigMapEnvSource_To_v1_ConfigMapEnvSource, - Convert_v1_ConfigMapKeySelector_To_api_ConfigMapKeySelector, - Convert_api_ConfigMapKeySelector_To_v1_ConfigMapKeySelector, - Convert_v1_ConfigMapList_To_api_ConfigMapList, - Convert_api_ConfigMapList_To_v1_ConfigMapList, - Convert_v1_ConfigMapProjection_To_api_ConfigMapProjection, - Convert_api_ConfigMapProjection_To_v1_ConfigMapProjection, - Convert_v1_ConfigMapVolumeSource_To_api_ConfigMapVolumeSource, - Convert_api_ConfigMapVolumeSource_To_v1_ConfigMapVolumeSource, - Convert_v1_Container_To_api_Container, - Convert_api_Container_To_v1_Container, - Convert_v1_ContainerImage_To_api_ContainerImage, - Convert_api_ContainerImage_To_v1_ContainerImage, - Convert_v1_ContainerPort_To_api_ContainerPort, - Convert_api_ContainerPort_To_v1_ContainerPort, - Convert_v1_ContainerState_To_api_ContainerState, - Convert_api_ContainerState_To_v1_ContainerState, - Convert_v1_ContainerStateRunning_To_api_ContainerStateRunning, - Convert_api_ContainerStateRunning_To_v1_ContainerStateRunning, - Convert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated, - Convert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated, - Convert_v1_ContainerStateWaiting_To_api_ContainerStateWaiting, - Convert_api_ContainerStateWaiting_To_v1_ContainerStateWaiting, - Convert_v1_ContainerStatus_To_api_ContainerStatus, - Convert_api_ContainerStatus_To_v1_ContainerStatus, - Convert_v1_DaemonEndpoint_To_api_DaemonEndpoint, - Convert_api_DaemonEndpoint_To_v1_DaemonEndpoint, - Convert_v1_DeleteOptions_To_api_DeleteOptions, - Convert_api_DeleteOptions_To_v1_DeleteOptions, - Convert_v1_DownwardAPIProjection_To_api_DownwardAPIProjection, - Convert_api_DownwardAPIProjection_To_v1_DownwardAPIProjection, - Convert_v1_DownwardAPIVolumeFile_To_api_DownwardAPIVolumeFile, - Convert_api_DownwardAPIVolumeFile_To_v1_DownwardAPIVolumeFile, - Convert_v1_DownwardAPIVolumeSource_To_api_DownwardAPIVolumeSource, - Convert_api_DownwardAPIVolumeSource_To_v1_DownwardAPIVolumeSource, - Convert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource, - Convert_api_EmptyDirVolumeSource_To_v1_EmptyDirVolumeSource, - Convert_v1_EndpointAddress_To_api_EndpointAddress, - Convert_api_EndpointAddress_To_v1_EndpointAddress, - Convert_v1_EndpointPort_To_api_EndpointPort, - Convert_api_EndpointPort_To_v1_EndpointPort, - Convert_v1_EndpointSubset_To_api_EndpointSubset, - Convert_api_EndpointSubset_To_v1_EndpointSubset, - Convert_v1_Endpoints_To_api_Endpoints, - Convert_api_Endpoints_To_v1_Endpoints, - Convert_v1_EndpointsList_To_api_EndpointsList, - Convert_api_EndpointsList_To_v1_EndpointsList, - Convert_v1_EnvFromSource_To_api_EnvFromSource, - Convert_api_EnvFromSource_To_v1_EnvFromSource, - Convert_v1_EnvVar_To_api_EnvVar, - Convert_api_EnvVar_To_v1_EnvVar, - Convert_v1_EnvVarSource_To_api_EnvVarSource, - Convert_api_EnvVarSource_To_v1_EnvVarSource, - Convert_v1_Event_To_api_Event, - Convert_api_Event_To_v1_Event, - Convert_v1_EventList_To_api_EventList, - Convert_api_EventList_To_v1_EventList, - Convert_v1_EventSource_To_api_EventSource, - Convert_api_EventSource_To_v1_EventSource, - Convert_v1_ExecAction_To_api_ExecAction, - Convert_api_ExecAction_To_v1_ExecAction, - Convert_v1_FCVolumeSource_To_api_FCVolumeSource, - Convert_api_FCVolumeSource_To_v1_FCVolumeSource, - Convert_v1_FlexVolumeSource_To_api_FlexVolumeSource, - Convert_api_FlexVolumeSource_To_v1_FlexVolumeSource, - Convert_v1_FlockerVolumeSource_To_api_FlockerVolumeSource, - Convert_api_FlockerVolumeSource_To_v1_FlockerVolumeSource, - Convert_v1_GCEPersistentDiskVolumeSource_To_api_GCEPersistentDiskVolumeSource, - Convert_api_GCEPersistentDiskVolumeSource_To_v1_GCEPersistentDiskVolumeSource, - Convert_v1_GitRepoVolumeSource_To_api_GitRepoVolumeSource, - Convert_api_GitRepoVolumeSource_To_v1_GitRepoVolumeSource, - Convert_v1_GlusterfsVolumeSource_To_api_GlusterfsVolumeSource, - Convert_api_GlusterfsVolumeSource_To_v1_GlusterfsVolumeSource, - Convert_v1_HTTPGetAction_To_api_HTTPGetAction, - Convert_api_HTTPGetAction_To_v1_HTTPGetAction, - Convert_v1_HTTPHeader_To_api_HTTPHeader, - Convert_api_HTTPHeader_To_v1_HTTPHeader, - Convert_v1_Handler_To_api_Handler, - Convert_api_Handler_To_v1_Handler, - Convert_v1_HostAlias_To_api_HostAlias, - Convert_api_HostAlias_To_v1_HostAlias, - Convert_v1_HostPathVolumeSource_To_api_HostPathVolumeSource, - Convert_api_HostPathVolumeSource_To_v1_HostPathVolumeSource, - Convert_v1_ISCSIVolumeSource_To_api_ISCSIVolumeSource, - Convert_api_ISCSIVolumeSource_To_v1_ISCSIVolumeSource, - Convert_v1_KeyToPath_To_api_KeyToPath, - Convert_api_KeyToPath_To_v1_KeyToPath, - Convert_v1_Lifecycle_To_api_Lifecycle, - Convert_api_Lifecycle_To_v1_Lifecycle, - Convert_v1_LimitRange_To_api_LimitRange, - Convert_api_LimitRange_To_v1_LimitRange, - Convert_v1_LimitRangeItem_To_api_LimitRangeItem, - Convert_api_LimitRangeItem_To_v1_LimitRangeItem, - Convert_v1_LimitRangeList_To_api_LimitRangeList, - Convert_api_LimitRangeList_To_v1_LimitRangeList, - Convert_v1_LimitRangeSpec_To_api_LimitRangeSpec, - Convert_api_LimitRangeSpec_To_v1_LimitRangeSpec, - Convert_v1_List_To_api_List, - Convert_api_List_To_v1_List, - Convert_v1_ListOptions_To_api_ListOptions, - Convert_api_ListOptions_To_v1_ListOptions, - Convert_v1_LoadBalancerIngress_To_api_LoadBalancerIngress, - Convert_api_LoadBalancerIngress_To_v1_LoadBalancerIngress, - Convert_v1_LoadBalancerStatus_To_api_LoadBalancerStatus, - 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, - Convert_api_Namespace_To_v1_Namespace, - Convert_v1_NamespaceList_To_api_NamespaceList, - Convert_api_NamespaceList_To_v1_NamespaceList, - Convert_v1_NamespaceSpec_To_api_NamespaceSpec, - Convert_api_NamespaceSpec_To_v1_NamespaceSpec, - Convert_v1_NamespaceStatus_To_api_NamespaceStatus, - Convert_api_NamespaceStatus_To_v1_NamespaceStatus, - Convert_v1_Node_To_api_Node, - Convert_api_Node_To_v1_Node, - Convert_v1_NodeAddress_To_api_NodeAddress, - Convert_api_NodeAddress_To_v1_NodeAddress, - Convert_v1_NodeAffinity_To_api_NodeAffinity, - Convert_api_NodeAffinity_To_v1_NodeAffinity, - Convert_v1_NodeCondition_To_api_NodeCondition, - Convert_api_NodeCondition_To_v1_NodeCondition, - Convert_v1_NodeDaemonEndpoints_To_api_NodeDaemonEndpoints, - Convert_api_NodeDaemonEndpoints_To_v1_NodeDaemonEndpoints, - Convert_v1_NodeList_To_api_NodeList, - Convert_api_NodeList_To_v1_NodeList, - Convert_v1_NodeProxyOptions_To_api_NodeProxyOptions, - Convert_api_NodeProxyOptions_To_v1_NodeProxyOptions, - Convert_v1_NodeResources_To_api_NodeResources, - Convert_api_NodeResources_To_v1_NodeResources, - Convert_v1_NodeSelector_To_api_NodeSelector, - Convert_api_NodeSelector_To_v1_NodeSelector, - Convert_v1_NodeSelectorRequirement_To_api_NodeSelectorRequirement, - Convert_api_NodeSelectorRequirement_To_v1_NodeSelectorRequirement, - Convert_v1_NodeSelectorTerm_To_api_NodeSelectorTerm, - Convert_api_NodeSelectorTerm_To_v1_NodeSelectorTerm, - Convert_v1_NodeSpec_To_api_NodeSpec, - Convert_api_NodeSpec_To_v1_NodeSpec, - Convert_v1_NodeStatus_To_api_NodeStatus, - Convert_api_NodeStatus_To_v1_NodeStatus, - Convert_v1_NodeSystemInfo_To_api_NodeSystemInfo, - Convert_api_NodeSystemInfo_To_v1_NodeSystemInfo, - Convert_v1_ObjectFieldSelector_To_api_ObjectFieldSelector, - Convert_api_ObjectFieldSelector_To_v1_ObjectFieldSelector, - Convert_v1_ObjectMeta_To_api_ObjectMeta, - Convert_api_ObjectMeta_To_v1_ObjectMeta, - Convert_v1_ObjectReference_To_api_ObjectReference, - Convert_api_ObjectReference_To_v1_ObjectReference, - Convert_v1_PersistentVolume_To_api_PersistentVolume, - Convert_api_PersistentVolume_To_v1_PersistentVolume, - Convert_v1_PersistentVolumeClaim_To_api_PersistentVolumeClaim, - Convert_api_PersistentVolumeClaim_To_v1_PersistentVolumeClaim, - Convert_v1_PersistentVolumeClaimList_To_api_PersistentVolumeClaimList, - Convert_api_PersistentVolumeClaimList_To_v1_PersistentVolumeClaimList, - Convert_v1_PersistentVolumeClaimSpec_To_api_PersistentVolumeClaimSpec, - Convert_api_PersistentVolumeClaimSpec_To_v1_PersistentVolumeClaimSpec, - Convert_v1_PersistentVolumeClaimStatus_To_api_PersistentVolumeClaimStatus, - Convert_api_PersistentVolumeClaimStatus_To_v1_PersistentVolumeClaimStatus, - Convert_v1_PersistentVolumeClaimVolumeSource_To_api_PersistentVolumeClaimVolumeSource, - Convert_api_PersistentVolumeClaimVolumeSource_To_v1_PersistentVolumeClaimVolumeSource, - Convert_v1_PersistentVolumeList_To_api_PersistentVolumeList, - Convert_api_PersistentVolumeList_To_v1_PersistentVolumeList, - Convert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource, - Convert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource, - Convert_v1_PersistentVolumeSpec_To_api_PersistentVolumeSpec, - Convert_api_PersistentVolumeSpec_To_v1_PersistentVolumeSpec, - Convert_v1_PersistentVolumeStatus_To_api_PersistentVolumeStatus, - Convert_api_PersistentVolumeStatus_To_v1_PersistentVolumeStatus, - Convert_v1_PhotonPersistentDiskVolumeSource_To_api_PhotonPersistentDiskVolumeSource, - Convert_api_PhotonPersistentDiskVolumeSource_To_v1_PhotonPersistentDiskVolumeSource, - Convert_v1_Pod_To_api_Pod, - Convert_api_Pod_To_v1_Pod, - Convert_v1_PodAffinity_To_api_PodAffinity, - Convert_api_PodAffinity_To_v1_PodAffinity, - Convert_v1_PodAffinityTerm_To_api_PodAffinityTerm, - Convert_api_PodAffinityTerm_To_v1_PodAffinityTerm, - Convert_v1_PodAntiAffinity_To_api_PodAntiAffinity, - Convert_api_PodAntiAffinity_To_v1_PodAntiAffinity, - Convert_v1_PodAttachOptions_To_api_PodAttachOptions, - Convert_api_PodAttachOptions_To_v1_PodAttachOptions, - Convert_v1_PodCondition_To_api_PodCondition, - Convert_api_PodCondition_To_v1_PodCondition, - Convert_v1_PodExecOptions_To_api_PodExecOptions, - Convert_api_PodExecOptions_To_v1_PodExecOptions, - Convert_v1_PodList_To_api_PodList, - Convert_api_PodList_To_v1_PodList, - Convert_v1_PodLogOptions_To_api_PodLogOptions, - Convert_api_PodLogOptions_To_v1_PodLogOptions, - Convert_v1_PodPortForwardOptions_To_api_PodPortForwardOptions, - Convert_api_PodPortForwardOptions_To_v1_PodPortForwardOptions, - Convert_v1_PodProxyOptions_To_api_PodProxyOptions, - Convert_api_PodProxyOptions_To_v1_PodProxyOptions, - Convert_v1_PodSecurityContext_To_api_PodSecurityContext, - Convert_api_PodSecurityContext_To_v1_PodSecurityContext, - Convert_v1_PodSignature_To_api_PodSignature, - Convert_api_PodSignature_To_v1_PodSignature, - Convert_v1_PodSpec_To_api_PodSpec, - Convert_api_PodSpec_To_v1_PodSpec, - Convert_v1_PodStatus_To_api_PodStatus, - Convert_api_PodStatus_To_v1_PodStatus, - Convert_v1_PodStatusResult_To_api_PodStatusResult, - Convert_api_PodStatusResult_To_v1_PodStatusResult, - Convert_v1_PodTemplate_To_api_PodTemplate, - Convert_api_PodTemplate_To_v1_PodTemplate, - Convert_v1_PodTemplateList_To_api_PodTemplateList, - Convert_api_PodTemplateList_To_v1_PodTemplateList, - Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec, - Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec, - Convert_v1_PortworxVolumeSource_To_api_PortworxVolumeSource, - Convert_api_PortworxVolumeSource_To_v1_PortworxVolumeSource, - Convert_v1_Preconditions_To_api_Preconditions, - Convert_api_Preconditions_To_v1_Preconditions, - Convert_v1_PreferAvoidPodsEntry_To_api_PreferAvoidPodsEntry, - Convert_api_PreferAvoidPodsEntry_To_v1_PreferAvoidPodsEntry, - Convert_v1_PreferredSchedulingTerm_To_api_PreferredSchedulingTerm, - Convert_api_PreferredSchedulingTerm_To_v1_PreferredSchedulingTerm, - Convert_v1_Probe_To_api_Probe, - Convert_api_Probe_To_v1_Probe, - Convert_v1_ProjectedVolumeSource_To_api_ProjectedVolumeSource, - Convert_api_ProjectedVolumeSource_To_v1_ProjectedVolumeSource, - Convert_v1_QuobyteVolumeSource_To_api_QuobyteVolumeSource, - Convert_api_QuobyteVolumeSource_To_v1_QuobyteVolumeSource, - Convert_v1_RBDVolumeSource_To_api_RBDVolumeSource, - Convert_api_RBDVolumeSource_To_v1_RBDVolumeSource, - Convert_v1_RangeAllocation_To_api_RangeAllocation, - Convert_api_RangeAllocation_To_v1_RangeAllocation, - Convert_v1_ReplicationController_To_api_ReplicationController, - Convert_api_ReplicationController_To_v1_ReplicationController, - Convert_v1_ReplicationControllerCondition_To_api_ReplicationControllerCondition, - Convert_api_ReplicationControllerCondition_To_v1_ReplicationControllerCondition, - Convert_v1_ReplicationControllerList_To_api_ReplicationControllerList, - Convert_api_ReplicationControllerList_To_v1_ReplicationControllerList, - Convert_v1_ReplicationControllerSpec_To_api_ReplicationControllerSpec, - Convert_api_ReplicationControllerSpec_To_v1_ReplicationControllerSpec, - Convert_v1_ReplicationControllerStatus_To_api_ReplicationControllerStatus, - Convert_api_ReplicationControllerStatus_To_v1_ReplicationControllerStatus, - Convert_v1_ResourceFieldSelector_To_api_ResourceFieldSelector, - Convert_api_ResourceFieldSelector_To_v1_ResourceFieldSelector, - Convert_v1_ResourceQuota_To_api_ResourceQuota, - Convert_api_ResourceQuota_To_v1_ResourceQuota, - Convert_v1_ResourceQuotaList_To_api_ResourceQuotaList, - Convert_api_ResourceQuotaList_To_v1_ResourceQuotaList, - Convert_v1_ResourceQuotaSpec_To_api_ResourceQuotaSpec, - Convert_api_ResourceQuotaSpec_To_v1_ResourceQuotaSpec, - Convert_v1_ResourceQuotaStatus_To_api_ResourceQuotaStatus, - Convert_api_ResourceQuotaStatus_To_v1_ResourceQuotaStatus, - Convert_v1_ResourceRequirements_To_api_ResourceRequirements, - Convert_api_ResourceRequirements_To_v1_ResourceRequirements, - Convert_v1_SELinuxOptions_To_api_SELinuxOptions, - Convert_api_SELinuxOptions_To_v1_SELinuxOptions, - Convert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource, - Convert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource, - Convert_v1_Secret_To_api_Secret, - Convert_api_Secret_To_v1_Secret, - Convert_v1_SecretEnvSource_To_api_SecretEnvSource, - Convert_api_SecretEnvSource_To_v1_SecretEnvSource, - Convert_v1_SecretKeySelector_To_api_SecretKeySelector, - Convert_api_SecretKeySelector_To_v1_SecretKeySelector, - Convert_v1_SecretList_To_api_SecretList, - Convert_api_SecretList_To_v1_SecretList, - Convert_v1_SecretProjection_To_api_SecretProjection, - Convert_api_SecretProjection_To_v1_SecretProjection, - Convert_v1_SecretVolumeSource_To_api_SecretVolumeSource, - Convert_api_SecretVolumeSource_To_v1_SecretVolumeSource, - Convert_v1_SecurityContext_To_api_SecurityContext, - Convert_api_SecurityContext_To_v1_SecurityContext, - Convert_v1_SerializedReference_To_api_SerializedReference, - Convert_api_SerializedReference_To_v1_SerializedReference, - Convert_v1_Service_To_api_Service, - Convert_api_Service_To_v1_Service, - Convert_v1_ServiceAccount_To_api_ServiceAccount, - Convert_api_ServiceAccount_To_v1_ServiceAccount, - Convert_v1_ServiceAccountList_To_api_ServiceAccountList, - Convert_api_ServiceAccountList_To_v1_ServiceAccountList, - Convert_v1_ServiceList_To_api_ServiceList, - Convert_api_ServiceList_To_v1_ServiceList, - Convert_v1_ServicePort_To_api_ServicePort, - Convert_api_ServicePort_To_v1_ServicePort, - Convert_v1_ServiceProxyOptions_To_api_ServiceProxyOptions, - Convert_api_ServiceProxyOptions_To_v1_ServiceProxyOptions, - Convert_v1_ServiceSpec_To_api_ServiceSpec, - 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, - Convert_api_TCPSocketAction_To_v1_TCPSocketAction, - Convert_v1_Taint_To_api_Taint, - Convert_api_Taint_To_v1_Taint, - Convert_v1_Toleration_To_api_Toleration, - Convert_api_Toleration_To_v1_Toleration, - Convert_v1_Volume_To_api_Volume, - Convert_api_Volume_To_v1_Volume, - Convert_v1_VolumeMount_To_api_VolumeMount, - Convert_api_VolumeMount_To_v1_VolumeMount, - Convert_v1_VolumeProjection_To_api_VolumeProjection, - Convert_api_VolumeProjection_To_v1_VolumeProjection, - Convert_v1_VolumeSource_To_api_VolumeSource, - Convert_api_VolumeSource_To_v1_VolumeSource, - Convert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSource, - Convert_api_VsphereVirtualDiskVolumeSource_To_v1_VsphereVirtualDiskVolumeSource, - Convert_v1_WeightedPodAffinityTerm_To_api_WeightedPodAffinityTerm, - Convert_api_WeightedPodAffinityTerm_To_v1_WeightedPodAffinityTerm, - ) -} - -func autoConvert_v1_AWSElasticBlockStoreVolumeSource_To_api_AWSElasticBlockStoreVolumeSource(in *AWSElasticBlockStoreVolumeSource, out *api.AWSElasticBlockStoreVolumeSource, s conversion.Scope) error { - out.VolumeID = in.VolumeID - out.FSType = in.FSType - out.Partition = in.Partition - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_AWSElasticBlockStoreVolumeSource_To_api_AWSElasticBlockStoreVolumeSource is an autogenerated conversion function. -func Convert_v1_AWSElasticBlockStoreVolumeSource_To_api_AWSElasticBlockStoreVolumeSource(in *AWSElasticBlockStoreVolumeSource, out *api.AWSElasticBlockStoreVolumeSource, s conversion.Scope) error { - return autoConvert_v1_AWSElasticBlockStoreVolumeSource_To_api_AWSElasticBlockStoreVolumeSource(in, out, s) -} - -func autoConvert_api_AWSElasticBlockStoreVolumeSource_To_v1_AWSElasticBlockStoreVolumeSource(in *api.AWSElasticBlockStoreVolumeSource, out *AWSElasticBlockStoreVolumeSource, s conversion.Scope) error { - out.VolumeID = in.VolumeID - out.FSType = in.FSType - out.Partition = in.Partition - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_AWSElasticBlockStoreVolumeSource_To_v1_AWSElasticBlockStoreVolumeSource is an autogenerated conversion function. -func Convert_api_AWSElasticBlockStoreVolumeSource_To_v1_AWSElasticBlockStoreVolumeSource(in *api.AWSElasticBlockStoreVolumeSource, out *AWSElasticBlockStoreVolumeSource, s conversion.Scope) error { - return autoConvert_api_AWSElasticBlockStoreVolumeSource_To_v1_AWSElasticBlockStoreVolumeSource(in, out, s) -} - -func autoConvert_v1_Affinity_To_api_Affinity(in *Affinity, out *api.Affinity, s conversion.Scope) error { - out.NodeAffinity = (*api.NodeAffinity)(unsafe.Pointer(in.NodeAffinity)) - out.PodAffinity = (*api.PodAffinity)(unsafe.Pointer(in.PodAffinity)) - out.PodAntiAffinity = (*api.PodAntiAffinity)(unsafe.Pointer(in.PodAntiAffinity)) - return nil -} - -// Convert_v1_Affinity_To_api_Affinity is an autogenerated conversion function. -func Convert_v1_Affinity_To_api_Affinity(in *Affinity, out *api.Affinity, s conversion.Scope) error { - return autoConvert_v1_Affinity_To_api_Affinity(in, out, s) -} - -func autoConvert_api_Affinity_To_v1_Affinity(in *api.Affinity, out *Affinity, s conversion.Scope) error { - out.NodeAffinity = (*NodeAffinity)(unsafe.Pointer(in.NodeAffinity)) - out.PodAffinity = (*PodAffinity)(unsafe.Pointer(in.PodAffinity)) - out.PodAntiAffinity = (*PodAntiAffinity)(unsafe.Pointer(in.PodAntiAffinity)) - return nil -} - -// Convert_api_Affinity_To_v1_Affinity is an autogenerated conversion function. -func Convert_api_Affinity_To_v1_Affinity(in *api.Affinity, out *Affinity, s conversion.Scope) error { - return autoConvert_api_Affinity_To_v1_Affinity(in, out, s) -} - -func autoConvert_v1_AttachedVolume_To_api_AttachedVolume(in *AttachedVolume, out *api.AttachedVolume, s conversion.Scope) error { - out.Name = api.UniqueVolumeName(in.Name) - out.DevicePath = in.DevicePath - return nil -} - -// Convert_v1_AttachedVolume_To_api_AttachedVolume is an autogenerated conversion function. -func Convert_v1_AttachedVolume_To_api_AttachedVolume(in *AttachedVolume, out *api.AttachedVolume, s conversion.Scope) error { - return autoConvert_v1_AttachedVolume_To_api_AttachedVolume(in, out, s) -} - -func autoConvert_api_AttachedVolume_To_v1_AttachedVolume(in *api.AttachedVolume, out *AttachedVolume, s conversion.Scope) error { - out.Name = UniqueVolumeName(in.Name) - out.DevicePath = in.DevicePath - return nil -} - -// Convert_api_AttachedVolume_To_v1_AttachedVolume is an autogenerated conversion function. -func Convert_api_AttachedVolume_To_v1_AttachedVolume(in *api.AttachedVolume, out *AttachedVolume, s conversion.Scope) error { - return autoConvert_api_AttachedVolume_To_v1_AttachedVolume(in, out, s) -} - -func autoConvert_v1_AvoidPods_To_api_AvoidPods(in *AvoidPods, out *api.AvoidPods, s conversion.Scope) error { - out.PreferAvoidPods = *(*[]api.PreferAvoidPodsEntry)(unsafe.Pointer(&in.PreferAvoidPods)) - return nil -} - -// Convert_v1_AvoidPods_To_api_AvoidPods is an autogenerated conversion function. -func Convert_v1_AvoidPods_To_api_AvoidPods(in *AvoidPods, out *api.AvoidPods, s conversion.Scope) error { - return autoConvert_v1_AvoidPods_To_api_AvoidPods(in, out, s) -} - -func autoConvert_api_AvoidPods_To_v1_AvoidPods(in *api.AvoidPods, out *AvoidPods, s conversion.Scope) error { - out.PreferAvoidPods = *(*[]PreferAvoidPodsEntry)(unsafe.Pointer(&in.PreferAvoidPods)) - return nil -} - -// Convert_api_AvoidPods_To_v1_AvoidPods is an autogenerated conversion function. -func Convert_api_AvoidPods_To_v1_AvoidPods(in *api.AvoidPods, out *AvoidPods, s conversion.Scope) error { - return autoConvert_api_AvoidPods_To_v1_AvoidPods(in, out, s) -} - -func autoConvert_v1_AzureDiskVolumeSource_To_api_AzureDiskVolumeSource(in *AzureDiskVolumeSource, out *api.AzureDiskVolumeSource, s conversion.Scope) error { - out.DiskName = in.DiskName - out.DataDiskURI = in.DataDiskURI - out.CachingMode = (*api.AzureDataDiskCachingMode)(unsafe.Pointer(in.CachingMode)) - out.FSType = (*string)(unsafe.Pointer(in.FSType)) - out.ReadOnly = (*bool)(unsafe.Pointer(in.ReadOnly)) - out.Kind = (*api.AzureDataDiskKind)(unsafe.Pointer(in.Kind)) - return nil -} - -// Convert_v1_AzureDiskVolumeSource_To_api_AzureDiskVolumeSource is an autogenerated conversion function. -func Convert_v1_AzureDiskVolumeSource_To_api_AzureDiskVolumeSource(in *AzureDiskVolumeSource, out *api.AzureDiskVolumeSource, s conversion.Scope) error { - return autoConvert_v1_AzureDiskVolumeSource_To_api_AzureDiskVolumeSource(in, out, s) -} - -func autoConvert_api_AzureDiskVolumeSource_To_v1_AzureDiskVolumeSource(in *api.AzureDiskVolumeSource, out *AzureDiskVolumeSource, s conversion.Scope) error { - out.DiskName = in.DiskName - out.DataDiskURI = in.DataDiskURI - out.CachingMode = (*AzureDataDiskCachingMode)(unsafe.Pointer(in.CachingMode)) - out.FSType = (*string)(unsafe.Pointer(in.FSType)) - out.ReadOnly = (*bool)(unsafe.Pointer(in.ReadOnly)) - out.Kind = (*AzureDataDiskKind)(unsafe.Pointer(in.Kind)) - return nil -} - -// Convert_api_AzureDiskVolumeSource_To_v1_AzureDiskVolumeSource is an autogenerated conversion function. -func Convert_api_AzureDiskVolumeSource_To_v1_AzureDiskVolumeSource(in *api.AzureDiskVolumeSource, out *AzureDiskVolumeSource, s conversion.Scope) error { - return autoConvert_api_AzureDiskVolumeSource_To_v1_AzureDiskVolumeSource(in, out, s) -} - -func autoConvert_v1_AzureFileVolumeSource_To_api_AzureFileVolumeSource(in *AzureFileVolumeSource, out *api.AzureFileVolumeSource, s conversion.Scope) error { - out.SecretName = in.SecretName - out.ShareName = in.ShareName - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_AzureFileVolumeSource_To_api_AzureFileVolumeSource is an autogenerated conversion function. -func Convert_v1_AzureFileVolumeSource_To_api_AzureFileVolumeSource(in *AzureFileVolumeSource, out *api.AzureFileVolumeSource, s conversion.Scope) error { - return autoConvert_v1_AzureFileVolumeSource_To_api_AzureFileVolumeSource(in, out, s) -} - -func autoConvert_api_AzureFileVolumeSource_To_v1_AzureFileVolumeSource(in *api.AzureFileVolumeSource, out *AzureFileVolumeSource, s conversion.Scope) error { - out.SecretName = in.SecretName - out.ShareName = in.ShareName - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_AzureFileVolumeSource_To_v1_AzureFileVolumeSource is an autogenerated conversion function. -func Convert_api_AzureFileVolumeSource_To_v1_AzureFileVolumeSource(in *api.AzureFileVolumeSource, out *AzureFileVolumeSource, s conversion.Scope) error { - return autoConvert_api_AzureFileVolumeSource_To_v1_AzureFileVolumeSource(in, out, s) -} - -func autoConvert_v1_Binding_To_api_Binding(in *Binding, out *api.Binding, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_ObjectReference_To_api_ObjectReference(&in.Target, &out.Target, s); err != nil { - return err - } - return nil -} - -// Convert_v1_Binding_To_api_Binding is an autogenerated conversion function. -func Convert_v1_Binding_To_api_Binding(in *Binding, out *api.Binding, s conversion.Scope) error { - return autoConvert_v1_Binding_To_api_Binding(in, out, s) -} - -func autoConvert_api_Binding_To_v1_Binding(in *api.Binding, out *Binding, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_ObjectReference_To_v1_ObjectReference(&in.Target, &out.Target, s); err != nil { - return err - } - return nil -} - -// Convert_api_Binding_To_v1_Binding is an autogenerated conversion function. -func Convert_api_Binding_To_v1_Binding(in *api.Binding, out *Binding, s conversion.Scope) error { - return autoConvert_api_Binding_To_v1_Binding(in, out, s) -} - -func autoConvert_v1_Capabilities_To_api_Capabilities(in *Capabilities, out *api.Capabilities, s conversion.Scope) error { - out.Add = *(*[]api.Capability)(unsafe.Pointer(&in.Add)) - out.Drop = *(*[]api.Capability)(unsafe.Pointer(&in.Drop)) - return nil -} - -// Convert_v1_Capabilities_To_api_Capabilities is an autogenerated conversion function. -func Convert_v1_Capabilities_To_api_Capabilities(in *Capabilities, out *api.Capabilities, s conversion.Scope) error { - return autoConvert_v1_Capabilities_To_api_Capabilities(in, out, s) -} - -func autoConvert_api_Capabilities_To_v1_Capabilities(in *api.Capabilities, out *Capabilities, s conversion.Scope) error { - out.Add = *(*[]Capability)(unsafe.Pointer(&in.Add)) - out.Drop = *(*[]Capability)(unsafe.Pointer(&in.Drop)) - return nil -} - -// Convert_api_Capabilities_To_v1_Capabilities is an autogenerated conversion function. -func Convert_api_Capabilities_To_v1_Capabilities(in *api.Capabilities, out *Capabilities, s conversion.Scope) error { - return autoConvert_api_Capabilities_To_v1_Capabilities(in, out, s) -} - -func autoConvert_v1_CephFSVolumeSource_To_api_CephFSVolumeSource(in *CephFSVolumeSource, out *api.CephFSVolumeSource, s conversion.Scope) error { - out.Monitors = *(*[]string)(unsafe.Pointer(&in.Monitors)) - out.Path = in.Path - out.User = in.User - out.SecretFile = in.SecretFile - out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_CephFSVolumeSource_To_api_CephFSVolumeSource is an autogenerated conversion function. -func Convert_v1_CephFSVolumeSource_To_api_CephFSVolumeSource(in *CephFSVolumeSource, out *api.CephFSVolumeSource, s conversion.Scope) error { - return autoConvert_v1_CephFSVolumeSource_To_api_CephFSVolumeSource(in, out, s) -} - -func autoConvert_api_CephFSVolumeSource_To_v1_CephFSVolumeSource(in *api.CephFSVolumeSource, out *CephFSVolumeSource, s conversion.Scope) error { - if in.Monitors == nil { - out.Monitors = make([]string, 0) - } else { - out.Monitors = *(*[]string)(unsafe.Pointer(&in.Monitors)) - } - out.Path = in.Path - out.User = in.User - out.SecretFile = in.SecretFile - out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_CephFSVolumeSource_To_v1_CephFSVolumeSource is an autogenerated conversion function. -func Convert_api_CephFSVolumeSource_To_v1_CephFSVolumeSource(in *api.CephFSVolumeSource, out *CephFSVolumeSource, s conversion.Scope) error { - return autoConvert_api_CephFSVolumeSource_To_v1_CephFSVolumeSource(in, out, s) -} - -func autoConvert_v1_CinderVolumeSource_To_api_CinderVolumeSource(in *CinderVolumeSource, out *api.CinderVolumeSource, s conversion.Scope) error { - out.VolumeID = in.VolumeID - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_CinderVolumeSource_To_api_CinderVolumeSource is an autogenerated conversion function. -func Convert_v1_CinderVolumeSource_To_api_CinderVolumeSource(in *CinderVolumeSource, out *api.CinderVolumeSource, s conversion.Scope) error { - return autoConvert_v1_CinderVolumeSource_To_api_CinderVolumeSource(in, out, s) -} - -func autoConvert_api_CinderVolumeSource_To_v1_CinderVolumeSource(in *api.CinderVolumeSource, out *CinderVolumeSource, s conversion.Scope) error { - out.VolumeID = in.VolumeID - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_CinderVolumeSource_To_v1_CinderVolumeSource is an autogenerated conversion function. -func Convert_api_CinderVolumeSource_To_v1_CinderVolumeSource(in *api.CinderVolumeSource, out *CinderVolumeSource, s conversion.Scope) error { - return autoConvert_api_CinderVolumeSource_To_v1_CinderVolumeSource(in, out, s) -} - -func autoConvert_v1_ComponentCondition_To_api_ComponentCondition(in *ComponentCondition, out *api.ComponentCondition, s conversion.Scope) error { - out.Type = api.ComponentConditionType(in.Type) - out.Status = api.ConditionStatus(in.Status) - out.Message = in.Message - out.Error = in.Error - return nil -} - -// Convert_v1_ComponentCondition_To_api_ComponentCondition is an autogenerated conversion function. -func Convert_v1_ComponentCondition_To_api_ComponentCondition(in *ComponentCondition, out *api.ComponentCondition, s conversion.Scope) error { - return autoConvert_v1_ComponentCondition_To_api_ComponentCondition(in, out, s) -} - -func autoConvert_api_ComponentCondition_To_v1_ComponentCondition(in *api.ComponentCondition, out *ComponentCondition, s conversion.Scope) error { - out.Type = ComponentConditionType(in.Type) - out.Status = ConditionStatus(in.Status) - out.Message = in.Message - out.Error = in.Error - return nil -} - -// Convert_api_ComponentCondition_To_v1_ComponentCondition is an autogenerated conversion function. -func Convert_api_ComponentCondition_To_v1_ComponentCondition(in *api.ComponentCondition, out *ComponentCondition, s conversion.Scope) error { - return autoConvert_api_ComponentCondition_To_v1_ComponentCondition(in, out, s) -} - -func autoConvert_v1_ComponentStatus_To_api_ComponentStatus(in *ComponentStatus, out *api.ComponentStatus, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Conditions = *(*[]api.ComponentCondition)(unsafe.Pointer(&in.Conditions)) - return nil -} - -// Convert_v1_ComponentStatus_To_api_ComponentStatus is an autogenerated conversion function. -func Convert_v1_ComponentStatus_To_api_ComponentStatus(in *ComponentStatus, out *api.ComponentStatus, s conversion.Scope) error { - return autoConvert_v1_ComponentStatus_To_api_ComponentStatus(in, out, s) -} - -func autoConvert_api_ComponentStatus_To_v1_ComponentStatus(in *api.ComponentStatus, out *ComponentStatus, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Conditions = *(*[]ComponentCondition)(unsafe.Pointer(&in.Conditions)) - return nil -} - -// Convert_api_ComponentStatus_To_v1_ComponentStatus is an autogenerated conversion function. -func Convert_api_ComponentStatus_To_v1_ComponentStatus(in *api.ComponentStatus, out *ComponentStatus, s conversion.Scope) error { - return autoConvert_api_ComponentStatus_To_v1_ComponentStatus(in, out, s) -} - -func autoConvert_v1_ComponentStatusList_To_api_ComponentStatusList(in *ComponentStatusList, out *api.ComponentStatusList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.ComponentStatus)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_ComponentStatusList_To_api_ComponentStatusList is an autogenerated conversion function. -func Convert_v1_ComponentStatusList_To_api_ComponentStatusList(in *ComponentStatusList, out *api.ComponentStatusList, s conversion.Scope) error { - return autoConvert_v1_ComponentStatusList_To_api_ComponentStatusList(in, out, s) -} - -func autoConvert_api_ComponentStatusList_To_v1_ComponentStatusList(in *api.ComponentStatusList, out *ComponentStatusList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]ComponentStatus, 0) - } else { - out.Items = *(*[]ComponentStatus)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_ComponentStatusList_To_v1_ComponentStatusList is an autogenerated conversion function. -func Convert_api_ComponentStatusList_To_v1_ComponentStatusList(in *api.ComponentStatusList, out *ComponentStatusList, s conversion.Scope) error { - return autoConvert_api_ComponentStatusList_To_v1_ComponentStatusList(in, out, s) -} - -func autoConvert_v1_ConfigMap_To_api_ConfigMap(in *ConfigMap, out *api.ConfigMap, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Data = *(*map[string]string)(unsafe.Pointer(&in.Data)) - return nil -} - -// Convert_v1_ConfigMap_To_api_ConfigMap is an autogenerated conversion function. -func Convert_v1_ConfigMap_To_api_ConfigMap(in *ConfigMap, out *api.ConfigMap, s conversion.Scope) error { - return autoConvert_v1_ConfigMap_To_api_ConfigMap(in, out, s) -} - -func autoConvert_api_ConfigMap_To_v1_ConfigMap(in *api.ConfigMap, out *ConfigMap, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Data = *(*map[string]string)(unsafe.Pointer(&in.Data)) - return nil -} - -// Convert_api_ConfigMap_To_v1_ConfigMap is an autogenerated conversion function. -func Convert_api_ConfigMap_To_v1_ConfigMap(in *api.ConfigMap, out *ConfigMap, s conversion.Scope) error { - return autoConvert_api_ConfigMap_To_v1_ConfigMap(in, out, s) -} - -func autoConvert_v1_ConfigMapEnvSource_To_api_ConfigMapEnvSource(in *ConfigMapEnvSource, out *api.ConfigMapEnvSource, s conversion.Scope) error { - if err := Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_ConfigMapEnvSource_To_api_ConfigMapEnvSource is an autogenerated conversion function. -func Convert_v1_ConfigMapEnvSource_To_api_ConfigMapEnvSource(in *ConfigMapEnvSource, out *api.ConfigMapEnvSource, s conversion.Scope) error { - return autoConvert_v1_ConfigMapEnvSource_To_api_ConfigMapEnvSource(in, out, s) -} - -func autoConvert_api_ConfigMapEnvSource_To_v1_ConfigMapEnvSource(in *api.ConfigMapEnvSource, out *ConfigMapEnvSource, s conversion.Scope) error { - if err := Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_ConfigMapEnvSource_To_v1_ConfigMapEnvSource is an autogenerated conversion function. -func Convert_api_ConfigMapEnvSource_To_v1_ConfigMapEnvSource(in *api.ConfigMapEnvSource, out *ConfigMapEnvSource, s conversion.Scope) error { - return autoConvert_api_ConfigMapEnvSource_To_v1_ConfigMapEnvSource(in, out, s) -} - -func autoConvert_v1_ConfigMapKeySelector_To_api_ConfigMapKeySelector(in *ConfigMapKeySelector, out *api.ConfigMapKeySelector, s conversion.Scope) error { - if err := Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Key = in.Key - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_ConfigMapKeySelector_To_api_ConfigMapKeySelector is an autogenerated conversion function. -func Convert_v1_ConfigMapKeySelector_To_api_ConfigMapKeySelector(in *ConfigMapKeySelector, out *api.ConfigMapKeySelector, s conversion.Scope) error { - return autoConvert_v1_ConfigMapKeySelector_To_api_ConfigMapKeySelector(in, out, s) -} - -func autoConvert_api_ConfigMapKeySelector_To_v1_ConfigMapKeySelector(in *api.ConfigMapKeySelector, out *ConfigMapKeySelector, s conversion.Scope) error { - if err := Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Key = in.Key - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_ConfigMapKeySelector_To_v1_ConfigMapKeySelector is an autogenerated conversion function. -func Convert_api_ConfigMapKeySelector_To_v1_ConfigMapKeySelector(in *api.ConfigMapKeySelector, out *ConfigMapKeySelector, s conversion.Scope) error { - return autoConvert_api_ConfigMapKeySelector_To_v1_ConfigMapKeySelector(in, out, s) -} - -func autoConvert_v1_ConfigMapList_To_api_ConfigMapList(in *ConfigMapList, out *api.ConfigMapList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.ConfigMap)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_ConfigMapList_To_api_ConfigMapList is an autogenerated conversion function. -func Convert_v1_ConfigMapList_To_api_ConfigMapList(in *ConfigMapList, out *api.ConfigMapList, s conversion.Scope) error { - return autoConvert_v1_ConfigMapList_To_api_ConfigMapList(in, out, s) -} - -func autoConvert_api_ConfigMapList_To_v1_ConfigMapList(in *api.ConfigMapList, out *ConfigMapList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]ConfigMap, 0) - } else { - out.Items = *(*[]ConfigMap)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_ConfigMapList_To_v1_ConfigMapList is an autogenerated conversion function. -func Convert_api_ConfigMapList_To_v1_ConfigMapList(in *api.ConfigMapList, out *ConfigMapList, s conversion.Scope) error { - return autoConvert_api_ConfigMapList_To_v1_ConfigMapList(in, out, s) -} - -func autoConvert_v1_ConfigMapProjection_To_api_ConfigMapProjection(in *ConfigMapProjection, out *api.ConfigMapProjection, s conversion.Scope) error { - if err := Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Items = *(*[]api.KeyToPath)(unsafe.Pointer(&in.Items)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_ConfigMapProjection_To_api_ConfigMapProjection is an autogenerated conversion function. -func Convert_v1_ConfigMapProjection_To_api_ConfigMapProjection(in *ConfigMapProjection, out *api.ConfigMapProjection, s conversion.Scope) error { - return autoConvert_v1_ConfigMapProjection_To_api_ConfigMapProjection(in, out, s) -} - -func autoConvert_api_ConfigMapProjection_To_v1_ConfigMapProjection(in *api.ConfigMapProjection, out *ConfigMapProjection, s conversion.Scope) error { - if err := Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Items = *(*[]KeyToPath)(unsafe.Pointer(&in.Items)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_ConfigMapProjection_To_v1_ConfigMapProjection is an autogenerated conversion function. -func Convert_api_ConfigMapProjection_To_v1_ConfigMapProjection(in *api.ConfigMapProjection, out *ConfigMapProjection, s conversion.Scope) error { - return autoConvert_api_ConfigMapProjection_To_v1_ConfigMapProjection(in, out, s) -} - -func autoConvert_v1_ConfigMapVolumeSource_To_api_ConfigMapVolumeSource(in *ConfigMapVolumeSource, out *api.ConfigMapVolumeSource, s conversion.Scope) error { - if err := Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Items = *(*[]api.KeyToPath)(unsafe.Pointer(&in.Items)) - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_ConfigMapVolumeSource_To_api_ConfigMapVolumeSource is an autogenerated conversion function. -func Convert_v1_ConfigMapVolumeSource_To_api_ConfigMapVolumeSource(in *ConfigMapVolumeSource, out *api.ConfigMapVolumeSource, s conversion.Scope) error { - return autoConvert_v1_ConfigMapVolumeSource_To_api_ConfigMapVolumeSource(in, out, s) -} - -func autoConvert_api_ConfigMapVolumeSource_To_v1_ConfigMapVolumeSource(in *api.ConfigMapVolumeSource, out *ConfigMapVolumeSource, s conversion.Scope) error { - if err := Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Items = *(*[]KeyToPath)(unsafe.Pointer(&in.Items)) - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_ConfigMapVolumeSource_To_v1_ConfigMapVolumeSource is an autogenerated conversion function. -func Convert_api_ConfigMapVolumeSource_To_v1_ConfigMapVolumeSource(in *api.ConfigMapVolumeSource, out *ConfigMapVolumeSource, s conversion.Scope) error { - return autoConvert_api_ConfigMapVolumeSource_To_v1_ConfigMapVolumeSource(in, out, s) -} - -func autoConvert_v1_Container_To_api_Container(in *Container, out *api.Container, s conversion.Scope) error { - out.Name = in.Name - out.Image = in.Image - out.Command = *(*[]string)(unsafe.Pointer(&in.Command)) - out.Args = *(*[]string)(unsafe.Pointer(&in.Args)) - out.WorkingDir = in.WorkingDir - out.Ports = *(*[]api.ContainerPort)(unsafe.Pointer(&in.Ports)) - out.EnvFrom = *(*[]api.EnvFromSource)(unsafe.Pointer(&in.EnvFrom)) - out.Env = *(*[]api.EnvVar)(unsafe.Pointer(&in.Env)) - if err := Convert_v1_ResourceRequirements_To_api_ResourceRequirements(&in.Resources, &out.Resources, s); err != nil { - return err - } - out.VolumeMounts = *(*[]api.VolumeMount)(unsafe.Pointer(&in.VolumeMounts)) - out.LivenessProbe = (*api.Probe)(unsafe.Pointer(in.LivenessProbe)) - out.ReadinessProbe = (*api.Probe)(unsafe.Pointer(in.ReadinessProbe)) - out.Lifecycle = (*api.Lifecycle)(unsafe.Pointer(in.Lifecycle)) - out.TerminationMessagePath = in.TerminationMessagePath - out.TerminationMessagePolicy = api.TerminationMessagePolicy(in.TerminationMessagePolicy) - out.ImagePullPolicy = api.PullPolicy(in.ImagePullPolicy) - out.SecurityContext = (*api.SecurityContext)(unsafe.Pointer(in.SecurityContext)) - out.Stdin = in.Stdin - out.StdinOnce = in.StdinOnce - out.TTY = in.TTY - return nil -} - -// Convert_v1_Container_To_api_Container is an autogenerated conversion function. -func Convert_v1_Container_To_api_Container(in *Container, out *api.Container, s conversion.Scope) error { - return autoConvert_v1_Container_To_api_Container(in, out, s) -} - -func autoConvert_api_Container_To_v1_Container(in *api.Container, out *Container, s conversion.Scope) error { - out.Name = in.Name - out.Image = in.Image - out.Command = *(*[]string)(unsafe.Pointer(&in.Command)) - out.Args = *(*[]string)(unsafe.Pointer(&in.Args)) - out.WorkingDir = in.WorkingDir - out.Ports = *(*[]ContainerPort)(unsafe.Pointer(&in.Ports)) - out.EnvFrom = *(*[]EnvFromSource)(unsafe.Pointer(&in.EnvFrom)) - out.Env = *(*[]EnvVar)(unsafe.Pointer(&in.Env)) - if err := Convert_api_ResourceRequirements_To_v1_ResourceRequirements(&in.Resources, &out.Resources, s); err != nil { - return err - } - out.VolumeMounts = *(*[]VolumeMount)(unsafe.Pointer(&in.VolumeMounts)) - out.LivenessProbe = (*Probe)(unsafe.Pointer(in.LivenessProbe)) - out.ReadinessProbe = (*Probe)(unsafe.Pointer(in.ReadinessProbe)) - out.Lifecycle = (*Lifecycle)(unsafe.Pointer(in.Lifecycle)) - out.TerminationMessagePath = in.TerminationMessagePath - out.TerminationMessagePolicy = TerminationMessagePolicy(in.TerminationMessagePolicy) - out.ImagePullPolicy = PullPolicy(in.ImagePullPolicy) - out.SecurityContext = (*SecurityContext)(unsafe.Pointer(in.SecurityContext)) - out.Stdin = in.Stdin - out.StdinOnce = in.StdinOnce - out.TTY = in.TTY - return nil -} - -// Convert_api_Container_To_v1_Container is an autogenerated conversion function. -func Convert_api_Container_To_v1_Container(in *api.Container, out *Container, s conversion.Scope) error { - return autoConvert_api_Container_To_v1_Container(in, out, s) -} - -func autoConvert_v1_ContainerImage_To_api_ContainerImage(in *ContainerImage, out *api.ContainerImage, s conversion.Scope) error { - out.Names = *(*[]string)(unsafe.Pointer(&in.Names)) - out.SizeBytes = in.SizeBytes - return nil -} - -// Convert_v1_ContainerImage_To_api_ContainerImage is an autogenerated conversion function. -func Convert_v1_ContainerImage_To_api_ContainerImage(in *ContainerImage, out *api.ContainerImage, s conversion.Scope) error { - return autoConvert_v1_ContainerImage_To_api_ContainerImage(in, out, s) -} - -func autoConvert_api_ContainerImage_To_v1_ContainerImage(in *api.ContainerImage, out *ContainerImage, s conversion.Scope) error { - if in.Names == nil { - out.Names = make([]string, 0) - } else { - out.Names = *(*[]string)(unsafe.Pointer(&in.Names)) - } - out.SizeBytes = in.SizeBytes - return nil -} - -// Convert_api_ContainerImage_To_v1_ContainerImage is an autogenerated conversion function. -func Convert_api_ContainerImage_To_v1_ContainerImage(in *api.ContainerImage, out *ContainerImage, s conversion.Scope) error { - return autoConvert_api_ContainerImage_To_v1_ContainerImage(in, out, s) -} - -func autoConvert_v1_ContainerPort_To_api_ContainerPort(in *ContainerPort, out *api.ContainerPort, s conversion.Scope) error { - out.Name = in.Name - out.HostPort = in.HostPort - out.ContainerPort = in.ContainerPort - out.Protocol = api.Protocol(in.Protocol) - out.HostIP = in.HostIP - return nil -} - -// Convert_v1_ContainerPort_To_api_ContainerPort is an autogenerated conversion function. -func Convert_v1_ContainerPort_To_api_ContainerPort(in *ContainerPort, out *api.ContainerPort, s conversion.Scope) error { - return autoConvert_v1_ContainerPort_To_api_ContainerPort(in, out, s) -} - -func autoConvert_api_ContainerPort_To_v1_ContainerPort(in *api.ContainerPort, out *ContainerPort, s conversion.Scope) error { - out.Name = in.Name - out.HostPort = in.HostPort - out.ContainerPort = in.ContainerPort - out.Protocol = Protocol(in.Protocol) - out.HostIP = in.HostIP - return nil -} - -// Convert_api_ContainerPort_To_v1_ContainerPort is an autogenerated conversion function. -func Convert_api_ContainerPort_To_v1_ContainerPort(in *api.ContainerPort, out *ContainerPort, s conversion.Scope) error { - return autoConvert_api_ContainerPort_To_v1_ContainerPort(in, out, s) -} - -func autoConvert_v1_ContainerState_To_api_ContainerState(in *ContainerState, out *api.ContainerState, s conversion.Scope) error { - out.Waiting = (*api.ContainerStateWaiting)(unsafe.Pointer(in.Waiting)) - out.Running = (*api.ContainerStateRunning)(unsafe.Pointer(in.Running)) - out.Terminated = (*api.ContainerStateTerminated)(unsafe.Pointer(in.Terminated)) - return nil -} - -// Convert_v1_ContainerState_To_api_ContainerState is an autogenerated conversion function. -func Convert_v1_ContainerState_To_api_ContainerState(in *ContainerState, out *api.ContainerState, s conversion.Scope) error { - return autoConvert_v1_ContainerState_To_api_ContainerState(in, out, s) -} - -func autoConvert_api_ContainerState_To_v1_ContainerState(in *api.ContainerState, out *ContainerState, s conversion.Scope) error { - out.Waiting = (*ContainerStateWaiting)(unsafe.Pointer(in.Waiting)) - out.Running = (*ContainerStateRunning)(unsafe.Pointer(in.Running)) - out.Terminated = (*ContainerStateTerminated)(unsafe.Pointer(in.Terminated)) - return nil -} - -// Convert_api_ContainerState_To_v1_ContainerState is an autogenerated conversion function. -func Convert_api_ContainerState_To_v1_ContainerState(in *api.ContainerState, out *ContainerState, s conversion.Scope) error { - return autoConvert_api_ContainerState_To_v1_ContainerState(in, out, s) -} - -func autoConvert_v1_ContainerStateRunning_To_api_ContainerStateRunning(in *ContainerStateRunning, out *api.ContainerStateRunning, s conversion.Scope) error { - out.StartedAt = in.StartedAt - return nil -} - -// Convert_v1_ContainerStateRunning_To_api_ContainerStateRunning is an autogenerated conversion function. -func Convert_v1_ContainerStateRunning_To_api_ContainerStateRunning(in *ContainerStateRunning, out *api.ContainerStateRunning, s conversion.Scope) error { - return autoConvert_v1_ContainerStateRunning_To_api_ContainerStateRunning(in, out, s) -} - -func autoConvert_api_ContainerStateRunning_To_v1_ContainerStateRunning(in *api.ContainerStateRunning, out *ContainerStateRunning, s conversion.Scope) error { - out.StartedAt = in.StartedAt - return nil -} - -// Convert_api_ContainerStateRunning_To_v1_ContainerStateRunning is an autogenerated conversion function. -func Convert_api_ContainerStateRunning_To_v1_ContainerStateRunning(in *api.ContainerStateRunning, out *ContainerStateRunning, s conversion.Scope) error { - return autoConvert_api_ContainerStateRunning_To_v1_ContainerStateRunning(in, out, s) -} - -func autoConvert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated(in *ContainerStateTerminated, out *api.ContainerStateTerminated, s conversion.Scope) error { - out.ExitCode = in.ExitCode - out.Signal = in.Signal - out.Reason = in.Reason - out.Message = in.Message - out.StartedAt = in.StartedAt - out.FinishedAt = in.FinishedAt - out.ContainerID = in.ContainerID - return nil -} - -// Convert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated is an autogenerated conversion function. -func Convert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated(in *ContainerStateTerminated, out *api.ContainerStateTerminated, s conversion.Scope) error { - return autoConvert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated(in, out, s) -} - -func autoConvert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated(in *api.ContainerStateTerminated, out *ContainerStateTerminated, s conversion.Scope) error { - out.ExitCode = in.ExitCode - out.Signal = in.Signal - out.Reason = in.Reason - out.Message = in.Message - out.StartedAt = in.StartedAt - out.FinishedAt = in.FinishedAt - out.ContainerID = in.ContainerID - return nil -} - -// Convert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated is an autogenerated conversion function. -func Convert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated(in *api.ContainerStateTerminated, out *ContainerStateTerminated, s conversion.Scope) error { - return autoConvert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated(in, out, s) -} - -func autoConvert_v1_ContainerStateWaiting_To_api_ContainerStateWaiting(in *ContainerStateWaiting, out *api.ContainerStateWaiting, s conversion.Scope) error { - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_v1_ContainerStateWaiting_To_api_ContainerStateWaiting is an autogenerated conversion function. -func Convert_v1_ContainerStateWaiting_To_api_ContainerStateWaiting(in *ContainerStateWaiting, out *api.ContainerStateWaiting, s conversion.Scope) error { - return autoConvert_v1_ContainerStateWaiting_To_api_ContainerStateWaiting(in, out, s) -} - -func autoConvert_api_ContainerStateWaiting_To_v1_ContainerStateWaiting(in *api.ContainerStateWaiting, out *ContainerStateWaiting, s conversion.Scope) error { - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_api_ContainerStateWaiting_To_v1_ContainerStateWaiting is an autogenerated conversion function. -func Convert_api_ContainerStateWaiting_To_v1_ContainerStateWaiting(in *api.ContainerStateWaiting, out *ContainerStateWaiting, s conversion.Scope) error { - return autoConvert_api_ContainerStateWaiting_To_v1_ContainerStateWaiting(in, out, s) -} - -func autoConvert_v1_ContainerStatus_To_api_ContainerStatus(in *ContainerStatus, out *api.ContainerStatus, s conversion.Scope) error { - out.Name = in.Name - if err := Convert_v1_ContainerState_To_api_ContainerState(&in.State, &out.State, s); err != nil { - return err - } - if err := Convert_v1_ContainerState_To_api_ContainerState(&in.LastTerminationState, &out.LastTerminationState, s); err != nil { - return err - } - out.Ready = in.Ready - out.RestartCount = in.RestartCount - out.Image = in.Image - out.ImageID = in.ImageID - out.ContainerID = in.ContainerID - return nil -} - -// Convert_v1_ContainerStatus_To_api_ContainerStatus is an autogenerated conversion function. -func Convert_v1_ContainerStatus_To_api_ContainerStatus(in *ContainerStatus, out *api.ContainerStatus, s conversion.Scope) error { - return autoConvert_v1_ContainerStatus_To_api_ContainerStatus(in, out, s) -} - -func autoConvert_api_ContainerStatus_To_v1_ContainerStatus(in *api.ContainerStatus, out *ContainerStatus, s conversion.Scope) error { - out.Name = in.Name - if err := Convert_api_ContainerState_To_v1_ContainerState(&in.State, &out.State, s); err != nil { - return err - } - if err := Convert_api_ContainerState_To_v1_ContainerState(&in.LastTerminationState, &out.LastTerminationState, s); err != nil { - return err - } - out.Ready = in.Ready - out.RestartCount = in.RestartCount - out.Image = in.Image - out.ImageID = in.ImageID - out.ContainerID = in.ContainerID - return nil -} - -// Convert_api_ContainerStatus_To_v1_ContainerStatus is an autogenerated conversion function. -func Convert_api_ContainerStatus_To_v1_ContainerStatus(in *api.ContainerStatus, out *ContainerStatus, s conversion.Scope) error { - return autoConvert_api_ContainerStatus_To_v1_ContainerStatus(in, out, s) -} - -func autoConvert_v1_DaemonEndpoint_To_api_DaemonEndpoint(in *DaemonEndpoint, out *api.DaemonEndpoint, s conversion.Scope) error { - out.Port = in.Port - return nil -} - -// Convert_v1_DaemonEndpoint_To_api_DaemonEndpoint is an autogenerated conversion function. -func Convert_v1_DaemonEndpoint_To_api_DaemonEndpoint(in *DaemonEndpoint, out *api.DaemonEndpoint, s conversion.Scope) error { - return autoConvert_v1_DaemonEndpoint_To_api_DaemonEndpoint(in, out, s) -} - -func autoConvert_api_DaemonEndpoint_To_v1_DaemonEndpoint(in *api.DaemonEndpoint, out *DaemonEndpoint, s conversion.Scope) error { - out.Port = in.Port - return nil -} - -// Convert_api_DaemonEndpoint_To_v1_DaemonEndpoint is an autogenerated conversion function. -func Convert_api_DaemonEndpoint_To_v1_DaemonEndpoint(in *api.DaemonEndpoint, out *DaemonEndpoint, s conversion.Scope) error { - return autoConvert_api_DaemonEndpoint_To_v1_DaemonEndpoint(in, out, s) -} - -func autoConvert_v1_DeleteOptions_To_api_DeleteOptions(in *DeleteOptions, out *api.DeleteOptions, s conversion.Scope) error { - out.GracePeriodSeconds = (*int64)(unsafe.Pointer(in.GracePeriodSeconds)) - out.Preconditions = (*api.Preconditions)(unsafe.Pointer(in.Preconditions)) - out.OrphanDependents = (*bool)(unsafe.Pointer(in.OrphanDependents)) - out.PropagationPolicy = (*api.DeletionPropagation)(unsafe.Pointer(in.PropagationPolicy)) - return nil -} - -// Convert_v1_DeleteOptions_To_api_DeleteOptions is an autogenerated conversion function. -func Convert_v1_DeleteOptions_To_api_DeleteOptions(in *DeleteOptions, out *api.DeleteOptions, s conversion.Scope) error { - return autoConvert_v1_DeleteOptions_To_api_DeleteOptions(in, out, s) -} - -func autoConvert_api_DeleteOptions_To_v1_DeleteOptions(in *api.DeleteOptions, out *DeleteOptions, s conversion.Scope) error { - out.GracePeriodSeconds = (*int64)(unsafe.Pointer(in.GracePeriodSeconds)) - out.Preconditions = (*Preconditions)(unsafe.Pointer(in.Preconditions)) - out.OrphanDependents = (*bool)(unsafe.Pointer(in.OrphanDependents)) - out.PropagationPolicy = (*DeletionPropagation)(unsafe.Pointer(in.PropagationPolicy)) - return nil -} - -// Convert_api_DeleteOptions_To_v1_DeleteOptions is an autogenerated conversion function. -func Convert_api_DeleteOptions_To_v1_DeleteOptions(in *api.DeleteOptions, out *DeleteOptions, s conversion.Scope) error { - return autoConvert_api_DeleteOptions_To_v1_DeleteOptions(in, out, s) -} - -func autoConvert_v1_DownwardAPIProjection_To_api_DownwardAPIProjection(in *DownwardAPIProjection, out *api.DownwardAPIProjection, s conversion.Scope) error { - out.Items = *(*[]api.DownwardAPIVolumeFile)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_DownwardAPIProjection_To_api_DownwardAPIProjection is an autogenerated conversion function. -func Convert_v1_DownwardAPIProjection_To_api_DownwardAPIProjection(in *DownwardAPIProjection, out *api.DownwardAPIProjection, s conversion.Scope) error { - return autoConvert_v1_DownwardAPIProjection_To_api_DownwardAPIProjection(in, out, s) -} - -func autoConvert_api_DownwardAPIProjection_To_v1_DownwardAPIProjection(in *api.DownwardAPIProjection, out *DownwardAPIProjection, s conversion.Scope) error { - out.Items = *(*[]DownwardAPIVolumeFile)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_api_DownwardAPIProjection_To_v1_DownwardAPIProjection is an autogenerated conversion function. -func Convert_api_DownwardAPIProjection_To_v1_DownwardAPIProjection(in *api.DownwardAPIProjection, out *DownwardAPIProjection, s conversion.Scope) error { - return autoConvert_api_DownwardAPIProjection_To_v1_DownwardAPIProjection(in, out, s) -} - -func autoConvert_v1_DownwardAPIVolumeFile_To_api_DownwardAPIVolumeFile(in *DownwardAPIVolumeFile, out *api.DownwardAPIVolumeFile, s conversion.Scope) error { - out.Path = in.Path - out.FieldRef = (*api.ObjectFieldSelector)(unsafe.Pointer(in.FieldRef)) - out.ResourceFieldRef = (*api.ResourceFieldSelector)(unsafe.Pointer(in.ResourceFieldRef)) - out.Mode = (*int32)(unsafe.Pointer(in.Mode)) - return nil -} - -// Convert_v1_DownwardAPIVolumeFile_To_api_DownwardAPIVolumeFile is an autogenerated conversion function. -func Convert_v1_DownwardAPIVolumeFile_To_api_DownwardAPIVolumeFile(in *DownwardAPIVolumeFile, out *api.DownwardAPIVolumeFile, s conversion.Scope) error { - return autoConvert_v1_DownwardAPIVolumeFile_To_api_DownwardAPIVolumeFile(in, out, s) -} - -func autoConvert_api_DownwardAPIVolumeFile_To_v1_DownwardAPIVolumeFile(in *api.DownwardAPIVolumeFile, out *DownwardAPIVolumeFile, s conversion.Scope) error { - out.Path = in.Path - out.FieldRef = (*ObjectFieldSelector)(unsafe.Pointer(in.FieldRef)) - out.ResourceFieldRef = (*ResourceFieldSelector)(unsafe.Pointer(in.ResourceFieldRef)) - out.Mode = (*int32)(unsafe.Pointer(in.Mode)) - return nil -} - -// Convert_api_DownwardAPIVolumeFile_To_v1_DownwardAPIVolumeFile is an autogenerated conversion function. -func Convert_api_DownwardAPIVolumeFile_To_v1_DownwardAPIVolumeFile(in *api.DownwardAPIVolumeFile, out *DownwardAPIVolumeFile, s conversion.Scope) error { - return autoConvert_api_DownwardAPIVolumeFile_To_v1_DownwardAPIVolumeFile(in, out, s) -} - -func autoConvert_v1_DownwardAPIVolumeSource_To_api_DownwardAPIVolumeSource(in *DownwardAPIVolumeSource, out *api.DownwardAPIVolumeSource, s conversion.Scope) error { - out.Items = *(*[]api.DownwardAPIVolumeFile)(unsafe.Pointer(&in.Items)) - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - return nil -} - -// Convert_v1_DownwardAPIVolumeSource_To_api_DownwardAPIVolumeSource is an autogenerated conversion function. -func Convert_v1_DownwardAPIVolumeSource_To_api_DownwardAPIVolumeSource(in *DownwardAPIVolumeSource, out *api.DownwardAPIVolumeSource, s conversion.Scope) error { - return autoConvert_v1_DownwardAPIVolumeSource_To_api_DownwardAPIVolumeSource(in, out, s) -} - -func autoConvert_api_DownwardAPIVolumeSource_To_v1_DownwardAPIVolumeSource(in *api.DownwardAPIVolumeSource, out *DownwardAPIVolumeSource, s conversion.Scope) error { - out.Items = *(*[]DownwardAPIVolumeFile)(unsafe.Pointer(&in.Items)) - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - return nil -} - -// Convert_api_DownwardAPIVolumeSource_To_v1_DownwardAPIVolumeSource is an autogenerated conversion function. -func Convert_api_DownwardAPIVolumeSource_To_v1_DownwardAPIVolumeSource(in *api.DownwardAPIVolumeSource, out *DownwardAPIVolumeSource, s conversion.Scope) error { - return autoConvert_api_DownwardAPIVolumeSource_To_v1_DownwardAPIVolumeSource(in, out, s) -} - -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 -} - -// Convert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource is an autogenerated conversion function. -func Convert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource(in *EmptyDirVolumeSource, out *api.EmptyDirVolumeSource, s conversion.Scope) error { - return autoConvert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource(in, out, s) -} - -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 -} - -// Convert_api_EmptyDirVolumeSource_To_v1_EmptyDirVolumeSource is an autogenerated conversion function. -func Convert_api_EmptyDirVolumeSource_To_v1_EmptyDirVolumeSource(in *api.EmptyDirVolumeSource, out *EmptyDirVolumeSource, s conversion.Scope) error { - return autoConvert_api_EmptyDirVolumeSource_To_v1_EmptyDirVolumeSource(in, out, s) -} - -func autoConvert_v1_EndpointAddress_To_api_EndpointAddress(in *EndpointAddress, out *api.EndpointAddress, s conversion.Scope) error { - out.IP = in.IP - out.Hostname = in.Hostname - out.NodeName = (*string)(unsafe.Pointer(in.NodeName)) - out.TargetRef = (*api.ObjectReference)(unsafe.Pointer(in.TargetRef)) - return nil -} - -// Convert_v1_EndpointAddress_To_api_EndpointAddress is an autogenerated conversion function. -func Convert_v1_EndpointAddress_To_api_EndpointAddress(in *EndpointAddress, out *api.EndpointAddress, s conversion.Scope) error { - return autoConvert_v1_EndpointAddress_To_api_EndpointAddress(in, out, s) -} - -func autoConvert_api_EndpointAddress_To_v1_EndpointAddress(in *api.EndpointAddress, out *EndpointAddress, s conversion.Scope) error { - out.IP = in.IP - out.Hostname = in.Hostname - out.NodeName = (*string)(unsafe.Pointer(in.NodeName)) - out.TargetRef = (*ObjectReference)(unsafe.Pointer(in.TargetRef)) - return nil -} - -// Convert_api_EndpointAddress_To_v1_EndpointAddress is an autogenerated conversion function. -func Convert_api_EndpointAddress_To_v1_EndpointAddress(in *api.EndpointAddress, out *EndpointAddress, s conversion.Scope) error { - return autoConvert_api_EndpointAddress_To_v1_EndpointAddress(in, out, s) -} - -func autoConvert_v1_EndpointPort_To_api_EndpointPort(in *EndpointPort, out *api.EndpointPort, s conversion.Scope) error { - out.Name = in.Name - out.Port = in.Port - out.Protocol = api.Protocol(in.Protocol) - return nil -} - -// Convert_v1_EndpointPort_To_api_EndpointPort is an autogenerated conversion function. -func Convert_v1_EndpointPort_To_api_EndpointPort(in *EndpointPort, out *api.EndpointPort, s conversion.Scope) error { - return autoConvert_v1_EndpointPort_To_api_EndpointPort(in, out, s) -} - -func autoConvert_api_EndpointPort_To_v1_EndpointPort(in *api.EndpointPort, out *EndpointPort, s conversion.Scope) error { - out.Name = in.Name - out.Port = in.Port - out.Protocol = Protocol(in.Protocol) - return nil -} - -// Convert_api_EndpointPort_To_v1_EndpointPort is an autogenerated conversion function. -func Convert_api_EndpointPort_To_v1_EndpointPort(in *api.EndpointPort, out *EndpointPort, s conversion.Scope) error { - return autoConvert_api_EndpointPort_To_v1_EndpointPort(in, out, s) -} - -func autoConvert_v1_EndpointSubset_To_api_EndpointSubset(in *EndpointSubset, out *api.EndpointSubset, s conversion.Scope) error { - out.Addresses = *(*[]api.EndpointAddress)(unsafe.Pointer(&in.Addresses)) - out.NotReadyAddresses = *(*[]api.EndpointAddress)(unsafe.Pointer(&in.NotReadyAddresses)) - out.Ports = *(*[]api.EndpointPort)(unsafe.Pointer(&in.Ports)) - return nil -} - -// Convert_v1_EndpointSubset_To_api_EndpointSubset is an autogenerated conversion function. -func Convert_v1_EndpointSubset_To_api_EndpointSubset(in *EndpointSubset, out *api.EndpointSubset, s conversion.Scope) error { - return autoConvert_v1_EndpointSubset_To_api_EndpointSubset(in, out, s) -} - -func autoConvert_api_EndpointSubset_To_v1_EndpointSubset(in *api.EndpointSubset, out *EndpointSubset, s conversion.Scope) error { - out.Addresses = *(*[]EndpointAddress)(unsafe.Pointer(&in.Addresses)) - out.NotReadyAddresses = *(*[]EndpointAddress)(unsafe.Pointer(&in.NotReadyAddresses)) - out.Ports = *(*[]EndpointPort)(unsafe.Pointer(&in.Ports)) - return nil -} - -// Convert_api_EndpointSubset_To_v1_EndpointSubset is an autogenerated conversion function. -func Convert_api_EndpointSubset_To_v1_EndpointSubset(in *api.EndpointSubset, out *EndpointSubset, s conversion.Scope) error { - return autoConvert_api_EndpointSubset_To_v1_EndpointSubset(in, out, s) -} - -func autoConvert_v1_Endpoints_To_api_Endpoints(in *Endpoints, out *api.Endpoints, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Subsets = *(*[]api.EndpointSubset)(unsafe.Pointer(&in.Subsets)) - return nil -} - -// Convert_v1_Endpoints_To_api_Endpoints is an autogenerated conversion function. -func Convert_v1_Endpoints_To_api_Endpoints(in *Endpoints, out *api.Endpoints, s conversion.Scope) error { - return autoConvert_v1_Endpoints_To_api_Endpoints(in, out, s) -} - -func autoConvert_api_Endpoints_To_v1_Endpoints(in *api.Endpoints, out *Endpoints, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if in.Subsets == nil { - out.Subsets = make([]EndpointSubset, 0) - } else { - out.Subsets = *(*[]EndpointSubset)(unsafe.Pointer(&in.Subsets)) - } - return nil -} - -// Convert_api_Endpoints_To_v1_Endpoints is an autogenerated conversion function. -func Convert_api_Endpoints_To_v1_Endpoints(in *api.Endpoints, out *Endpoints, s conversion.Scope) error { - return autoConvert_api_Endpoints_To_v1_Endpoints(in, out, s) -} - -func autoConvert_v1_EndpointsList_To_api_EndpointsList(in *EndpointsList, out *api.EndpointsList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.Endpoints)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_EndpointsList_To_api_EndpointsList is an autogenerated conversion function. -func Convert_v1_EndpointsList_To_api_EndpointsList(in *EndpointsList, out *api.EndpointsList, s conversion.Scope) error { - return autoConvert_v1_EndpointsList_To_api_EndpointsList(in, out, s) -} - -func autoConvert_api_EndpointsList_To_v1_EndpointsList(in *api.EndpointsList, out *EndpointsList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]Endpoints, 0) - } else { - out.Items = *(*[]Endpoints)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_EndpointsList_To_v1_EndpointsList is an autogenerated conversion function. -func Convert_api_EndpointsList_To_v1_EndpointsList(in *api.EndpointsList, out *EndpointsList, s conversion.Scope) error { - return autoConvert_api_EndpointsList_To_v1_EndpointsList(in, out, s) -} - -func autoConvert_v1_EnvFromSource_To_api_EnvFromSource(in *EnvFromSource, out *api.EnvFromSource, s conversion.Scope) error { - out.Prefix = in.Prefix - out.ConfigMapRef = (*api.ConfigMapEnvSource)(unsafe.Pointer(in.ConfigMapRef)) - out.SecretRef = (*api.SecretEnvSource)(unsafe.Pointer(in.SecretRef)) - return nil -} - -// Convert_v1_EnvFromSource_To_api_EnvFromSource is an autogenerated conversion function. -func Convert_v1_EnvFromSource_To_api_EnvFromSource(in *EnvFromSource, out *api.EnvFromSource, s conversion.Scope) error { - return autoConvert_v1_EnvFromSource_To_api_EnvFromSource(in, out, s) -} - -func autoConvert_api_EnvFromSource_To_v1_EnvFromSource(in *api.EnvFromSource, out *EnvFromSource, s conversion.Scope) error { - out.Prefix = in.Prefix - out.ConfigMapRef = (*ConfigMapEnvSource)(unsafe.Pointer(in.ConfigMapRef)) - out.SecretRef = (*SecretEnvSource)(unsafe.Pointer(in.SecretRef)) - return nil -} - -// Convert_api_EnvFromSource_To_v1_EnvFromSource is an autogenerated conversion function. -func Convert_api_EnvFromSource_To_v1_EnvFromSource(in *api.EnvFromSource, out *EnvFromSource, s conversion.Scope) error { - return autoConvert_api_EnvFromSource_To_v1_EnvFromSource(in, out, s) -} - -func autoConvert_v1_EnvVar_To_api_EnvVar(in *EnvVar, out *api.EnvVar, s conversion.Scope) error { - out.Name = in.Name - out.Value = in.Value - out.ValueFrom = (*api.EnvVarSource)(unsafe.Pointer(in.ValueFrom)) - return nil -} - -// Convert_v1_EnvVar_To_api_EnvVar is an autogenerated conversion function. -func Convert_v1_EnvVar_To_api_EnvVar(in *EnvVar, out *api.EnvVar, s conversion.Scope) error { - return autoConvert_v1_EnvVar_To_api_EnvVar(in, out, s) -} - -func autoConvert_api_EnvVar_To_v1_EnvVar(in *api.EnvVar, out *EnvVar, s conversion.Scope) error { - out.Name = in.Name - out.Value = in.Value - out.ValueFrom = (*EnvVarSource)(unsafe.Pointer(in.ValueFrom)) - return nil -} - -// Convert_api_EnvVar_To_v1_EnvVar is an autogenerated conversion function. -func Convert_api_EnvVar_To_v1_EnvVar(in *api.EnvVar, out *EnvVar, s conversion.Scope) error { - return autoConvert_api_EnvVar_To_v1_EnvVar(in, out, s) -} - -func autoConvert_v1_EnvVarSource_To_api_EnvVarSource(in *EnvVarSource, out *api.EnvVarSource, s conversion.Scope) error { - out.FieldRef = (*api.ObjectFieldSelector)(unsafe.Pointer(in.FieldRef)) - out.ResourceFieldRef = (*api.ResourceFieldSelector)(unsafe.Pointer(in.ResourceFieldRef)) - out.ConfigMapKeyRef = (*api.ConfigMapKeySelector)(unsafe.Pointer(in.ConfigMapKeyRef)) - out.SecretKeyRef = (*api.SecretKeySelector)(unsafe.Pointer(in.SecretKeyRef)) - return nil -} - -// Convert_v1_EnvVarSource_To_api_EnvVarSource is an autogenerated conversion function. -func Convert_v1_EnvVarSource_To_api_EnvVarSource(in *EnvVarSource, out *api.EnvVarSource, s conversion.Scope) error { - return autoConvert_v1_EnvVarSource_To_api_EnvVarSource(in, out, s) -} - -func autoConvert_api_EnvVarSource_To_v1_EnvVarSource(in *api.EnvVarSource, out *EnvVarSource, s conversion.Scope) error { - out.FieldRef = (*ObjectFieldSelector)(unsafe.Pointer(in.FieldRef)) - out.ResourceFieldRef = (*ResourceFieldSelector)(unsafe.Pointer(in.ResourceFieldRef)) - out.ConfigMapKeyRef = (*ConfigMapKeySelector)(unsafe.Pointer(in.ConfigMapKeyRef)) - out.SecretKeyRef = (*SecretKeySelector)(unsafe.Pointer(in.SecretKeyRef)) - return nil -} - -// Convert_api_EnvVarSource_To_v1_EnvVarSource is an autogenerated conversion function. -func Convert_api_EnvVarSource_To_v1_EnvVarSource(in *api.EnvVarSource, out *EnvVarSource, s conversion.Scope) error { - return autoConvert_api_EnvVarSource_To_v1_EnvVarSource(in, out, s) -} - -func autoConvert_v1_Event_To_api_Event(in *Event, out *api.Event, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_ObjectReference_To_api_ObjectReference(&in.InvolvedObject, &out.InvolvedObject, s); err != nil { - return err - } - out.Reason = in.Reason - out.Message = in.Message - if err := Convert_v1_EventSource_To_api_EventSource(&in.Source, &out.Source, s); err != nil { - return err - } - out.FirstTimestamp = in.FirstTimestamp - out.LastTimestamp = in.LastTimestamp - out.Count = in.Count - out.Type = in.Type - return nil -} - -// Convert_v1_Event_To_api_Event is an autogenerated conversion function. -func Convert_v1_Event_To_api_Event(in *Event, out *api.Event, s conversion.Scope) error { - return autoConvert_v1_Event_To_api_Event(in, out, s) -} - -func autoConvert_api_Event_To_v1_Event(in *api.Event, out *Event, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_ObjectReference_To_v1_ObjectReference(&in.InvolvedObject, &out.InvolvedObject, s); err != nil { - return err - } - out.Reason = in.Reason - out.Message = in.Message - if err := Convert_api_EventSource_To_v1_EventSource(&in.Source, &out.Source, s); err != nil { - return err - } - out.FirstTimestamp = in.FirstTimestamp - out.LastTimestamp = in.LastTimestamp - out.Count = in.Count - out.Type = in.Type - return nil -} - -// Convert_api_Event_To_v1_Event is an autogenerated conversion function. -func Convert_api_Event_To_v1_Event(in *api.Event, out *Event, s conversion.Scope) error { - return autoConvert_api_Event_To_v1_Event(in, out, s) -} - -func autoConvert_v1_EventList_To_api_EventList(in *EventList, out *api.EventList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.Event)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_EventList_To_api_EventList is an autogenerated conversion function. -func Convert_v1_EventList_To_api_EventList(in *EventList, out *api.EventList, s conversion.Scope) error { - return autoConvert_v1_EventList_To_api_EventList(in, out, s) -} - -func autoConvert_api_EventList_To_v1_EventList(in *api.EventList, out *EventList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]Event, 0) - } else { - out.Items = *(*[]Event)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_EventList_To_v1_EventList is an autogenerated conversion function. -func Convert_api_EventList_To_v1_EventList(in *api.EventList, out *EventList, s conversion.Scope) error { - return autoConvert_api_EventList_To_v1_EventList(in, out, s) -} - -func autoConvert_v1_EventSource_To_api_EventSource(in *EventSource, out *api.EventSource, s conversion.Scope) error { - out.Component = in.Component - out.Host = in.Host - return nil -} - -// Convert_v1_EventSource_To_api_EventSource is an autogenerated conversion function. -func Convert_v1_EventSource_To_api_EventSource(in *EventSource, out *api.EventSource, s conversion.Scope) error { - return autoConvert_v1_EventSource_To_api_EventSource(in, out, s) -} - -func autoConvert_api_EventSource_To_v1_EventSource(in *api.EventSource, out *EventSource, s conversion.Scope) error { - out.Component = in.Component - out.Host = in.Host - return nil -} - -// Convert_api_EventSource_To_v1_EventSource is an autogenerated conversion function. -func Convert_api_EventSource_To_v1_EventSource(in *api.EventSource, out *EventSource, s conversion.Scope) error { - return autoConvert_api_EventSource_To_v1_EventSource(in, out, s) -} - -func autoConvert_v1_ExecAction_To_api_ExecAction(in *ExecAction, out *api.ExecAction, s conversion.Scope) error { - out.Command = *(*[]string)(unsafe.Pointer(&in.Command)) - return nil -} - -// Convert_v1_ExecAction_To_api_ExecAction is an autogenerated conversion function. -func Convert_v1_ExecAction_To_api_ExecAction(in *ExecAction, out *api.ExecAction, s conversion.Scope) error { - return autoConvert_v1_ExecAction_To_api_ExecAction(in, out, s) -} - -func autoConvert_api_ExecAction_To_v1_ExecAction(in *api.ExecAction, out *ExecAction, s conversion.Scope) error { - out.Command = *(*[]string)(unsafe.Pointer(&in.Command)) - return nil -} - -// Convert_api_ExecAction_To_v1_ExecAction is an autogenerated conversion function. -func Convert_api_ExecAction_To_v1_ExecAction(in *api.ExecAction, out *ExecAction, s conversion.Scope) error { - return autoConvert_api_ExecAction_To_v1_ExecAction(in, out, s) -} - -func autoConvert_v1_FCVolumeSource_To_api_FCVolumeSource(in *FCVolumeSource, out *api.FCVolumeSource, s conversion.Scope) error { - out.TargetWWNs = *(*[]string)(unsafe.Pointer(&in.TargetWWNs)) - out.Lun = (*int32)(unsafe.Pointer(in.Lun)) - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_FCVolumeSource_To_api_FCVolumeSource is an autogenerated conversion function. -func Convert_v1_FCVolumeSource_To_api_FCVolumeSource(in *FCVolumeSource, out *api.FCVolumeSource, s conversion.Scope) error { - return autoConvert_v1_FCVolumeSource_To_api_FCVolumeSource(in, out, s) -} - -func autoConvert_api_FCVolumeSource_To_v1_FCVolumeSource(in *api.FCVolumeSource, out *FCVolumeSource, s conversion.Scope) error { - if in.TargetWWNs == nil { - out.TargetWWNs = make([]string, 0) - } else { - out.TargetWWNs = *(*[]string)(unsafe.Pointer(&in.TargetWWNs)) - } - out.Lun = (*int32)(unsafe.Pointer(in.Lun)) - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_FCVolumeSource_To_v1_FCVolumeSource is an autogenerated conversion function. -func Convert_api_FCVolumeSource_To_v1_FCVolumeSource(in *api.FCVolumeSource, out *FCVolumeSource, s conversion.Scope) error { - return autoConvert_api_FCVolumeSource_To_v1_FCVolumeSource(in, out, s) -} - -func autoConvert_v1_FlexVolumeSource_To_api_FlexVolumeSource(in *FlexVolumeSource, out *api.FlexVolumeSource, s conversion.Scope) error { - out.Driver = in.Driver - out.FSType = in.FSType - out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.ReadOnly = in.ReadOnly - out.Options = *(*map[string]string)(unsafe.Pointer(&in.Options)) - return nil -} - -// Convert_v1_FlexVolumeSource_To_api_FlexVolumeSource is an autogenerated conversion function. -func Convert_v1_FlexVolumeSource_To_api_FlexVolumeSource(in *FlexVolumeSource, out *api.FlexVolumeSource, s conversion.Scope) error { - return autoConvert_v1_FlexVolumeSource_To_api_FlexVolumeSource(in, out, s) -} - -func autoConvert_api_FlexVolumeSource_To_v1_FlexVolumeSource(in *api.FlexVolumeSource, out *FlexVolumeSource, s conversion.Scope) error { - out.Driver = in.Driver - out.FSType = in.FSType - out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.ReadOnly = in.ReadOnly - out.Options = *(*map[string]string)(unsafe.Pointer(&in.Options)) - return nil -} - -// Convert_api_FlexVolumeSource_To_v1_FlexVolumeSource is an autogenerated conversion function. -func Convert_api_FlexVolumeSource_To_v1_FlexVolumeSource(in *api.FlexVolumeSource, out *FlexVolumeSource, s conversion.Scope) error { - return autoConvert_api_FlexVolumeSource_To_v1_FlexVolumeSource(in, out, s) -} - -func autoConvert_v1_FlockerVolumeSource_To_api_FlockerVolumeSource(in *FlockerVolumeSource, out *api.FlockerVolumeSource, s conversion.Scope) error { - out.DatasetName = in.DatasetName - out.DatasetUUID = in.DatasetUUID - return nil -} - -// Convert_v1_FlockerVolumeSource_To_api_FlockerVolumeSource is an autogenerated conversion function. -func Convert_v1_FlockerVolumeSource_To_api_FlockerVolumeSource(in *FlockerVolumeSource, out *api.FlockerVolumeSource, s conversion.Scope) error { - return autoConvert_v1_FlockerVolumeSource_To_api_FlockerVolumeSource(in, out, s) -} - -func autoConvert_api_FlockerVolumeSource_To_v1_FlockerVolumeSource(in *api.FlockerVolumeSource, out *FlockerVolumeSource, s conversion.Scope) error { - out.DatasetName = in.DatasetName - out.DatasetUUID = in.DatasetUUID - return nil -} - -// Convert_api_FlockerVolumeSource_To_v1_FlockerVolumeSource is an autogenerated conversion function. -func Convert_api_FlockerVolumeSource_To_v1_FlockerVolumeSource(in *api.FlockerVolumeSource, out *FlockerVolumeSource, s conversion.Scope) error { - return autoConvert_api_FlockerVolumeSource_To_v1_FlockerVolumeSource(in, out, s) -} - -func autoConvert_v1_GCEPersistentDiskVolumeSource_To_api_GCEPersistentDiskVolumeSource(in *GCEPersistentDiskVolumeSource, out *api.GCEPersistentDiskVolumeSource, s conversion.Scope) error { - out.PDName = in.PDName - out.FSType = in.FSType - out.Partition = in.Partition - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_GCEPersistentDiskVolumeSource_To_api_GCEPersistentDiskVolumeSource is an autogenerated conversion function. -func Convert_v1_GCEPersistentDiskVolumeSource_To_api_GCEPersistentDiskVolumeSource(in *GCEPersistentDiskVolumeSource, out *api.GCEPersistentDiskVolumeSource, s conversion.Scope) error { - return autoConvert_v1_GCEPersistentDiskVolumeSource_To_api_GCEPersistentDiskVolumeSource(in, out, s) -} - -func autoConvert_api_GCEPersistentDiskVolumeSource_To_v1_GCEPersistentDiskVolumeSource(in *api.GCEPersistentDiskVolumeSource, out *GCEPersistentDiskVolumeSource, s conversion.Scope) error { - out.PDName = in.PDName - out.FSType = in.FSType - out.Partition = in.Partition - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_GCEPersistentDiskVolumeSource_To_v1_GCEPersistentDiskVolumeSource is an autogenerated conversion function. -func Convert_api_GCEPersistentDiskVolumeSource_To_v1_GCEPersistentDiskVolumeSource(in *api.GCEPersistentDiskVolumeSource, out *GCEPersistentDiskVolumeSource, s conversion.Scope) error { - return autoConvert_api_GCEPersistentDiskVolumeSource_To_v1_GCEPersistentDiskVolumeSource(in, out, s) -} - -func autoConvert_v1_GitRepoVolumeSource_To_api_GitRepoVolumeSource(in *GitRepoVolumeSource, out *api.GitRepoVolumeSource, s conversion.Scope) error { - out.Repository = in.Repository - out.Revision = in.Revision - out.Directory = in.Directory - return nil -} - -// Convert_v1_GitRepoVolumeSource_To_api_GitRepoVolumeSource is an autogenerated conversion function. -func Convert_v1_GitRepoVolumeSource_To_api_GitRepoVolumeSource(in *GitRepoVolumeSource, out *api.GitRepoVolumeSource, s conversion.Scope) error { - return autoConvert_v1_GitRepoVolumeSource_To_api_GitRepoVolumeSource(in, out, s) -} - -func autoConvert_api_GitRepoVolumeSource_To_v1_GitRepoVolumeSource(in *api.GitRepoVolumeSource, out *GitRepoVolumeSource, s conversion.Scope) error { - out.Repository = in.Repository - out.Revision = in.Revision - out.Directory = in.Directory - return nil -} - -// Convert_api_GitRepoVolumeSource_To_v1_GitRepoVolumeSource is an autogenerated conversion function. -func Convert_api_GitRepoVolumeSource_To_v1_GitRepoVolumeSource(in *api.GitRepoVolumeSource, out *GitRepoVolumeSource, s conversion.Scope) error { - return autoConvert_api_GitRepoVolumeSource_To_v1_GitRepoVolumeSource(in, out, s) -} - -func autoConvert_v1_GlusterfsVolumeSource_To_api_GlusterfsVolumeSource(in *GlusterfsVolumeSource, out *api.GlusterfsVolumeSource, s conversion.Scope) error { - out.EndpointsName = in.EndpointsName - out.Path = in.Path - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_GlusterfsVolumeSource_To_api_GlusterfsVolumeSource is an autogenerated conversion function. -func Convert_v1_GlusterfsVolumeSource_To_api_GlusterfsVolumeSource(in *GlusterfsVolumeSource, out *api.GlusterfsVolumeSource, s conversion.Scope) error { - return autoConvert_v1_GlusterfsVolumeSource_To_api_GlusterfsVolumeSource(in, out, s) -} - -func autoConvert_api_GlusterfsVolumeSource_To_v1_GlusterfsVolumeSource(in *api.GlusterfsVolumeSource, out *GlusterfsVolumeSource, s conversion.Scope) error { - out.EndpointsName = in.EndpointsName - out.Path = in.Path - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_GlusterfsVolumeSource_To_v1_GlusterfsVolumeSource is an autogenerated conversion function. -func Convert_api_GlusterfsVolumeSource_To_v1_GlusterfsVolumeSource(in *api.GlusterfsVolumeSource, out *GlusterfsVolumeSource, s conversion.Scope) error { - return autoConvert_api_GlusterfsVolumeSource_To_v1_GlusterfsVolumeSource(in, out, s) -} - -func autoConvert_v1_HTTPGetAction_To_api_HTTPGetAction(in *HTTPGetAction, out *api.HTTPGetAction, s conversion.Scope) error { - out.Path = in.Path - out.Port = in.Port - out.Host = in.Host - out.Scheme = api.URIScheme(in.Scheme) - out.HTTPHeaders = *(*[]api.HTTPHeader)(unsafe.Pointer(&in.HTTPHeaders)) - return nil -} - -// Convert_v1_HTTPGetAction_To_api_HTTPGetAction is an autogenerated conversion function. -func Convert_v1_HTTPGetAction_To_api_HTTPGetAction(in *HTTPGetAction, out *api.HTTPGetAction, s conversion.Scope) error { - return autoConvert_v1_HTTPGetAction_To_api_HTTPGetAction(in, out, s) -} - -func autoConvert_api_HTTPGetAction_To_v1_HTTPGetAction(in *api.HTTPGetAction, out *HTTPGetAction, s conversion.Scope) error { - out.Path = in.Path - out.Port = in.Port - out.Host = in.Host - out.Scheme = URIScheme(in.Scheme) - out.HTTPHeaders = *(*[]HTTPHeader)(unsafe.Pointer(&in.HTTPHeaders)) - return nil -} - -// Convert_api_HTTPGetAction_To_v1_HTTPGetAction is an autogenerated conversion function. -func Convert_api_HTTPGetAction_To_v1_HTTPGetAction(in *api.HTTPGetAction, out *HTTPGetAction, s conversion.Scope) error { - return autoConvert_api_HTTPGetAction_To_v1_HTTPGetAction(in, out, s) -} - -func autoConvert_v1_HTTPHeader_To_api_HTTPHeader(in *HTTPHeader, out *api.HTTPHeader, s conversion.Scope) error { - out.Name = in.Name - out.Value = in.Value - return nil -} - -// Convert_v1_HTTPHeader_To_api_HTTPHeader is an autogenerated conversion function. -func Convert_v1_HTTPHeader_To_api_HTTPHeader(in *HTTPHeader, out *api.HTTPHeader, s conversion.Scope) error { - return autoConvert_v1_HTTPHeader_To_api_HTTPHeader(in, out, s) -} - -func autoConvert_api_HTTPHeader_To_v1_HTTPHeader(in *api.HTTPHeader, out *HTTPHeader, s conversion.Scope) error { - out.Name = in.Name - out.Value = in.Value - return nil -} - -// Convert_api_HTTPHeader_To_v1_HTTPHeader is an autogenerated conversion function. -func Convert_api_HTTPHeader_To_v1_HTTPHeader(in *api.HTTPHeader, out *HTTPHeader, s conversion.Scope) error { - return autoConvert_api_HTTPHeader_To_v1_HTTPHeader(in, out, s) -} - -func autoConvert_v1_Handler_To_api_Handler(in *Handler, out *api.Handler, s conversion.Scope) error { - out.Exec = (*api.ExecAction)(unsafe.Pointer(in.Exec)) - out.HTTPGet = (*api.HTTPGetAction)(unsafe.Pointer(in.HTTPGet)) - out.TCPSocket = (*api.TCPSocketAction)(unsafe.Pointer(in.TCPSocket)) - return nil -} - -// Convert_v1_Handler_To_api_Handler is an autogenerated conversion function. -func Convert_v1_Handler_To_api_Handler(in *Handler, out *api.Handler, s conversion.Scope) error { - return autoConvert_v1_Handler_To_api_Handler(in, out, s) -} - -func autoConvert_api_Handler_To_v1_Handler(in *api.Handler, out *Handler, s conversion.Scope) error { - out.Exec = (*ExecAction)(unsafe.Pointer(in.Exec)) - out.HTTPGet = (*HTTPGetAction)(unsafe.Pointer(in.HTTPGet)) - out.TCPSocket = (*TCPSocketAction)(unsafe.Pointer(in.TCPSocket)) - return nil -} - -// Convert_api_Handler_To_v1_Handler is an autogenerated conversion function. -func Convert_api_Handler_To_v1_Handler(in *api.Handler, out *Handler, s conversion.Scope) error { - return autoConvert_api_Handler_To_v1_Handler(in, out, s) -} - -func autoConvert_v1_HostAlias_To_api_HostAlias(in *HostAlias, out *api.HostAlias, s conversion.Scope) error { - out.IP = in.IP - out.Hostnames = *(*[]string)(unsafe.Pointer(&in.Hostnames)) - return nil -} - -// Convert_v1_HostAlias_To_api_HostAlias is an autogenerated conversion function. -func Convert_v1_HostAlias_To_api_HostAlias(in *HostAlias, out *api.HostAlias, s conversion.Scope) error { - return autoConvert_v1_HostAlias_To_api_HostAlias(in, out, s) -} - -func autoConvert_api_HostAlias_To_v1_HostAlias(in *api.HostAlias, out *HostAlias, s conversion.Scope) error { - out.IP = in.IP - out.Hostnames = *(*[]string)(unsafe.Pointer(&in.Hostnames)) - return nil -} - -// Convert_api_HostAlias_To_v1_HostAlias is an autogenerated conversion function. -func Convert_api_HostAlias_To_v1_HostAlias(in *api.HostAlias, out *HostAlias, s conversion.Scope) error { - return autoConvert_api_HostAlias_To_v1_HostAlias(in, out, s) -} - -func autoConvert_v1_HostPathVolumeSource_To_api_HostPathVolumeSource(in *HostPathVolumeSource, out *api.HostPathVolumeSource, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_v1_HostPathVolumeSource_To_api_HostPathVolumeSource is an autogenerated conversion function. -func Convert_v1_HostPathVolumeSource_To_api_HostPathVolumeSource(in *HostPathVolumeSource, out *api.HostPathVolumeSource, s conversion.Scope) error { - return autoConvert_v1_HostPathVolumeSource_To_api_HostPathVolumeSource(in, out, s) -} - -func autoConvert_api_HostPathVolumeSource_To_v1_HostPathVolumeSource(in *api.HostPathVolumeSource, out *HostPathVolumeSource, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_api_HostPathVolumeSource_To_v1_HostPathVolumeSource is an autogenerated conversion function. -func Convert_api_HostPathVolumeSource_To_v1_HostPathVolumeSource(in *api.HostPathVolumeSource, out *HostPathVolumeSource, s conversion.Scope) error { - return autoConvert_api_HostPathVolumeSource_To_v1_HostPathVolumeSource(in, out, s) -} - -func autoConvert_v1_ISCSIVolumeSource_To_api_ISCSIVolumeSource(in *ISCSIVolumeSource, out *api.ISCSIVolumeSource, s conversion.Scope) error { - out.TargetPortal = in.TargetPortal - out.IQN = in.IQN - out.Lun = in.Lun - out.ISCSIInterface = in.ISCSIInterface - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - out.Portals = *(*[]string)(unsafe.Pointer(&in.Portals)) - out.DiscoveryCHAPAuth = in.DiscoveryCHAPAuth - out.SessionCHAPAuth = in.SessionCHAPAuth - out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - return nil -} - -// Convert_v1_ISCSIVolumeSource_To_api_ISCSIVolumeSource is an autogenerated conversion function. -func Convert_v1_ISCSIVolumeSource_To_api_ISCSIVolumeSource(in *ISCSIVolumeSource, out *api.ISCSIVolumeSource, s conversion.Scope) error { - return autoConvert_v1_ISCSIVolumeSource_To_api_ISCSIVolumeSource(in, out, s) -} - -func autoConvert_api_ISCSIVolumeSource_To_v1_ISCSIVolumeSource(in *api.ISCSIVolumeSource, out *ISCSIVolumeSource, s conversion.Scope) error { - out.TargetPortal = in.TargetPortal - out.IQN = in.IQN - out.Lun = in.Lun - out.ISCSIInterface = in.ISCSIInterface - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - out.Portals = *(*[]string)(unsafe.Pointer(&in.Portals)) - out.DiscoveryCHAPAuth = in.DiscoveryCHAPAuth - out.SessionCHAPAuth = in.SessionCHAPAuth - out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - return nil -} - -// Convert_api_ISCSIVolumeSource_To_v1_ISCSIVolumeSource is an autogenerated conversion function. -func Convert_api_ISCSIVolumeSource_To_v1_ISCSIVolumeSource(in *api.ISCSIVolumeSource, out *ISCSIVolumeSource, s conversion.Scope) error { - return autoConvert_api_ISCSIVolumeSource_To_v1_ISCSIVolumeSource(in, out, s) -} - -func autoConvert_v1_KeyToPath_To_api_KeyToPath(in *KeyToPath, out *api.KeyToPath, s conversion.Scope) error { - out.Key = in.Key - out.Path = in.Path - out.Mode = (*int32)(unsafe.Pointer(in.Mode)) - return nil -} - -// Convert_v1_KeyToPath_To_api_KeyToPath is an autogenerated conversion function. -func Convert_v1_KeyToPath_To_api_KeyToPath(in *KeyToPath, out *api.KeyToPath, s conversion.Scope) error { - return autoConvert_v1_KeyToPath_To_api_KeyToPath(in, out, s) -} - -func autoConvert_api_KeyToPath_To_v1_KeyToPath(in *api.KeyToPath, out *KeyToPath, s conversion.Scope) error { - out.Key = in.Key - out.Path = in.Path - out.Mode = (*int32)(unsafe.Pointer(in.Mode)) - return nil -} - -// Convert_api_KeyToPath_To_v1_KeyToPath is an autogenerated conversion function. -func Convert_api_KeyToPath_To_v1_KeyToPath(in *api.KeyToPath, out *KeyToPath, s conversion.Scope) error { - return autoConvert_api_KeyToPath_To_v1_KeyToPath(in, out, s) -} - -func autoConvert_v1_Lifecycle_To_api_Lifecycle(in *Lifecycle, out *api.Lifecycle, s conversion.Scope) error { - out.PostStart = (*api.Handler)(unsafe.Pointer(in.PostStart)) - out.PreStop = (*api.Handler)(unsafe.Pointer(in.PreStop)) - return nil -} - -// Convert_v1_Lifecycle_To_api_Lifecycle is an autogenerated conversion function. -func Convert_v1_Lifecycle_To_api_Lifecycle(in *Lifecycle, out *api.Lifecycle, s conversion.Scope) error { - return autoConvert_v1_Lifecycle_To_api_Lifecycle(in, out, s) -} - -func autoConvert_api_Lifecycle_To_v1_Lifecycle(in *api.Lifecycle, out *Lifecycle, s conversion.Scope) error { - out.PostStart = (*Handler)(unsafe.Pointer(in.PostStart)) - out.PreStop = (*Handler)(unsafe.Pointer(in.PreStop)) - return nil -} - -// Convert_api_Lifecycle_To_v1_Lifecycle is an autogenerated conversion function. -func Convert_api_Lifecycle_To_v1_Lifecycle(in *api.Lifecycle, out *Lifecycle, s conversion.Scope) error { - return autoConvert_api_Lifecycle_To_v1_Lifecycle(in, out, s) -} - -func autoConvert_v1_LimitRange_To_api_LimitRange(in *LimitRange, out *api.LimitRange, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_LimitRangeSpec_To_api_LimitRangeSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - return nil -} - -// Convert_v1_LimitRange_To_api_LimitRange is an autogenerated conversion function. -func Convert_v1_LimitRange_To_api_LimitRange(in *LimitRange, out *api.LimitRange, s conversion.Scope) error { - return autoConvert_v1_LimitRange_To_api_LimitRange(in, out, s) -} - -func autoConvert_api_LimitRange_To_v1_LimitRange(in *api.LimitRange, out *LimitRange, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_LimitRangeSpec_To_v1_LimitRangeSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - return nil -} - -// Convert_api_LimitRange_To_v1_LimitRange is an autogenerated conversion function. -func Convert_api_LimitRange_To_v1_LimitRange(in *api.LimitRange, out *LimitRange, s conversion.Scope) error { - return autoConvert_api_LimitRange_To_v1_LimitRange(in, out, s) -} - -func autoConvert_v1_LimitRangeItem_To_api_LimitRangeItem(in *LimitRangeItem, out *api.LimitRangeItem, s conversion.Scope) error { - out.Type = api.LimitType(in.Type) - out.Max = *(*api.ResourceList)(unsafe.Pointer(&in.Max)) - out.Min = *(*api.ResourceList)(unsafe.Pointer(&in.Min)) - out.Default = *(*api.ResourceList)(unsafe.Pointer(&in.Default)) - out.DefaultRequest = *(*api.ResourceList)(unsafe.Pointer(&in.DefaultRequest)) - out.MaxLimitRequestRatio = *(*api.ResourceList)(unsafe.Pointer(&in.MaxLimitRequestRatio)) - return nil -} - -// Convert_v1_LimitRangeItem_To_api_LimitRangeItem is an autogenerated conversion function. -func Convert_v1_LimitRangeItem_To_api_LimitRangeItem(in *LimitRangeItem, out *api.LimitRangeItem, s conversion.Scope) error { - return autoConvert_v1_LimitRangeItem_To_api_LimitRangeItem(in, out, s) -} - -func autoConvert_api_LimitRangeItem_To_v1_LimitRangeItem(in *api.LimitRangeItem, out *LimitRangeItem, s conversion.Scope) error { - out.Type = LimitType(in.Type) - out.Max = *(*ResourceList)(unsafe.Pointer(&in.Max)) - out.Min = *(*ResourceList)(unsafe.Pointer(&in.Min)) - out.Default = *(*ResourceList)(unsafe.Pointer(&in.Default)) - out.DefaultRequest = *(*ResourceList)(unsafe.Pointer(&in.DefaultRequest)) - out.MaxLimitRequestRatio = *(*ResourceList)(unsafe.Pointer(&in.MaxLimitRequestRatio)) - return nil -} - -// Convert_api_LimitRangeItem_To_v1_LimitRangeItem is an autogenerated conversion function. -func Convert_api_LimitRangeItem_To_v1_LimitRangeItem(in *api.LimitRangeItem, out *LimitRangeItem, s conversion.Scope) error { - return autoConvert_api_LimitRangeItem_To_v1_LimitRangeItem(in, out, s) -} - -func autoConvert_v1_LimitRangeList_To_api_LimitRangeList(in *LimitRangeList, out *api.LimitRangeList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.LimitRange)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_LimitRangeList_To_api_LimitRangeList is an autogenerated conversion function. -func Convert_v1_LimitRangeList_To_api_LimitRangeList(in *LimitRangeList, out *api.LimitRangeList, s conversion.Scope) error { - return autoConvert_v1_LimitRangeList_To_api_LimitRangeList(in, out, s) -} - -func autoConvert_api_LimitRangeList_To_v1_LimitRangeList(in *api.LimitRangeList, out *LimitRangeList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]LimitRange, 0) - } else { - out.Items = *(*[]LimitRange)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_LimitRangeList_To_v1_LimitRangeList is an autogenerated conversion function. -func Convert_api_LimitRangeList_To_v1_LimitRangeList(in *api.LimitRangeList, out *LimitRangeList, s conversion.Scope) error { - return autoConvert_api_LimitRangeList_To_v1_LimitRangeList(in, out, s) -} - -func autoConvert_v1_LimitRangeSpec_To_api_LimitRangeSpec(in *LimitRangeSpec, out *api.LimitRangeSpec, s conversion.Scope) error { - out.Limits = *(*[]api.LimitRangeItem)(unsafe.Pointer(&in.Limits)) - return nil -} - -// Convert_v1_LimitRangeSpec_To_api_LimitRangeSpec is an autogenerated conversion function. -func Convert_v1_LimitRangeSpec_To_api_LimitRangeSpec(in *LimitRangeSpec, out *api.LimitRangeSpec, s conversion.Scope) error { - return autoConvert_v1_LimitRangeSpec_To_api_LimitRangeSpec(in, out, s) -} - -func autoConvert_api_LimitRangeSpec_To_v1_LimitRangeSpec(in *api.LimitRangeSpec, out *LimitRangeSpec, s conversion.Scope) error { - if in.Limits == nil { - out.Limits = make([]LimitRangeItem, 0) - } else { - out.Limits = *(*[]LimitRangeItem)(unsafe.Pointer(&in.Limits)) - } - return nil -} - -// Convert_api_LimitRangeSpec_To_v1_LimitRangeSpec is an autogenerated conversion function. -func Convert_api_LimitRangeSpec_To_v1_LimitRangeSpec(in *api.LimitRangeSpec, out *LimitRangeSpec, s conversion.Scope) error { - return autoConvert_api_LimitRangeSpec_To_v1_LimitRangeSpec(in, out, s) -} - -func autoConvert_v1_List_To_api_List(in *List, out *api.List, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]runtime.Object, len(*in)) - for i := range *in { - if err := runtime.Convert_runtime_RawExtension_To_runtime_Object(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -// Convert_v1_List_To_api_List is an autogenerated conversion function. -func Convert_v1_List_To_api_List(in *List, out *api.List, s conversion.Scope) error { - return autoConvert_v1_List_To_api_List(in, out, s) -} - -func autoConvert_api_List_To_v1_List(in *api.List, out *List, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]runtime.RawExtension, len(*in)) - for i := range *in { - if err := runtime.Convert_runtime_Object_To_runtime_RawExtension(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = make([]runtime.RawExtension, 0) - } - return nil -} - -// Convert_api_List_To_v1_List is an autogenerated conversion function. -func Convert_api_List_To_v1_List(in *api.List, out *List, s conversion.Scope) error { - return autoConvert_api_List_To_v1_List(in, out, s) -} - -func autoConvert_v1_ListOptions_To_api_ListOptions(in *ListOptions, out *api.ListOptions, s conversion.Scope) error { - if err := meta_v1.Convert_string_To_labels_Selector(&in.LabelSelector, &out.LabelSelector, s); err != nil { - return err - } - if err := meta_v1.Convert_string_To_fields_Selector(&in.FieldSelector, &out.FieldSelector, s); err != nil { - return err - } - out.IncludeUninitialized = in.IncludeUninitialized - out.Watch = in.Watch - out.ResourceVersion = in.ResourceVersion - out.TimeoutSeconds = (*int64)(unsafe.Pointer(in.TimeoutSeconds)) - return nil -} - -// Convert_v1_ListOptions_To_api_ListOptions is an autogenerated conversion function. -func Convert_v1_ListOptions_To_api_ListOptions(in *ListOptions, out *api.ListOptions, s conversion.Scope) error { - return autoConvert_v1_ListOptions_To_api_ListOptions(in, out, s) -} - -func autoConvert_api_ListOptions_To_v1_ListOptions(in *api.ListOptions, out *ListOptions, s conversion.Scope) error { - if err := meta_v1.Convert_labels_Selector_To_string(&in.LabelSelector, &out.LabelSelector, s); err != nil { - return err - } - if err := meta_v1.Convert_fields_Selector_To_string(&in.FieldSelector, &out.FieldSelector, s); err != nil { - return err - } - out.IncludeUninitialized = in.IncludeUninitialized - out.Watch = in.Watch - out.ResourceVersion = in.ResourceVersion - out.TimeoutSeconds = (*int64)(unsafe.Pointer(in.TimeoutSeconds)) - return nil -} - -// Convert_api_ListOptions_To_v1_ListOptions is an autogenerated conversion function. -func Convert_api_ListOptions_To_v1_ListOptions(in *api.ListOptions, out *ListOptions, s conversion.Scope) error { - return autoConvert_api_ListOptions_To_v1_ListOptions(in, out, s) -} - -func autoConvert_v1_LoadBalancerIngress_To_api_LoadBalancerIngress(in *LoadBalancerIngress, out *api.LoadBalancerIngress, s conversion.Scope) error { - out.IP = in.IP - out.Hostname = in.Hostname - return nil -} - -// Convert_v1_LoadBalancerIngress_To_api_LoadBalancerIngress is an autogenerated conversion function. -func Convert_v1_LoadBalancerIngress_To_api_LoadBalancerIngress(in *LoadBalancerIngress, out *api.LoadBalancerIngress, s conversion.Scope) error { - return autoConvert_v1_LoadBalancerIngress_To_api_LoadBalancerIngress(in, out, s) -} - -func autoConvert_api_LoadBalancerIngress_To_v1_LoadBalancerIngress(in *api.LoadBalancerIngress, out *LoadBalancerIngress, s conversion.Scope) error { - out.IP = in.IP - out.Hostname = in.Hostname - return nil -} - -// Convert_api_LoadBalancerIngress_To_v1_LoadBalancerIngress is an autogenerated conversion function. -func Convert_api_LoadBalancerIngress_To_v1_LoadBalancerIngress(in *api.LoadBalancerIngress, out *LoadBalancerIngress, s conversion.Scope) error { - return autoConvert_api_LoadBalancerIngress_To_v1_LoadBalancerIngress(in, out, s) -} - -func autoConvert_v1_LoadBalancerStatus_To_api_LoadBalancerStatus(in *LoadBalancerStatus, out *api.LoadBalancerStatus, s conversion.Scope) error { - out.Ingress = *(*[]api.LoadBalancerIngress)(unsafe.Pointer(&in.Ingress)) - return nil -} - -// Convert_v1_LoadBalancerStatus_To_api_LoadBalancerStatus is an autogenerated conversion function. -func Convert_v1_LoadBalancerStatus_To_api_LoadBalancerStatus(in *LoadBalancerStatus, out *api.LoadBalancerStatus, s conversion.Scope) error { - return autoConvert_v1_LoadBalancerStatus_To_api_LoadBalancerStatus(in, out, s) -} - -func autoConvert_api_LoadBalancerStatus_To_v1_LoadBalancerStatus(in *api.LoadBalancerStatus, out *LoadBalancerStatus, s conversion.Scope) error { - out.Ingress = *(*[]LoadBalancerIngress)(unsafe.Pointer(&in.Ingress)) - return nil -} - -// Convert_api_LoadBalancerStatus_To_v1_LoadBalancerStatus is an autogenerated conversion function. -func Convert_api_LoadBalancerStatus_To_v1_LoadBalancerStatus(in *api.LoadBalancerStatus, out *LoadBalancerStatus, s conversion.Scope) error { - return autoConvert_api_LoadBalancerStatus_To_v1_LoadBalancerStatus(in, out, s) -} - -func autoConvert_v1_LocalObjectReference_To_api_LocalObjectReference(in *LocalObjectReference, out *api.LocalObjectReference, s conversion.Scope) error { - out.Name = in.Name - return nil -} - -// Convert_v1_LocalObjectReference_To_api_LocalObjectReference is an autogenerated conversion function. -func Convert_v1_LocalObjectReference_To_api_LocalObjectReference(in *LocalObjectReference, out *api.LocalObjectReference, s conversion.Scope) error { - return autoConvert_v1_LocalObjectReference_To_api_LocalObjectReference(in, out, s) -} - -func autoConvert_api_LocalObjectReference_To_v1_LocalObjectReference(in *api.LocalObjectReference, out *LocalObjectReference, s conversion.Scope) error { - out.Name = in.Name - return nil -} - -// Convert_api_LocalObjectReference_To_v1_LocalObjectReference is an autogenerated conversion function. -func Convert_api_LocalObjectReference_To_v1_LocalObjectReference(in *api.LocalObjectReference, out *LocalObjectReference, s conversion.Scope) error { - 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 - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_NFSVolumeSource_To_api_NFSVolumeSource is an autogenerated conversion function. -func Convert_v1_NFSVolumeSource_To_api_NFSVolumeSource(in *NFSVolumeSource, out *api.NFSVolumeSource, s conversion.Scope) error { - return autoConvert_v1_NFSVolumeSource_To_api_NFSVolumeSource(in, out, s) -} - -func autoConvert_api_NFSVolumeSource_To_v1_NFSVolumeSource(in *api.NFSVolumeSource, out *NFSVolumeSource, s conversion.Scope) error { - out.Server = in.Server - out.Path = in.Path - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_NFSVolumeSource_To_v1_NFSVolumeSource is an autogenerated conversion function. -func Convert_api_NFSVolumeSource_To_v1_NFSVolumeSource(in *api.NFSVolumeSource, out *NFSVolumeSource, s conversion.Scope) error { - return autoConvert_api_NFSVolumeSource_To_v1_NFSVolumeSource(in, out, s) -} - -func autoConvert_v1_Namespace_To_api_Namespace(in *Namespace, out *api.Namespace, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_NamespaceSpec_To_api_NamespaceSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_NamespaceStatus_To_api_NamespaceStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_v1_Namespace_To_api_Namespace is an autogenerated conversion function. -func Convert_v1_Namespace_To_api_Namespace(in *Namespace, out *api.Namespace, s conversion.Scope) error { - return autoConvert_v1_Namespace_To_api_Namespace(in, out, s) -} - -func autoConvert_api_Namespace_To_v1_Namespace(in *api.Namespace, out *Namespace, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_NamespaceSpec_To_v1_NamespaceSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_NamespaceStatus_To_v1_NamespaceStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_api_Namespace_To_v1_Namespace is an autogenerated conversion function. -func Convert_api_Namespace_To_v1_Namespace(in *api.Namespace, out *Namespace, s conversion.Scope) error { - return autoConvert_api_Namespace_To_v1_Namespace(in, out, s) -} - -func autoConvert_v1_NamespaceList_To_api_NamespaceList(in *NamespaceList, out *api.NamespaceList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.Namespace)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_NamespaceList_To_api_NamespaceList is an autogenerated conversion function. -func Convert_v1_NamespaceList_To_api_NamespaceList(in *NamespaceList, out *api.NamespaceList, s conversion.Scope) error { - return autoConvert_v1_NamespaceList_To_api_NamespaceList(in, out, s) -} - -func autoConvert_api_NamespaceList_To_v1_NamespaceList(in *api.NamespaceList, out *NamespaceList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]Namespace, 0) - } else { - out.Items = *(*[]Namespace)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_NamespaceList_To_v1_NamespaceList is an autogenerated conversion function. -func Convert_api_NamespaceList_To_v1_NamespaceList(in *api.NamespaceList, out *NamespaceList, s conversion.Scope) error { - return autoConvert_api_NamespaceList_To_v1_NamespaceList(in, out, s) -} - -func autoConvert_v1_NamespaceSpec_To_api_NamespaceSpec(in *NamespaceSpec, out *api.NamespaceSpec, s conversion.Scope) error { - out.Finalizers = *(*[]api.FinalizerName)(unsafe.Pointer(&in.Finalizers)) - return nil -} - -// Convert_v1_NamespaceSpec_To_api_NamespaceSpec is an autogenerated conversion function. -func Convert_v1_NamespaceSpec_To_api_NamespaceSpec(in *NamespaceSpec, out *api.NamespaceSpec, s conversion.Scope) error { - return autoConvert_v1_NamespaceSpec_To_api_NamespaceSpec(in, out, s) -} - -func autoConvert_api_NamespaceSpec_To_v1_NamespaceSpec(in *api.NamespaceSpec, out *NamespaceSpec, s conversion.Scope) error { - out.Finalizers = *(*[]FinalizerName)(unsafe.Pointer(&in.Finalizers)) - return nil -} - -// Convert_api_NamespaceSpec_To_v1_NamespaceSpec is an autogenerated conversion function. -func Convert_api_NamespaceSpec_To_v1_NamespaceSpec(in *api.NamespaceSpec, out *NamespaceSpec, s conversion.Scope) error { - return autoConvert_api_NamespaceSpec_To_v1_NamespaceSpec(in, out, s) -} - -func autoConvert_v1_NamespaceStatus_To_api_NamespaceStatus(in *NamespaceStatus, out *api.NamespaceStatus, s conversion.Scope) error { - out.Phase = api.NamespacePhase(in.Phase) - return nil -} - -// Convert_v1_NamespaceStatus_To_api_NamespaceStatus is an autogenerated conversion function. -func Convert_v1_NamespaceStatus_To_api_NamespaceStatus(in *NamespaceStatus, out *api.NamespaceStatus, s conversion.Scope) error { - return autoConvert_v1_NamespaceStatus_To_api_NamespaceStatus(in, out, s) -} - -func autoConvert_api_NamespaceStatus_To_v1_NamespaceStatus(in *api.NamespaceStatus, out *NamespaceStatus, s conversion.Scope) error { - out.Phase = NamespacePhase(in.Phase) - return nil -} - -// Convert_api_NamespaceStatus_To_v1_NamespaceStatus is an autogenerated conversion function. -func Convert_api_NamespaceStatus_To_v1_NamespaceStatus(in *api.NamespaceStatus, out *NamespaceStatus, s conversion.Scope) error { - return autoConvert_api_NamespaceStatus_To_v1_NamespaceStatus(in, out, s) -} - -func autoConvert_v1_Node_To_api_Node(in *Node, out *api.Node, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_NodeSpec_To_api_NodeSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_NodeStatus_To_api_NodeStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_v1_Node_To_api_Node is an autogenerated conversion function. -func Convert_v1_Node_To_api_Node(in *Node, out *api.Node, s conversion.Scope) error { - return autoConvert_v1_Node_To_api_Node(in, out, s) -} - -func autoConvert_api_Node_To_v1_Node(in *api.Node, out *Node, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_NodeSpec_To_v1_NodeSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_NodeStatus_To_v1_NodeStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_api_Node_To_v1_Node is an autogenerated conversion function. -func Convert_api_Node_To_v1_Node(in *api.Node, out *Node, s conversion.Scope) error { - return autoConvert_api_Node_To_v1_Node(in, out, s) -} - -func autoConvert_v1_NodeAddress_To_api_NodeAddress(in *NodeAddress, out *api.NodeAddress, s conversion.Scope) error { - out.Type = api.NodeAddressType(in.Type) - out.Address = in.Address - return nil -} - -// Convert_v1_NodeAddress_To_api_NodeAddress is an autogenerated conversion function. -func Convert_v1_NodeAddress_To_api_NodeAddress(in *NodeAddress, out *api.NodeAddress, s conversion.Scope) error { - return autoConvert_v1_NodeAddress_To_api_NodeAddress(in, out, s) -} - -func autoConvert_api_NodeAddress_To_v1_NodeAddress(in *api.NodeAddress, out *NodeAddress, s conversion.Scope) error { - out.Type = NodeAddressType(in.Type) - out.Address = in.Address - return nil -} - -// Convert_api_NodeAddress_To_v1_NodeAddress is an autogenerated conversion function. -func Convert_api_NodeAddress_To_v1_NodeAddress(in *api.NodeAddress, out *NodeAddress, s conversion.Scope) error { - return autoConvert_api_NodeAddress_To_v1_NodeAddress(in, out, s) -} - -func autoConvert_v1_NodeAffinity_To_api_NodeAffinity(in *NodeAffinity, out *api.NodeAffinity, s conversion.Scope) error { - out.RequiredDuringSchedulingIgnoredDuringExecution = (*api.NodeSelector)(unsafe.Pointer(in.RequiredDuringSchedulingIgnoredDuringExecution)) - out.PreferredDuringSchedulingIgnoredDuringExecution = *(*[]api.PreferredSchedulingTerm)(unsafe.Pointer(&in.PreferredDuringSchedulingIgnoredDuringExecution)) - return nil -} - -// Convert_v1_NodeAffinity_To_api_NodeAffinity is an autogenerated conversion function. -func Convert_v1_NodeAffinity_To_api_NodeAffinity(in *NodeAffinity, out *api.NodeAffinity, s conversion.Scope) error { - return autoConvert_v1_NodeAffinity_To_api_NodeAffinity(in, out, s) -} - -func autoConvert_api_NodeAffinity_To_v1_NodeAffinity(in *api.NodeAffinity, out *NodeAffinity, s conversion.Scope) error { - out.RequiredDuringSchedulingIgnoredDuringExecution = (*NodeSelector)(unsafe.Pointer(in.RequiredDuringSchedulingIgnoredDuringExecution)) - out.PreferredDuringSchedulingIgnoredDuringExecution = *(*[]PreferredSchedulingTerm)(unsafe.Pointer(&in.PreferredDuringSchedulingIgnoredDuringExecution)) - return nil -} - -// Convert_api_NodeAffinity_To_v1_NodeAffinity is an autogenerated conversion function. -func Convert_api_NodeAffinity_To_v1_NodeAffinity(in *api.NodeAffinity, out *NodeAffinity, s conversion.Scope) error { - return autoConvert_api_NodeAffinity_To_v1_NodeAffinity(in, out, s) -} - -func autoConvert_v1_NodeCondition_To_api_NodeCondition(in *NodeCondition, out *api.NodeCondition, s conversion.Scope) error { - out.Type = api.NodeConditionType(in.Type) - out.Status = api.ConditionStatus(in.Status) - out.LastHeartbeatTime = in.LastHeartbeatTime - out.LastTransitionTime = in.LastTransitionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_v1_NodeCondition_To_api_NodeCondition is an autogenerated conversion function. -func Convert_v1_NodeCondition_To_api_NodeCondition(in *NodeCondition, out *api.NodeCondition, s conversion.Scope) error { - return autoConvert_v1_NodeCondition_To_api_NodeCondition(in, out, s) -} - -func autoConvert_api_NodeCondition_To_v1_NodeCondition(in *api.NodeCondition, out *NodeCondition, s conversion.Scope) error { - out.Type = NodeConditionType(in.Type) - out.Status = ConditionStatus(in.Status) - out.LastHeartbeatTime = in.LastHeartbeatTime - out.LastTransitionTime = in.LastTransitionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_api_NodeCondition_To_v1_NodeCondition is an autogenerated conversion function. -func Convert_api_NodeCondition_To_v1_NodeCondition(in *api.NodeCondition, out *NodeCondition, s conversion.Scope) error { - return autoConvert_api_NodeCondition_To_v1_NodeCondition(in, out, s) -} - -func autoConvert_v1_NodeDaemonEndpoints_To_api_NodeDaemonEndpoints(in *NodeDaemonEndpoints, out *api.NodeDaemonEndpoints, s conversion.Scope) error { - if err := Convert_v1_DaemonEndpoint_To_api_DaemonEndpoint(&in.KubeletEndpoint, &out.KubeletEndpoint, s); err != nil { - return err - } - return nil -} - -// Convert_v1_NodeDaemonEndpoints_To_api_NodeDaemonEndpoints is an autogenerated conversion function. -func Convert_v1_NodeDaemonEndpoints_To_api_NodeDaemonEndpoints(in *NodeDaemonEndpoints, out *api.NodeDaemonEndpoints, s conversion.Scope) error { - return autoConvert_v1_NodeDaemonEndpoints_To_api_NodeDaemonEndpoints(in, out, s) -} - -func autoConvert_api_NodeDaemonEndpoints_To_v1_NodeDaemonEndpoints(in *api.NodeDaemonEndpoints, out *NodeDaemonEndpoints, s conversion.Scope) error { - if err := Convert_api_DaemonEndpoint_To_v1_DaemonEndpoint(&in.KubeletEndpoint, &out.KubeletEndpoint, s); err != nil { - return err - } - return nil -} - -// Convert_api_NodeDaemonEndpoints_To_v1_NodeDaemonEndpoints is an autogenerated conversion function. -func Convert_api_NodeDaemonEndpoints_To_v1_NodeDaemonEndpoints(in *api.NodeDaemonEndpoints, out *NodeDaemonEndpoints, s conversion.Scope) error { - return autoConvert_api_NodeDaemonEndpoints_To_v1_NodeDaemonEndpoints(in, out, s) -} - -func autoConvert_v1_NodeList_To_api_NodeList(in *NodeList, out *api.NodeList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.Node)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_NodeList_To_api_NodeList is an autogenerated conversion function. -func Convert_v1_NodeList_To_api_NodeList(in *NodeList, out *api.NodeList, s conversion.Scope) error { - return autoConvert_v1_NodeList_To_api_NodeList(in, out, s) -} - -func autoConvert_api_NodeList_To_v1_NodeList(in *api.NodeList, out *NodeList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]Node, 0) - } else { - out.Items = *(*[]Node)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_NodeList_To_v1_NodeList is an autogenerated conversion function. -func Convert_api_NodeList_To_v1_NodeList(in *api.NodeList, out *NodeList, s conversion.Scope) error { - return autoConvert_api_NodeList_To_v1_NodeList(in, out, s) -} - -func autoConvert_v1_NodeProxyOptions_To_api_NodeProxyOptions(in *NodeProxyOptions, out *api.NodeProxyOptions, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_v1_NodeProxyOptions_To_api_NodeProxyOptions is an autogenerated conversion function. -func Convert_v1_NodeProxyOptions_To_api_NodeProxyOptions(in *NodeProxyOptions, out *api.NodeProxyOptions, s conversion.Scope) error { - return autoConvert_v1_NodeProxyOptions_To_api_NodeProxyOptions(in, out, s) -} - -func autoConvert_api_NodeProxyOptions_To_v1_NodeProxyOptions(in *api.NodeProxyOptions, out *NodeProxyOptions, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_api_NodeProxyOptions_To_v1_NodeProxyOptions is an autogenerated conversion function. -func Convert_api_NodeProxyOptions_To_v1_NodeProxyOptions(in *api.NodeProxyOptions, out *NodeProxyOptions, s conversion.Scope) error { - return autoConvert_api_NodeProxyOptions_To_v1_NodeProxyOptions(in, out, s) -} - -func autoConvert_v1_NodeResources_To_api_NodeResources(in *NodeResources, out *api.NodeResources, s conversion.Scope) error { - out.Capacity = *(*api.ResourceList)(unsafe.Pointer(&in.Capacity)) - return nil -} - -// Convert_v1_NodeResources_To_api_NodeResources is an autogenerated conversion function. -func Convert_v1_NodeResources_To_api_NodeResources(in *NodeResources, out *api.NodeResources, s conversion.Scope) error { - return autoConvert_v1_NodeResources_To_api_NodeResources(in, out, s) -} - -func autoConvert_api_NodeResources_To_v1_NodeResources(in *api.NodeResources, out *NodeResources, s conversion.Scope) error { - out.Capacity = *(*ResourceList)(unsafe.Pointer(&in.Capacity)) - return nil -} - -// Convert_api_NodeResources_To_v1_NodeResources is an autogenerated conversion function. -func Convert_api_NodeResources_To_v1_NodeResources(in *api.NodeResources, out *NodeResources, s conversion.Scope) error { - return autoConvert_api_NodeResources_To_v1_NodeResources(in, out, s) -} - -func autoConvert_v1_NodeSelector_To_api_NodeSelector(in *NodeSelector, out *api.NodeSelector, s conversion.Scope) error { - out.NodeSelectorTerms = *(*[]api.NodeSelectorTerm)(unsafe.Pointer(&in.NodeSelectorTerms)) - return nil -} - -// Convert_v1_NodeSelector_To_api_NodeSelector is an autogenerated conversion function. -func Convert_v1_NodeSelector_To_api_NodeSelector(in *NodeSelector, out *api.NodeSelector, s conversion.Scope) error { - return autoConvert_v1_NodeSelector_To_api_NodeSelector(in, out, s) -} - -func autoConvert_api_NodeSelector_To_v1_NodeSelector(in *api.NodeSelector, out *NodeSelector, s conversion.Scope) error { - if in.NodeSelectorTerms == nil { - out.NodeSelectorTerms = make([]NodeSelectorTerm, 0) - } else { - out.NodeSelectorTerms = *(*[]NodeSelectorTerm)(unsafe.Pointer(&in.NodeSelectorTerms)) - } - return nil -} - -// Convert_api_NodeSelector_To_v1_NodeSelector is an autogenerated conversion function. -func Convert_api_NodeSelector_To_v1_NodeSelector(in *api.NodeSelector, out *NodeSelector, s conversion.Scope) error { - return autoConvert_api_NodeSelector_To_v1_NodeSelector(in, out, s) -} - -func autoConvert_v1_NodeSelectorRequirement_To_api_NodeSelectorRequirement(in *NodeSelectorRequirement, out *api.NodeSelectorRequirement, s conversion.Scope) error { - out.Key = in.Key - out.Operator = api.NodeSelectorOperator(in.Operator) - out.Values = *(*[]string)(unsafe.Pointer(&in.Values)) - return nil -} - -// Convert_v1_NodeSelectorRequirement_To_api_NodeSelectorRequirement is an autogenerated conversion function. -func Convert_v1_NodeSelectorRequirement_To_api_NodeSelectorRequirement(in *NodeSelectorRequirement, out *api.NodeSelectorRequirement, s conversion.Scope) error { - return autoConvert_v1_NodeSelectorRequirement_To_api_NodeSelectorRequirement(in, out, s) -} - -func autoConvert_api_NodeSelectorRequirement_To_v1_NodeSelectorRequirement(in *api.NodeSelectorRequirement, out *NodeSelectorRequirement, s conversion.Scope) error { - out.Key = in.Key - out.Operator = NodeSelectorOperator(in.Operator) - out.Values = *(*[]string)(unsafe.Pointer(&in.Values)) - return nil -} - -// Convert_api_NodeSelectorRequirement_To_v1_NodeSelectorRequirement is an autogenerated conversion function. -func Convert_api_NodeSelectorRequirement_To_v1_NodeSelectorRequirement(in *api.NodeSelectorRequirement, out *NodeSelectorRequirement, s conversion.Scope) error { - return autoConvert_api_NodeSelectorRequirement_To_v1_NodeSelectorRequirement(in, out, s) -} - -func autoConvert_v1_NodeSelectorTerm_To_api_NodeSelectorTerm(in *NodeSelectorTerm, out *api.NodeSelectorTerm, s conversion.Scope) error { - out.MatchExpressions = *(*[]api.NodeSelectorRequirement)(unsafe.Pointer(&in.MatchExpressions)) - return nil -} - -// Convert_v1_NodeSelectorTerm_To_api_NodeSelectorTerm is an autogenerated conversion function. -func Convert_v1_NodeSelectorTerm_To_api_NodeSelectorTerm(in *NodeSelectorTerm, out *api.NodeSelectorTerm, s conversion.Scope) error { - return autoConvert_v1_NodeSelectorTerm_To_api_NodeSelectorTerm(in, out, s) -} - -func autoConvert_api_NodeSelectorTerm_To_v1_NodeSelectorTerm(in *api.NodeSelectorTerm, out *NodeSelectorTerm, s conversion.Scope) error { - if in.MatchExpressions == nil { - out.MatchExpressions = make([]NodeSelectorRequirement, 0) - } else { - out.MatchExpressions = *(*[]NodeSelectorRequirement)(unsafe.Pointer(&in.MatchExpressions)) - } - return nil -} - -// Convert_api_NodeSelectorTerm_To_v1_NodeSelectorTerm is an autogenerated conversion function. -func Convert_api_NodeSelectorTerm_To_v1_NodeSelectorTerm(in *api.NodeSelectorTerm, out *NodeSelectorTerm, s conversion.Scope) error { - return autoConvert_api_NodeSelectorTerm_To_v1_NodeSelectorTerm(in, out, s) -} - -func autoConvert_v1_NodeSpec_To_api_NodeSpec(in *NodeSpec, out *api.NodeSpec, s conversion.Scope) error { - out.PodCIDR = in.PodCIDR - out.ExternalID = in.ExternalID - out.ProviderID = in.ProviderID - out.Unschedulable = in.Unschedulable - out.Taints = *(*[]api.Taint)(unsafe.Pointer(&in.Taints)) - return nil -} - -// Convert_v1_NodeSpec_To_api_NodeSpec is an autogenerated conversion function. -func Convert_v1_NodeSpec_To_api_NodeSpec(in *NodeSpec, out *api.NodeSpec, s conversion.Scope) error { - return autoConvert_v1_NodeSpec_To_api_NodeSpec(in, out, s) -} - -func autoConvert_api_NodeSpec_To_v1_NodeSpec(in *api.NodeSpec, out *NodeSpec, s conversion.Scope) error { - out.PodCIDR = in.PodCIDR - out.ExternalID = in.ExternalID - out.ProviderID = in.ProviderID - out.Unschedulable = in.Unschedulable - out.Taints = *(*[]Taint)(unsafe.Pointer(&in.Taints)) - return nil -} - -// Convert_api_NodeSpec_To_v1_NodeSpec is an autogenerated conversion function. -func Convert_api_NodeSpec_To_v1_NodeSpec(in *api.NodeSpec, out *NodeSpec, s conversion.Scope) error { - return autoConvert_api_NodeSpec_To_v1_NodeSpec(in, out, s) -} - -func autoConvert_v1_NodeStatus_To_api_NodeStatus(in *NodeStatus, out *api.NodeStatus, s conversion.Scope) error { - out.Capacity = *(*api.ResourceList)(unsafe.Pointer(&in.Capacity)) - out.Allocatable = *(*api.ResourceList)(unsafe.Pointer(&in.Allocatable)) - out.Phase = api.NodePhase(in.Phase) - out.Conditions = *(*[]api.NodeCondition)(unsafe.Pointer(&in.Conditions)) - out.Addresses = *(*[]api.NodeAddress)(unsafe.Pointer(&in.Addresses)) - if err := Convert_v1_NodeDaemonEndpoints_To_api_NodeDaemonEndpoints(&in.DaemonEndpoints, &out.DaemonEndpoints, s); err != nil { - return err - } - if err := Convert_v1_NodeSystemInfo_To_api_NodeSystemInfo(&in.NodeInfo, &out.NodeInfo, s); err != nil { - return err - } - out.Images = *(*[]api.ContainerImage)(unsafe.Pointer(&in.Images)) - out.VolumesInUse = *(*[]api.UniqueVolumeName)(unsafe.Pointer(&in.VolumesInUse)) - out.VolumesAttached = *(*[]api.AttachedVolume)(unsafe.Pointer(&in.VolumesAttached)) - return nil -} - -// Convert_v1_NodeStatus_To_api_NodeStatus is an autogenerated conversion function. -func Convert_v1_NodeStatus_To_api_NodeStatus(in *NodeStatus, out *api.NodeStatus, s conversion.Scope) error { - return autoConvert_v1_NodeStatus_To_api_NodeStatus(in, out, s) -} - -func autoConvert_api_NodeStatus_To_v1_NodeStatus(in *api.NodeStatus, out *NodeStatus, s conversion.Scope) error { - out.Capacity = *(*ResourceList)(unsafe.Pointer(&in.Capacity)) - out.Allocatable = *(*ResourceList)(unsafe.Pointer(&in.Allocatable)) - out.Phase = NodePhase(in.Phase) - out.Conditions = *(*[]NodeCondition)(unsafe.Pointer(&in.Conditions)) - out.Addresses = *(*[]NodeAddress)(unsafe.Pointer(&in.Addresses)) - if err := Convert_api_NodeDaemonEndpoints_To_v1_NodeDaemonEndpoints(&in.DaemonEndpoints, &out.DaemonEndpoints, s); err != nil { - return err - } - if err := Convert_api_NodeSystemInfo_To_v1_NodeSystemInfo(&in.NodeInfo, &out.NodeInfo, s); err != nil { - return err - } - out.Images = *(*[]ContainerImage)(unsafe.Pointer(&in.Images)) - out.VolumesInUse = *(*[]UniqueVolumeName)(unsafe.Pointer(&in.VolumesInUse)) - out.VolumesAttached = *(*[]AttachedVolume)(unsafe.Pointer(&in.VolumesAttached)) - return nil -} - -// Convert_api_NodeStatus_To_v1_NodeStatus is an autogenerated conversion function. -func Convert_api_NodeStatus_To_v1_NodeStatus(in *api.NodeStatus, out *NodeStatus, s conversion.Scope) error { - return autoConvert_api_NodeStatus_To_v1_NodeStatus(in, out, s) -} - -func autoConvert_v1_NodeSystemInfo_To_api_NodeSystemInfo(in *NodeSystemInfo, out *api.NodeSystemInfo, s conversion.Scope) error { - out.MachineID = in.MachineID - out.SystemUUID = in.SystemUUID - out.BootID = in.BootID - out.KernelVersion = in.KernelVersion - out.OSImage = in.OSImage - out.ContainerRuntimeVersion = in.ContainerRuntimeVersion - out.KubeletVersion = in.KubeletVersion - out.KubeProxyVersion = in.KubeProxyVersion - out.OperatingSystem = in.OperatingSystem - out.Architecture = in.Architecture - return nil -} - -// Convert_v1_NodeSystemInfo_To_api_NodeSystemInfo is an autogenerated conversion function. -func Convert_v1_NodeSystemInfo_To_api_NodeSystemInfo(in *NodeSystemInfo, out *api.NodeSystemInfo, s conversion.Scope) error { - return autoConvert_v1_NodeSystemInfo_To_api_NodeSystemInfo(in, out, s) -} - -func autoConvert_api_NodeSystemInfo_To_v1_NodeSystemInfo(in *api.NodeSystemInfo, out *NodeSystemInfo, s conversion.Scope) error { - out.MachineID = in.MachineID - out.SystemUUID = in.SystemUUID - out.BootID = in.BootID - out.KernelVersion = in.KernelVersion - out.OSImage = in.OSImage - out.ContainerRuntimeVersion = in.ContainerRuntimeVersion - out.KubeletVersion = in.KubeletVersion - out.KubeProxyVersion = in.KubeProxyVersion - out.OperatingSystem = in.OperatingSystem - out.Architecture = in.Architecture - return nil -} - -// Convert_api_NodeSystemInfo_To_v1_NodeSystemInfo is an autogenerated conversion function. -func Convert_api_NodeSystemInfo_To_v1_NodeSystemInfo(in *api.NodeSystemInfo, out *NodeSystemInfo, s conversion.Scope) error { - return autoConvert_api_NodeSystemInfo_To_v1_NodeSystemInfo(in, out, s) -} - -func autoConvert_v1_ObjectFieldSelector_To_api_ObjectFieldSelector(in *ObjectFieldSelector, out *api.ObjectFieldSelector, s conversion.Scope) error { - out.APIVersion = in.APIVersion - out.FieldPath = in.FieldPath - return nil -} - -// Convert_v1_ObjectFieldSelector_To_api_ObjectFieldSelector is an autogenerated conversion function. -func Convert_v1_ObjectFieldSelector_To_api_ObjectFieldSelector(in *ObjectFieldSelector, out *api.ObjectFieldSelector, s conversion.Scope) error { - return autoConvert_v1_ObjectFieldSelector_To_api_ObjectFieldSelector(in, out, s) -} - -func autoConvert_api_ObjectFieldSelector_To_v1_ObjectFieldSelector(in *api.ObjectFieldSelector, out *ObjectFieldSelector, s conversion.Scope) error { - out.APIVersion = in.APIVersion - out.FieldPath = in.FieldPath - return nil -} - -// Convert_api_ObjectFieldSelector_To_v1_ObjectFieldSelector is an autogenerated conversion function. -func Convert_api_ObjectFieldSelector_To_v1_ObjectFieldSelector(in *api.ObjectFieldSelector, out *ObjectFieldSelector, s conversion.Scope) error { - return autoConvert_api_ObjectFieldSelector_To_v1_ObjectFieldSelector(in, out, s) -} - -func autoConvert_v1_ObjectMeta_To_api_ObjectMeta(in *ObjectMeta, out *api.ObjectMeta, s conversion.Scope) error { - out.Name = in.Name - out.GenerateName = in.GenerateName - out.Namespace = in.Namespace - out.SelfLink = in.SelfLink - out.UID = types.UID(in.UID) - out.ResourceVersion = in.ResourceVersion - out.Generation = in.Generation - out.CreationTimestamp = in.CreationTimestamp - out.DeletionTimestamp = (*meta_v1.Time)(unsafe.Pointer(in.DeletionTimestamp)) - out.DeletionGracePeriodSeconds = (*int64)(unsafe.Pointer(in.DeletionGracePeriodSeconds)) - out.Labels = *(*map[string]string)(unsafe.Pointer(&in.Labels)) - out.Annotations = *(*map[string]string)(unsafe.Pointer(&in.Annotations)) - out.OwnerReferences = *(*[]meta_v1.OwnerReference)(unsafe.Pointer(&in.OwnerReferences)) - out.Initializers = (*meta_v1.Initializers)(unsafe.Pointer(in.Initializers)) - out.Finalizers = *(*[]string)(unsafe.Pointer(&in.Finalizers)) - out.ClusterName = in.ClusterName - return nil -} - -// Convert_v1_ObjectMeta_To_api_ObjectMeta is an autogenerated conversion function. -func Convert_v1_ObjectMeta_To_api_ObjectMeta(in *ObjectMeta, out *api.ObjectMeta, s conversion.Scope) error { - return autoConvert_v1_ObjectMeta_To_api_ObjectMeta(in, out, s) -} - -func autoConvert_api_ObjectMeta_To_v1_ObjectMeta(in *api.ObjectMeta, out *ObjectMeta, s conversion.Scope) error { - out.Name = in.Name - out.GenerateName = in.GenerateName - out.Namespace = in.Namespace - out.SelfLink = in.SelfLink - out.UID = types.UID(in.UID) - out.ResourceVersion = in.ResourceVersion - out.Generation = in.Generation - out.CreationTimestamp = in.CreationTimestamp - out.DeletionTimestamp = (*meta_v1.Time)(unsafe.Pointer(in.DeletionTimestamp)) - out.DeletionGracePeriodSeconds = (*int64)(unsafe.Pointer(in.DeletionGracePeriodSeconds)) - out.Labels = *(*map[string]string)(unsafe.Pointer(&in.Labels)) - out.Annotations = *(*map[string]string)(unsafe.Pointer(&in.Annotations)) - out.OwnerReferences = *(*[]meta_v1.OwnerReference)(unsafe.Pointer(&in.OwnerReferences)) - out.Initializers = (*meta_v1.Initializers)(unsafe.Pointer(in.Initializers)) - out.Finalizers = *(*[]string)(unsafe.Pointer(&in.Finalizers)) - out.ClusterName = in.ClusterName - return nil -} - -// Convert_api_ObjectMeta_To_v1_ObjectMeta is an autogenerated conversion function. -func Convert_api_ObjectMeta_To_v1_ObjectMeta(in *api.ObjectMeta, out *ObjectMeta, s conversion.Scope) error { - return autoConvert_api_ObjectMeta_To_v1_ObjectMeta(in, out, s) -} - -func autoConvert_v1_ObjectReference_To_api_ObjectReference(in *ObjectReference, out *api.ObjectReference, s conversion.Scope) error { - out.Kind = in.Kind - out.Namespace = in.Namespace - out.Name = in.Name - out.UID = types.UID(in.UID) - out.APIVersion = in.APIVersion - out.ResourceVersion = in.ResourceVersion - out.FieldPath = in.FieldPath - return nil -} - -// Convert_v1_ObjectReference_To_api_ObjectReference is an autogenerated conversion function. -func Convert_v1_ObjectReference_To_api_ObjectReference(in *ObjectReference, out *api.ObjectReference, s conversion.Scope) error { - return autoConvert_v1_ObjectReference_To_api_ObjectReference(in, out, s) -} - -func autoConvert_api_ObjectReference_To_v1_ObjectReference(in *api.ObjectReference, out *ObjectReference, s conversion.Scope) error { - out.Kind = in.Kind - out.Namespace = in.Namespace - out.Name = in.Name - out.UID = types.UID(in.UID) - out.APIVersion = in.APIVersion - out.ResourceVersion = in.ResourceVersion - out.FieldPath = in.FieldPath - return nil -} - -// Convert_api_ObjectReference_To_v1_ObjectReference is an autogenerated conversion function. -func Convert_api_ObjectReference_To_v1_ObjectReference(in *api.ObjectReference, out *ObjectReference, s conversion.Scope) error { - return autoConvert_api_ObjectReference_To_v1_ObjectReference(in, out, s) -} - -func autoConvert_v1_PersistentVolume_To_api_PersistentVolume(in *PersistentVolume, out *api.PersistentVolume, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_PersistentVolumeSpec_To_api_PersistentVolumeSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_PersistentVolumeStatus_To_api_PersistentVolumeStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_v1_PersistentVolume_To_api_PersistentVolume is an autogenerated conversion function. -func Convert_v1_PersistentVolume_To_api_PersistentVolume(in *PersistentVolume, out *api.PersistentVolume, s conversion.Scope) error { - return autoConvert_v1_PersistentVolume_To_api_PersistentVolume(in, out, s) -} - -func autoConvert_api_PersistentVolume_To_v1_PersistentVolume(in *api.PersistentVolume, out *PersistentVolume, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_PersistentVolumeSpec_To_v1_PersistentVolumeSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_PersistentVolumeStatus_To_v1_PersistentVolumeStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_api_PersistentVolume_To_v1_PersistentVolume is an autogenerated conversion function. -func Convert_api_PersistentVolume_To_v1_PersistentVolume(in *api.PersistentVolume, out *PersistentVolume, s conversion.Scope) error { - return autoConvert_api_PersistentVolume_To_v1_PersistentVolume(in, out, s) -} - -func autoConvert_v1_PersistentVolumeClaim_To_api_PersistentVolumeClaim(in *PersistentVolumeClaim, out *api.PersistentVolumeClaim, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_PersistentVolumeClaimSpec_To_api_PersistentVolumeClaimSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_PersistentVolumeClaimStatus_To_api_PersistentVolumeClaimStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_v1_PersistentVolumeClaim_To_api_PersistentVolumeClaim is an autogenerated conversion function. -func Convert_v1_PersistentVolumeClaim_To_api_PersistentVolumeClaim(in *PersistentVolumeClaim, out *api.PersistentVolumeClaim, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeClaim_To_api_PersistentVolumeClaim(in, out, s) -} - -func autoConvert_api_PersistentVolumeClaim_To_v1_PersistentVolumeClaim(in *api.PersistentVolumeClaim, out *PersistentVolumeClaim, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_PersistentVolumeClaimSpec_To_v1_PersistentVolumeClaimSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_PersistentVolumeClaimStatus_To_v1_PersistentVolumeClaimStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_api_PersistentVolumeClaim_To_v1_PersistentVolumeClaim is an autogenerated conversion function. -func Convert_api_PersistentVolumeClaim_To_v1_PersistentVolumeClaim(in *api.PersistentVolumeClaim, out *PersistentVolumeClaim, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeClaim_To_v1_PersistentVolumeClaim(in, out, s) -} - -func autoConvert_v1_PersistentVolumeClaimList_To_api_PersistentVolumeClaimList(in *PersistentVolumeClaimList, out *api.PersistentVolumeClaimList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.PersistentVolumeClaim)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_PersistentVolumeClaimList_To_api_PersistentVolumeClaimList is an autogenerated conversion function. -func Convert_v1_PersistentVolumeClaimList_To_api_PersistentVolumeClaimList(in *PersistentVolumeClaimList, out *api.PersistentVolumeClaimList, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeClaimList_To_api_PersistentVolumeClaimList(in, out, s) -} - -func autoConvert_api_PersistentVolumeClaimList_To_v1_PersistentVolumeClaimList(in *api.PersistentVolumeClaimList, out *PersistentVolumeClaimList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]PersistentVolumeClaim, 0) - } else { - out.Items = *(*[]PersistentVolumeClaim)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_PersistentVolumeClaimList_To_v1_PersistentVolumeClaimList is an autogenerated conversion function. -func Convert_api_PersistentVolumeClaimList_To_v1_PersistentVolumeClaimList(in *api.PersistentVolumeClaimList, out *PersistentVolumeClaimList, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeClaimList_To_v1_PersistentVolumeClaimList(in, out, s) -} - -func autoConvert_v1_PersistentVolumeClaimSpec_To_api_PersistentVolumeClaimSpec(in *PersistentVolumeClaimSpec, out *api.PersistentVolumeClaimSpec, s conversion.Scope) error { - out.AccessModes = *(*[]api.PersistentVolumeAccessMode)(unsafe.Pointer(&in.AccessModes)) - out.Selector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.Selector)) - if err := Convert_v1_ResourceRequirements_To_api_ResourceRequirements(&in.Resources, &out.Resources, s); err != nil { - return err - } - out.VolumeName = in.VolumeName - out.StorageClassName = (*string)(unsafe.Pointer(in.StorageClassName)) - return nil -} - -// Convert_v1_PersistentVolumeClaimSpec_To_api_PersistentVolumeClaimSpec is an autogenerated conversion function. -func Convert_v1_PersistentVolumeClaimSpec_To_api_PersistentVolumeClaimSpec(in *PersistentVolumeClaimSpec, out *api.PersistentVolumeClaimSpec, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeClaimSpec_To_api_PersistentVolumeClaimSpec(in, out, s) -} - -func autoConvert_api_PersistentVolumeClaimSpec_To_v1_PersistentVolumeClaimSpec(in *api.PersistentVolumeClaimSpec, out *PersistentVolumeClaimSpec, s conversion.Scope) error { - out.AccessModes = *(*[]PersistentVolumeAccessMode)(unsafe.Pointer(&in.AccessModes)) - out.Selector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.Selector)) - if err := Convert_api_ResourceRequirements_To_v1_ResourceRequirements(&in.Resources, &out.Resources, s); err != nil { - return err - } - out.VolumeName = in.VolumeName - out.StorageClassName = (*string)(unsafe.Pointer(in.StorageClassName)) - return nil -} - -// Convert_api_PersistentVolumeClaimSpec_To_v1_PersistentVolumeClaimSpec is an autogenerated conversion function. -func Convert_api_PersistentVolumeClaimSpec_To_v1_PersistentVolumeClaimSpec(in *api.PersistentVolumeClaimSpec, out *PersistentVolumeClaimSpec, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeClaimSpec_To_v1_PersistentVolumeClaimSpec(in, out, s) -} - -func autoConvert_v1_PersistentVolumeClaimStatus_To_api_PersistentVolumeClaimStatus(in *PersistentVolumeClaimStatus, out *api.PersistentVolumeClaimStatus, s conversion.Scope) error { - out.Phase = api.PersistentVolumeClaimPhase(in.Phase) - out.AccessModes = *(*[]api.PersistentVolumeAccessMode)(unsafe.Pointer(&in.AccessModes)) - out.Capacity = *(*api.ResourceList)(unsafe.Pointer(&in.Capacity)) - return nil -} - -// Convert_v1_PersistentVolumeClaimStatus_To_api_PersistentVolumeClaimStatus is an autogenerated conversion function. -func Convert_v1_PersistentVolumeClaimStatus_To_api_PersistentVolumeClaimStatus(in *PersistentVolumeClaimStatus, out *api.PersistentVolumeClaimStatus, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeClaimStatus_To_api_PersistentVolumeClaimStatus(in, out, s) -} - -func autoConvert_api_PersistentVolumeClaimStatus_To_v1_PersistentVolumeClaimStatus(in *api.PersistentVolumeClaimStatus, out *PersistentVolumeClaimStatus, s conversion.Scope) error { - out.Phase = PersistentVolumeClaimPhase(in.Phase) - out.AccessModes = *(*[]PersistentVolumeAccessMode)(unsafe.Pointer(&in.AccessModes)) - out.Capacity = *(*ResourceList)(unsafe.Pointer(&in.Capacity)) - return nil -} - -// Convert_api_PersistentVolumeClaimStatus_To_v1_PersistentVolumeClaimStatus is an autogenerated conversion function. -func Convert_api_PersistentVolumeClaimStatus_To_v1_PersistentVolumeClaimStatus(in *api.PersistentVolumeClaimStatus, out *PersistentVolumeClaimStatus, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeClaimStatus_To_v1_PersistentVolumeClaimStatus(in, out, s) -} - -func autoConvert_v1_PersistentVolumeClaimVolumeSource_To_api_PersistentVolumeClaimVolumeSource(in *PersistentVolumeClaimVolumeSource, out *api.PersistentVolumeClaimVolumeSource, s conversion.Scope) error { - out.ClaimName = in.ClaimName - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_PersistentVolumeClaimVolumeSource_To_api_PersistentVolumeClaimVolumeSource is an autogenerated conversion function. -func Convert_v1_PersistentVolumeClaimVolumeSource_To_api_PersistentVolumeClaimVolumeSource(in *PersistentVolumeClaimVolumeSource, out *api.PersistentVolumeClaimVolumeSource, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeClaimVolumeSource_To_api_PersistentVolumeClaimVolumeSource(in, out, s) -} - -func autoConvert_api_PersistentVolumeClaimVolumeSource_To_v1_PersistentVolumeClaimVolumeSource(in *api.PersistentVolumeClaimVolumeSource, out *PersistentVolumeClaimVolumeSource, s conversion.Scope) error { - out.ClaimName = in.ClaimName - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_PersistentVolumeClaimVolumeSource_To_v1_PersistentVolumeClaimVolumeSource is an autogenerated conversion function. -func Convert_api_PersistentVolumeClaimVolumeSource_To_v1_PersistentVolumeClaimVolumeSource(in *api.PersistentVolumeClaimVolumeSource, out *PersistentVolumeClaimVolumeSource, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeClaimVolumeSource_To_v1_PersistentVolumeClaimVolumeSource(in, out, s) -} - -func autoConvert_v1_PersistentVolumeList_To_api_PersistentVolumeList(in *PersistentVolumeList, out *api.PersistentVolumeList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]api.PersistentVolume, len(*in)) - for i := range *in { - if err := Convert_v1_PersistentVolume_To_api_PersistentVolume(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -// Convert_v1_PersistentVolumeList_To_api_PersistentVolumeList is an autogenerated conversion function. -func Convert_v1_PersistentVolumeList_To_api_PersistentVolumeList(in *PersistentVolumeList, out *api.PersistentVolumeList, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeList_To_api_PersistentVolumeList(in, out, s) -} - -func autoConvert_api_PersistentVolumeList_To_v1_PersistentVolumeList(in *api.PersistentVolumeList, out *PersistentVolumeList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PersistentVolume, len(*in)) - for i := range *in { - if err := Convert_api_PersistentVolume_To_v1_PersistentVolume(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = make([]PersistentVolume, 0) - } - return nil -} - -// Convert_api_PersistentVolumeList_To_v1_PersistentVolumeList is an autogenerated conversion function. -func Convert_api_PersistentVolumeList_To_v1_PersistentVolumeList(in *api.PersistentVolumeList, out *PersistentVolumeList, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeList_To_v1_PersistentVolumeList(in, out, s) -} - -func autoConvert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource(in *PersistentVolumeSource, out *api.PersistentVolumeSource, s conversion.Scope) error { - out.GCEPersistentDisk = (*api.GCEPersistentDiskVolumeSource)(unsafe.Pointer(in.GCEPersistentDisk)) - out.AWSElasticBlockStore = (*api.AWSElasticBlockStoreVolumeSource)(unsafe.Pointer(in.AWSElasticBlockStore)) - out.HostPath = (*api.HostPathVolumeSource)(unsafe.Pointer(in.HostPath)) - out.Glusterfs = (*api.GlusterfsVolumeSource)(unsafe.Pointer(in.Glusterfs)) - out.NFS = (*api.NFSVolumeSource)(unsafe.Pointer(in.NFS)) - out.RBD = (*api.RBDVolumeSource)(unsafe.Pointer(in.RBD)) - out.ISCSI = (*api.ISCSIVolumeSource)(unsafe.Pointer(in.ISCSI)) - out.Cinder = (*api.CinderVolumeSource)(unsafe.Pointer(in.Cinder)) - out.CephFS = (*api.CephFSVolumeSource)(unsafe.Pointer(in.CephFS)) - out.FC = (*api.FCVolumeSource)(unsafe.Pointer(in.FC)) - out.Flocker = (*api.FlockerVolumeSource)(unsafe.Pointer(in.Flocker)) - out.FlexVolume = (*api.FlexVolumeSource)(unsafe.Pointer(in.FlexVolume)) - out.AzureFile = (*api.AzureFileVolumeSource)(unsafe.Pointer(in.AzureFile)) - out.VsphereVolume = (*api.VsphereVirtualDiskVolumeSource)(unsafe.Pointer(in.VsphereVolume)) - out.Quobyte = (*api.QuobyteVolumeSource)(unsafe.Pointer(in.Quobyte)) - out.AzureDisk = (*api.AzureDiskVolumeSource)(unsafe.Pointer(in.AzureDisk)) - 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 -} - -// Convert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource is an autogenerated conversion function. -func Convert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource(in *PersistentVolumeSource, out *api.PersistentVolumeSource, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource(in, out, s) -} - -func autoConvert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource(in *api.PersistentVolumeSource, out *PersistentVolumeSource, s conversion.Scope) error { - out.GCEPersistentDisk = (*GCEPersistentDiskVolumeSource)(unsafe.Pointer(in.GCEPersistentDisk)) - out.AWSElasticBlockStore = (*AWSElasticBlockStoreVolumeSource)(unsafe.Pointer(in.AWSElasticBlockStore)) - out.HostPath = (*HostPathVolumeSource)(unsafe.Pointer(in.HostPath)) - out.Glusterfs = (*GlusterfsVolumeSource)(unsafe.Pointer(in.Glusterfs)) - out.NFS = (*NFSVolumeSource)(unsafe.Pointer(in.NFS)) - out.RBD = (*RBDVolumeSource)(unsafe.Pointer(in.RBD)) - out.Quobyte = (*QuobyteVolumeSource)(unsafe.Pointer(in.Quobyte)) - out.ISCSI = (*ISCSIVolumeSource)(unsafe.Pointer(in.ISCSI)) - out.FlexVolume = (*FlexVolumeSource)(unsafe.Pointer(in.FlexVolume)) - out.Cinder = (*CinderVolumeSource)(unsafe.Pointer(in.Cinder)) - out.CephFS = (*CephFSVolumeSource)(unsafe.Pointer(in.CephFS)) - out.FC = (*FCVolumeSource)(unsafe.Pointer(in.FC)) - out.Flocker = (*FlockerVolumeSource)(unsafe.Pointer(in.Flocker)) - out.AzureFile = (*AzureFileVolumeSource)(unsafe.Pointer(in.AzureFile)) - out.VsphereVolume = (*VsphereVirtualDiskVolumeSource)(unsafe.Pointer(in.VsphereVolume)) - out.AzureDisk = (*AzureDiskVolumeSource)(unsafe.Pointer(in.AzureDisk)) - 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 -} - -// Convert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource is an autogenerated conversion function. -func Convert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource(in *api.PersistentVolumeSource, out *PersistentVolumeSource, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource(in, out, s) -} - -func autoConvert_v1_PersistentVolumeSpec_To_api_PersistentVolumeSpec(in *PersistentVolumeSpec, out *api.PersistentVolumeSpec, s conversion.Scope) error { - out.Capacity = *(*api.ResourceList)(unsafe.Pointer(&in.Capacity)) - if err := Convert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource(&in.PersistentVolumeSource, &out.PersistentVolumeSource, s); err != nil { - return err - } - out.AccessModes = *(*[]api.PersistentVolumeAccessMode)(unsafe.Pointer(&in.AccessModes)) - out.ClaimRef = (*api.ObjectReference)(unsafe.Pointer(in.ClaimRef)) - out.PersistentVolumeReclaimPolicy = api.PersistentVolumeReclaimPolicy(in.PersistentVolumeReclaimPolicy) - out.StorageClassName = in.StorageClassName - return nil -} - -// Convert_v1_PersistentVolumeSpec_To_api_PersistentVolumeSpec is an autogenerated conversion function. -func Convert_v1_PersistentVolumeSpec_To_api_PersistentVolumeSpec(in *PersistentVolumeSpec, out *api.PersistentVolumeSpec, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeSpec_To_api_PersistentVolumeSpec(in, out, s) -} - -func autoConvert_api_PersistentVolumeSpec_To_v1_PersistentVolumeSpec(in *api.PersistentVolumeSpec, out *PersistentVolumeSpec, s conversion.Scope) error { - out.Capacity = *(*ResourceList)(unsafe.Pointer(&in.Capacity)) - if err := Convert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource(&in.PersistentVolumeSource, &out.PersistentVolumeSource, s); err != nil { - return err - } - out.AccessModes = *(*[]PersistentVolumeAccessMode)(unsafe.Pointer(&in.AccessModes)) - out.ClaimRef = (*ObjectReference)(unsafe.Pointer(in.ClaimRef)) - out.PersistentVolumeReclaimPolicy = PersistentVolumeReclaimPolicy(in.PersistentVolumeReclaimPolicy) - out.StorageClassName = in.StorageClassName - return nil -} - -// Convert_api_PersistentVolumeSpec_To_v1_PersistentVolumeSpec is an autogenerated conversion function. -func Convert_api_PersistentVolumeSpec_To_v1_PersistentVolumeSpec(in *api.PersistentVolumeSpec, out *PersistentVolumeSpec, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeSpec_To_v1_PersistentVolumeSpec(in, out, s) -} - -func autoConvert_v1_PersistentVolumeStatus_To_api_PersistentVolumeStatus(in *PersistentVolumeStatus, out *api.PersistentVolumeStatus, s conversion.Scope) error { - out.Phase = api.PersistentVolumePhase(in.Phase) - out.Message = in.Message - out.Reason = in.Reason - return nil -} - -// Convert_v1_PersistentVolumeStatus_To_api_PersistentVolumeStatus is an autogenerated conversion function. -func Convert_v1_PersistentVolumeStatus_To_api_PersistentVolumeStatus(in *PersistentVolumeStatus, out *api.PersistentVolumeStatus, s conversion.Scope) error { - return autoConvert_v1_PersistentVolumeStatus_To_api_PersistentVolumeStatus(in, out, s) -} - -func autoConvert_api_PersistentVolumeStatus_To_v1_PersistentVolumeStatus(in *api.PersistentVolumeStatus, out *PersistentVolumeStatus, s conversion.Scope) error { - out.Phase = PersistentVolumePhase(in.Phase) - out.Message = in.Message - out.Reason = in.Reason - return nil -} - -// Convert_api_PersistentVolumeStatus_To_v1_PersistentVolumeStatus is an autogenerated conversion function. -func Convert_api_PersistentVolumeStatus_To_v1_PersistentVolumeStatus(in *api.PersistentVolumeStatus, out *PersistentVolumeStatus, s conversion.Scope) error { - return autoConvert_api_PersistentVolumeStatus_To_v1_PersistentVolumeStatus(in, out, s) -} - -func autoConvert_v1_PhotonPersistentDiskVolumeSource_To_api_PhotonPersistentDiskVolumeSource(in *PhotonPersistentDiskVolumeSource, out *api.PhotonPersistentDiskVolumeSource, s conversion.Scope) error { - out.PdID = in.PdID - out.FSType = in.FSType - return nil -} - -// Convert_v1_PhotonPersistentDiskVolumeSource_To_api_PhotonPersistentDiskVolumeSource is an autogenerated conversion function. -func Convert_v1_PhotonPersistentDiskVolumeSource_To_api_PhotonPersistentDiskVolumeSource(in *PhotonPersistentDiskVolumeSource, out *api.PhotonPersistentDiskVolumeSource, s conversion.Scope) error { - return autoConvert_v1_PhotonPersistentDiskVolumeSource_To_api_PhotonPersistentDiskVolumeSource(in, out, s) -} - -func autoConvert_api_PhotonPersistentDiskVolumeSource_To_v1_PhotonPersistentDiskVolumeSource(in *api.PhotonPersistentDiskVolumeSource, out *PhotonPersistentDiskVolumeSource, s conversion.Scope) error { - out.PdID = in.PdID - out.FSType = in.FSType - return nil -} - -// Convert_api_PhotonPersistentDiskVolumeSource_To_v1_PhotonPersistentDiskVolumeSource is an autogenerated conversion function. -func Convert_api_PhotonPersistentDiskVolumeSource_To_v1_PhotonPersistentDiskVolumeSource(in *api.PhotonPersistentDiskVolumeSource, out *PhotonPersistentDiskVolumeSource, s conversion.Scope) error { - return autoConvert_api_PhotonPersistentDiskVolumeSource_To_v1_PhotonPersistentDiskVolumeSource(in, out, s) -} - -func autoConvert_v1_Pod_To_api_Pod(in *Pod, out *api.Pod, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_PodSpec_To_api_PodSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_PodStatus_To_api_PodStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func autoConvert_api_Pod_To_v1_Pod(in *api.Pod, out *Pod, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_PodSpec_To_v1_PodSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_PodStatus_To_v1_PodStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func autoConvert_v1_PodAffinity_To_api_PodAffinity(in *PodAffinity, out *api.PodAffinity, s conversion.Scope) error { - out.RequiredDuringSchedulingIgnoredDuringExecution = *(*[]api.PodAffinityTerm)(unsafe.Pointer(&in.RequiredDuringSchedulingIgnoredDuringExecution)) - out.PreferredDuringSchedulingIgnoredDuringExecution = *(*[]api.WeightedPodAffinityTerm)(unsafe.Pointer(&in.PreferredDuringSchedulingIgnoredDuringExecution)) - return nil -} - -// Convert_v1_PodAffinity_To_api_PodAffinity is an autogenerated conversion function. -func Convert_v1_PodAffinity_To_api_PodAffinity(in *PodAffinity, out *api.PodAffinity, s conversion.Scope) error { - return autoConvert_v1_PodAffinity_To_api_PodAffinity(in, out, s) -} - -func autoConvert_api_PodAffinity_To_v1_PodAffinity(in *api.PodAffinity, out *PodAffinity, s conversion.Scope) error { - out.RequiredDuringSchedulingIgnoredDuringExecution = *(*[]PodAffinityTerm)(unsafe.Pointer(&in.RequiredDuringSchedulingIgnoredDuringExecution)) - out.PreferredDuringSchedulingIgnoredDuringExecution = *(*[]WeightedPodAffinityTerm)(unsafe.Pointer(&in.PreferredDuringSchedulingIgnoredDuringExecution)) - return nil -} - -// Convert_api_PodAffinity_To_v1_PodAffinity is an autogenerated conversion function. -func Convert_api_PodAffinity_To_v1_PodAffinity(in *api.PodAffinity, out *PodAffinity, s conversion.Scope) error { - return autoConvert_api_PodAffinity_To_v1_PodAffinity(in, out, s) -} - -func autoConvert_v1_PodAffinityTerm_To_api_PodAffinityTerm(in *PodAffinityTerm, out *api.PodAffinityTerm, s conversion.Scope) error { - out.LabelSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.LabelSelector)) - out.Namespaces = *(*[]string)(unsafe.Pointer(&in.Namespaces)) - out.TopologyKey = in.TopologyKey - return nil -} - -// Convert_v1_PodAffinityTerm_To_api_PodAffinityTerm is an autogenerated conversion function. -func Convert_v1_PodAffinityTerm_To_api_PodAffinityTerm(in *PodAffinityTerm, out *api.PodAffinityTerm, s conversion.Scope) error { - return autoConvert_v1_PodAffinityTerm_To_api_PodAffinityTerm(in, out, s) -} - -func autoConvert_api_PodAffinityTerm_To_v1_PodAffinityTerm(in *api.PodAffinityTerm, out *PodAffinityTerm, s conversion.Scope) error { - out.LabelSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.LabelSelector)) - out.Namespaces = *(*[]string)(unsafe.Pointer(&in.Namespaces)) - out.TopologyKey = in.TopologyKey - return nil -} - -// Convert_api_PodAffinityTerm_To_v1_PodAffinityTerm is an autogenerated conversion function. -func Convert_api_PodAffinityTerm_To_v1_PodAffinityTerm(in *api.PodAffinityTerm, out *PodAffinityTerm, s conversion.Scope) error { - return autoConvert_api_PodAffinityTerm_To_v1_PodAffinityTerm(in, out, s) -} - -func autoConvert_v1_PodAntiAffinity_To_api_PodAntiAffinity(in *PodAntiAffinity, out *api.PodAntiAffinity, s conversion.Scope) error { - out.RequiredDuringSchedulingIgnoredDuringExecution = *(*[]api.PodAffinityTerm)(unsafe.Pointer(&in.RequiredDuringSchedulingIgnoredDuringExecution)) - out.PreferredDuringSchedulingIgnoredDuringExecution = *(*[]api.WeightedPodAffinityTerm)(unsafe.Pointer(&in.PreferredDuringSchedulingIgnoredDuringExecution)) - return nil -} - -// Convert_v1_PodAntiAffinity_To_api_PodAntiAffinity is an autogenerated conversion function. -func Convert_v1_PodAntiAffinity_To_api_PodAntiAffinity(in *PodAntiAffinity, out *api.PodAntiAffinity, s conversion.Scope) error { - return autoConvert_v1_PodAntiAffinity_To_api_PodAntiAffinity(in, out, s) -} - -func autoConvert_api_PodAntiAffinity_To_v1_PodAntiAffinity(in *api.PodAntiAffinity, out *PodAntiAffinity, s conversion.Scope) error { - out.RequiredDuringSchedulingIgnoredDuringExecution = *(*[]PodAffinityTerm)(unsafe.Pointer(&in.RequiredDuringSchedulingIgnoredDuringExecution)) - out.PreferredDuringSchedulingIgnoredDuringExecution = *(*[]WeightedPodAffinityTerm)(unsafe.Pointer(&in.PreferredDuringSchedulingIgnoredDuringExecution)) - return nil -} - -// Convert_api_PodAntiAffinity_To_v1_PodAntiAffinity is an autogenerated conversion function. -func Convert_api_PodAntiAffinity_To_v1_PodAntiAffinity(in *api.PodAntiAffinity, out *PodAntiAffinity, s conversion.Scope) error { - return autoConvert_api_PodAntiAffinity_To_v1_PodAntiAffinity(in, out, s) -} - -func autoConvert_v1_PodAttachOptions_To_api_PodAttachOptions(in *PodAttachOptions, out *api.PodAttachOptions, s conversion.Scope) error { - out.Stdin = in.Stdin - out.Stdout = in.Stdout - out.Stderr = in.Stderr - out.TTY = in.TTY - out.Container = in.Container - return nil -} - -// Convert_v1_PodAttachOptions_To_api_PodAttachOptions is an autogenerated conversion function. -func Convert_v1_PodAttachOptions_To_api_PodAttachOptions(in *PodAttachOptions, out *api.PodAttachOptions, s conversion.Scope) error { - return autoConvert_v1_PodAttachOptions_To_api_PodAttachOptions(in, out, s) -} - -func autoConvert_api_PodAttachOptions_To_v1_PodAttachOptions(in *api.PodAttachOptions, out *PodAttachOptions, s conversion.Scope) error { - out.Stdin = in.Stdin - out.Stdout = in.Stdout - out.Stderr = in.Stderr - out.TTY = in.TTY - out.Container = in.Container - return nil -} - -// Convert_api_PodAttachOptions_To_v1_PodAttachOptions is an autogenerated conversion function. -func Convert_api_PodAttachOptions_To_v1_PodAttachOptions(in *api.PodAttachOptions, out *PodAttachOptions, s conversion.Scope) error { - return autoConvert_api_PodAttachOptions_To_v1_PodAttachOptions(in, out, s) -} - -func autoConvert_v1_PodCondition_To_api_PodCondition(in *PodCondition, out *api.PodCondition, s conversion.Scope) error { - out.Type = api.PodConditionType(in.Type) - out.Status = api.ConditionStatus(in.Status) - out.LastProbeTime = in.LastProbeTime - out.LastTransitionTime = in.LastTransitionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_v1_PodCondition_To_api_PodCondition is an autogenerated conversion function. -func Convert_v1_PodCondition_To_api_PodCondition(in *PodCondition, out *api.PodCondition, s conversion.Scope) error { - return autoConvert_v1_PodCondition_To_api_PodCondition(in, out, s) -} - -func autoConvert_api_PodCondition_To_v1_PodCondition(in *api.PodCondition, out *PodCondition, s conversion.Scope) error { - out.Type = PodConditionType(in.Type) - out.Status = ConditionStatus(in.Status) - out.LastProbeTime = in.LastProbeTime - out.LastTransitionTime = in.LastTransitionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_api_PodCondition_To_v1_PodCondition is an autogenerated conversion function. -func Convert_api_PodCondition_To_v1_PodCondition(in *api.PodCondition, out *PodCondition, s conversion.Scope) error { - return autoConvert_api_PodCondition_To_v1_PodCondition(in, out, s) -} - -func autoConvert_v1_PodExecOptions_To_api_PodExecOptions(in *PodExecOptions, out *api.PodExecOptions, s conversion.Scope) error { - out.Stdin = in.Stdin - out.Stdout = in.Stdout - out.Stderr = in.Stderr - out.TTY = in.TTY - out.Container = in.Container - out.Command = *(*[]string)(unsafe.Pointer(&in.Command)) - return nil -} - -// Convert_v1_PodExecOptions_To_api_PodExecOptions is an autogenerated conversion function. -func Convert_v1_PodExecOptions_To_api_PodExecOptions(in *PodExecOptions, out *api.PodExecOptions, s conversion.Scope) error { - return autoConvert_v1_PodExecOptions_To_api_PodExecOptions(in, out, s) -} - -func autoConvert_api_PodExecOptions_To_v1_PodExecOptions(in *api.PodExecOptions, out *PodExecOptions, s conversion.Scope) error { - out.Stdin = in.Stdin - out.Stdout = in.Stdout - out.Stderr = in.Stderr - out.TTY = in.TTY - out.Container = in.Container - if in.Command == nil { - out.Command = make([]string, 0) - } else { - out.Command = *(*[]string)(unsafe.Pointer(&in.Command)) - } - return nil -} - -// Convert_api_PodExecOptions_To_v1_PodExecOptions is an autogenerated conversion function. -func Convert_api_PodExecOptions_To_v1_PodExecOptions(in *api.PodExecOptions, out *PodExecOptions, s conversion.Scope) error { - return autoConvert_api_PodExecOptions_To_v1_PodExecOptions(in, out, s) -} - -func autoConvert_v1_PodList_To_api_PodList(in *PodList, out *api.PodList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]api.Pod, len(*in)) - for i := range *in { - if err := Convert_v1_Pod_To_api_Pod(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -// Convert_v1_PodList_To_api_PodList is an autogenerated conversion function. -func Convert_v1_PodList_To_api_PodList(in *PodList, out *api.PodList, s conversion.Scope) error { - return autoConvert_v1_PodList_To_api_PodList(in, out, s) -} - -func autoConvert_api_PodList_To_v1_PodList(in *api.PodList, out *PodList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Pod, len(*in)) - for i := range *in { - if err := Convert_api_Pod_To_v1_Pod(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = make([]Pod, 0) - } - return nil -} - -// Convert_api_PodList_To_v1_PodList is an autogenerated conversion function. -func Convert_api_PodList_To_v1_PodList(in *api.PodList, out *PodList, s conversion.Scope) error { - return autoConvert_api_PodList_To_v1_PodList(in, out, s) -} - -func autoConvert_v1_PodLogOptions_To_api_PodLogOptions(in *PodLogOptions, out *api.PodLogOptions, s conversion.Scope) error { - out.Container = in.Container - out.Follow = in.Follow - out.Previous = in.Previous - out.SinceSeconds = (*int64)(unsafe.Pointer(in.SinceSeconds)) - out.SinceTime = (*meta_v1.Time)(unsafe.Pointer(in.SinceTime)) - out.Timestamps = in.Timestamps - out.TailLines = (*int64)(unsafe.Pointer(in.TailLines)) - out.LimitBytes = (*int64)(unsafe.Pointer(in.LimitBytes)) - return nil -} - -// Convert_v1_PodLogOptions_To_api_PodLogOptions is an autogenerated conversion function. -func Convert_v1_PodLogOptions_To_api_PodLogOptions(in *PodLogOptions, out *api.PodLogOptions, s conversion.Scope) error { - return autoConvert_v1_PodLogOptions_To_api_PodLogOptions(in, out, s) -} - -func autoConvert_api_PodLogOptions_To_v1_PodLogOptions(in *api.PodLogOptions, out *PodLogOptions, s conversion.Scope) error { - out.Container = in.Container - out.Follow = in.Follow - out.Previous = in.Previous - out.SinceSeconds = (*int64)(unsafe.Pointer(in.SinceSeconds)) - out.SinceTime = (*meta_v1.Time)(unsafe.Pointer(in.SinceTime)) - out.Timestamps = in.Timestamps - out.TailLines = (*int64)(unsafe.Pointer(in.TailLines)) - out.LimitBytes = (*int64)(unsafe.Pointer(in.LimitBytes)) - return nil -} - -// Convert_api_PodLogOptions_To_v1_PodLogOptions is an autogenerated conversion function. -func Convert_api_PodLogOptions_To_v1_PodLogOptions(in *api.PodLogOptions, out *PodLogOptions, s conversion.Scope) error { - return autoConvert_api_PodLogOptions_To_v1_PodLogOptions(in, out, s) -} - -func autoConvert_v1_PodPortForwardOptions_To_api_PodPortForwardOptions(in *PodPortForwardOptions, out *api.PodPortForwardOptions, s conversion.Scope) error { - out.Ports = *(*[]int32)(unsafe.Pointer(&in.Ports)) - return nil -} - -// Convert_v1_PodPortForwardOptions_To_api_PodPortForwardOptions is an autogenerated conversion function. -func Convert_v1_PodPortForwardOptions_To_api_PodPortForwardOptions(in *PodPortForwardOptions, out *api.PodPortForwardOptions, s conversion.Scope) error { - return autoConvert_v1_PodPortForwardOptions_To_api_PodPortForwardOptions(in, out, s) -} - -func autoConvert_api_PodPortForwardOptions_To_v1_PodPortForwardOptions(in *api.PodPortForwardOptions, out *PodPortForwardOptions, s conversion.Scope) error { - out.Ports = *(*[]int32)(unsafe.Pointer(&in.Ports)) - return nil -} - -// Convert_api_PodPortForwardOptions_To_v1_PodPortForwardOptions is an autogenerated conversion function. -func Convert_api_PodPortForwardOptions_To_v1_PodPortForwardOptions(in *api.PodPortForwardOptions, out *PodPortForwardOptions, s conversion.Scope) error { - return autoConvert_api_PodPortForwardOptions_To_v1_PodPortForwardOptions(in, out, s) -} - -func autoConvert_v1_PodProxyOptions_To_api_PodProxyOptions(in *PodProxyOptions, out *api.PodProxyOptions, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_v1_PodProxyOptions_To_api_PodProxyOptions is an autogenerated conversion function. -func Convert_v1_PodProxyOptions_To_api_PodProxyOptions(in *PodProxyOptions, out *api.PodProxyOptions, s conversion.Scope) error { - return autoConvert_v1_PodProxyOptions_To_api_PodProxyOptions(in, out, s) -} - -func autoConvert_api_PodProxyOptions_To_v1_PodProxyOptions(in *api.PodProxyOptions, out *PodProxyOptions, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_api_PodProxyOptions_To_v1_PodProxyOptions is an autogenerated conversion function. -func Convert_api_PodProxyOptions_To_v1_PodProxyOptions(in *api.PodProxyOptions, out *PodProxyOptions, s conversion.Scope) error { - return autoConvert_api_PodProxyOptions_To_v1_PodProxyOptions(in, out, s) -} - -func autoConvert_v1_PodSecurityContext_To_api_PodSecurityContext(in *PodSecurityContext, out *api.PodSecurityContext, s conversion.Scope) error { - out.SELinuxOptions = (*api.SELinuxOptions)(unsafe.Pointer(in.SELinuxOptions)) - out.RunAsUser = (*types.UnixUserID)(unsafe.Pointer(in.RunAsUser)) - out.RunAsNonRoot = (*bool)(unsafe.Pointer(in.RunAsNonRoot)) - out.SupplementalGroups = *(*[]types.UnixGroupID)(unsafe.Pointer(&in.SupplementalGroups)) - out.FSGroup = (*types.UnixGroupID)(unsafe.Pointer(in.FSGroup)) - return nil -} - -func autoConvert_api_PodSecurityContext_To_v1_PodSecurityContext(in *api.PodSecurityContext, out *PodSecurityContext, s conversion.Scope) error { - // INFO: in.HostNetwork opted out of conversion generation - // INFO: in.HostPID opted out of conversion generation - // INFO: in.HostIPC opted out of conversion generation - out.SELinuxOptions = (*SELinuxOptions)(unsafe.Pointer(in.SELinuxOptions)) - out.RunAsUser = (*types.UnixUserID)(unsafe.Pointer(in.RunAsUser)) - out.RunAsNonRoot = (*bool)(unsafe.Pointer(in.RunAsNonRoot)) - out.SupplementalGroups = *(*[]types.UnixGroupID)(unsafe.Pointer(&in.SupplementalGroups)) - out.FSGroup = (*types.UnixGroupID)(unsafe.Pointer(in.FSGroup)) - return nil -} - -func autoConvert_v1_PodSignature_To_api_PodSignature(in *PodSignature, out *api.PodSignature, s conversion.Scope) error { - out.PodController = (*meta_v1.OwnerReference)(unsafe.Pointer(in.PodController)) - return nil -} - -// Convert_v1_PodSignature_To_api_PodSignature is an autogenerated conversion function. -func Convert_v1_PodSignature_To_api_PodSignature(in *PodSignature, out *api.PodSignature, s conversion.Scope) error { - return autoConvert_v1_PodSignature_To_api_PodSignature(in, out, s) -} - -func autoConvert_api_PodSignature_To_v1_PodSignature(in *api.PodSignature, out *PodSignature, s conversion.Scope) error { - out.PodController = (*meta_v1.OwnerReference)(unsafe.Pointer(in.PodController)) - return nil -} - -// Convert_api_PodSignature_To_v1_PodSignature is an autogenerated conversion function. -func Convert_api_PodSignature_To_v1_PodSignature(in *api.PodSignature, out *PodSignature, s conversion.Scope) error { - return autoConvert_api_PodSignature_To_v1_PodSignature(in, out, s) -} - -func autoConvert_v1_PodSpec_To_api_PodSpec(in *PodSpec, out *api.PodSpec, s conversion.Scope) error { - if in.Volumes != nil { - in, out := &in.Volumes, &out.Volumes - *out = make([]api.Volume, len(*in)) - for i := range *in { - if err := Convert_v1_Volume_To_api_Volume(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Volumes = nil - } - out.InitContainers = *(*[]api.Container)(unsafe.Pointer(&in.InitContainers)) - out.Containers = *(*[]api.Container)(unsafe.Pointer(&in.Containers)) - out.RestartPolicy = api.RestartPolicy(in.RestartPolicy) - out.TerminationGracePeriodSeconds = (*int64)(unsafe.Pointer(in.TerminationGracePeriodSeconds)) - out.ActiveDeadlineSeconds = (*int64)(unsafe.Pointer(in.ActiveDeadlineSeconds)) - out.DNSPolicy = api.DNSPolicy(in.DNSPolicy) - out.NodeSelector = *(*map[string]string)(unsafe.Pointer(&in.NodeSelector)) - out.ServiceAccountName = in.ServiceAccountName - // INFO: in.DeprecatedServiceAccount opted out of conversion generation - out.AutomountServiceAccountToken = (*bool)(unsafe.Pointer(in.AutomountServiceAccountToken)) - out.NodeName = in.NodeName - // INFO: in.HostNetwork opted out of conversion generation - // INFO: in.HostPID opted out of conversion generation - // INFO: in.HostIPC opted out of conversion generation - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext - *out = new(api.PodSecurityContext) - if err := Convert_v1_PodSecurityContext_To_api_PodSecurityContext(*in, *out, s); err != nil { - return err - } - } else { - out.SecurityContext = nil - } - out.ImagePullSecrets = *(*[]api.LocalObjectReference)(unsafe.Pointer(&in.ImagePullSecrets)) - out.Hostname = in.Hostname - out.Subdomain = in.Subdomain - out.Affinity = (*api.Affinity)(unsafe.Pointer(in.Affinity)) - out.SchedulerName = in.SchedulerName - out.Tolerations = *(*[]api.Toleration)(unsafe.Pointer(&in.Tolerations)) - out.HostAliases = *(*[]api.HostAlias)(unsafe.Pointer(&in.HostAliases)) - return nil -} - -func autoConvert_api_PodSpec_To_v1_PodSpec(in *api.PodSpec, out *PodSpec, s conversion.Scope) error { - if in.Volumes != nil { - in, out := &in.Volumes, &out.Volumes - *out = make([]Volume, len(*in)) - for i := range *in { - if err := Convert_api_Volume_To_v1_Volume(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Volumes = nil - } - out.InitContainers = *(*[]Container)(unsafe.Pointer(&in.InitContainers)) - if in.Containers == nil { - out.Containers = make([]Container, 0) - } else { - out.Containers = *(*[]Container)(unsafe.Pointer(&in.Containers)) - } - out.RestartPolicy = RestartPolicy(in.RestartPolicy) - out.TerminationGracePeriodSeconds = (*int64)(unsafe.Pointer(in.TerminationGracePeriodSeconds)) - out.ActiveDeadlineSeconds = (*int64)(unsafe.Pointer(in.ActiveDeadlineSeconds)) - out.DNSPolicy = DNSPolicy(in.DNSPolicy) - out.NodeSelector = *(*map[string]string)(unsafe.Pointer(&in.NodeSelector)) - out.ServiceAccountName = in.ServiceAccountName - out.AutomountServiceAccountToken = (*bool)(unsafe.Pointer(in.AutomountServiceAccountToken)) - out.NodeName = in.NodeName - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext - *out = new(PodSecurityContext) - if err := Convert_api_PodSecurityContext_To_v1_PodSecurityContext(*in, *out, s); err != nil { - return err - } - } else { - out.SecurityContext = nil - } - out.ImagePullSecrets = *(*[]LocalObjectReference)(unsafe.Pointer(&in.ImagePullSecrets)) - out.Hostname = in.Hostname - out.Subdomain = in.Subdomain - out.Affinity = (*Affinity)(unsafe.Pointer(in.Affinity)) - out.SchedulerName = in.SchedulerName - out.Tolerations = *(*[]Toleration)(unsafe.Pointer(&in.Tolerations)) - out.HostAliases = *(*[]HostAlias)(unsafe.Pointer(&in.HostAliases)) - return nil -} - -func autoConvert_v1_PodStatus_To_api_PodStatus(in *PodStatus, out *api.PodStatus, s conversion.Scope) error { - out.Phase = api.PodPhase(in.Phase) - out.Conditions = *(*[]api.PodCondition)(unsafe.Pointer(&in.Conditions)) - out.Message = in.Message - out.Reason = in.Reason - out.HostIP = in.HostIP - out.PodIP = in.PodIP - out.StartTime = (*meta_v1.Time)(unsafe.Pointer(in.StartTime)) - out.InitContainerStatuses = *(*[]api.ContainerStatus)(unsafe.Pointer(&in.InitContainerStatuses)) - out.ContainerStatuses = *(*[]api.ContainerStatus)(unsafe.Pointer(&in.ContainerStatuses)) - out.QOSClass = api.PodQOSClass(in.QOSClass) - return nil -} - -// Convert_v1_PodStatus_To_api_PodStatus is an autogenerated conversion function. -func Convert_v1_PodStatus_To_api_PodStatus(in *PodStatus, out *api.PodStatus, s conversion.Scope) error { - return autoConvert_v1_PodStatus_To_api_PodStatus(in, out, s) -} - -func autoConvert_api_PodStatus_To_v1_PodStatus(in *api.PodStatus, out *PodStatus, s conversion.Scope) error { - out.Phase = PodPhase(in.Phase) - out.Conditions = *(*[]PodCondition)(unsafe.Pointer(&in.Conditions)) - out.Message = in.Message - out.Reason = in.Reason - out.HostIP = in.HostIP - out.PodIP = in.PodIP - out.StartTime = (*meta_v1.Time)(unsafe.Pointer(in.StartTime)) - out.QOSClass = PodQOSClass(in.QOSClass) - out.InitContainerStatuses = *(*[]ContainerStatus)(unsafe.Pointer(&in.InitContainerStatuses)) - out.ContainerStatuses = *(*[]ContainerStatus)(unsafe.Pointer(&in.ContainerStatuses)) - return nil -} - -// Convert_api_PodStatus_To_v1_PodStatus is an autogenerated conversion function. -func Convert_api_PodStatus_To_v1_PodStatus(in *api.PodStatus, out *PodStatus, s conversion.Scope) error { - return autoConvert_api_PodStatus_To_v1_PodStatus(in, out, s) -} - -func autoConvert_v1_PodStatusResult_To_api_PodStatusResult(in *PodStatusResult, out *api.PodStatusResult, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_PodStatus_To_api_PodStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func autoConvert_api_PodStatusResult_To_v1_PodStatusResult(in *api.PodStatusResult, out *PodStatusResult, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_PodStatus_To_v1_PodStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func autoConvert_v1_PodTemplate_To_api_PodTemplate(in *PodTemplate, out *api.PodTemplate, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec(&in.Template, &out.Template, s); err != nil { - return err - } - return nil -} - -// Convert_v1_PodTemplate_To_api_PodTemplate is an autogenerated conversion function. -func Convert_v1_PodTemplate_To_api_PodTemplate(in *PodTemplate, out *api.PodTemplate, s conversion.Scope) error { - return autoConvert_v1_PodTemplate_To_api_PodTemplate(in, out, s) -} - -func autoConvert_api_PodTemplate_To_v1_PodTemplate(in *api.PodTemplate, out *PodTemplate, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil { - return err - } - return nil -} - -// Convert_api_PodTemplate_To_v1_PodTemplate is an autogenerated conversion function. -func Convert_api_PodTemplate_To_v1_PodTemplate(in *api.PodTemplate, out *PodTemplate, s conversion.Scope) error { - return autoConvert_api_PodTemplate_To_v1_PodTemplate(in, out, s) -} - -func autoConvert_v1_PodTemplateList_To_api_PodTemplateList(in *PodTemplateList, out *api.PodTemplateList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]api.PodTemplate, len(*in)) - for i := range *in { - if err := Convert_v1_PodTemplate_To_api_PodTemplate(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -// Convert_v1_PodTemplateList_To_api_PodTemplateList is an autogenerated conversion function. -func Convert_v1_PodTemplateList_To_api_PodTemplateList(in *PodTemplateList, out *api.PodTemplateList, s conversion.Scope) error { - return autoConvert_v1_PodTemplateList_To_api_PodTemplateList(in, out, s) -} - -func autoConvert_api_PodTemplateList_To_v1_PodTemplateList(in *api.PodTemplateList, out *PodTemplateList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PodTemplate, len(*in)) - for i := range *in { - if err := Convert_api_PodTemplate_To_v1_PodTemplate(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = make([]PodTemplate, 0) - } - return nil -} - -// Convert_api_PodTemplateList_To_v1_PodTemplateList is an autogenerated conversion function. -func Convert_api_PodTemplateList_To_v1_PodTemplateList(in *api.PodTemplateList, out *PodTemplateList, s conversion.Scope) error { - return autoConvert_api_PodTemplateList_To_v1_PodTemplateList(in, out, s) -} - -func autoConvert_v1_PodTemplateSpec_To_api_PodTemplateSpec(in *PodTemplateSpec, out *api.PodTemplateSpec, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_PodSpec_To_api_PodSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - return nil -} - -func autoConvert_api_PodTemplateSpec_To_v1_PodTemplateSpec(in *api.PodTemplateSpec, out *PodTemplateSpec, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_PodSpec_To_v1_PodSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - return nil -} - -func autoConvert_v1_PortworxVolumeSource_To_api_PortworxVolumeSource(in *PortworxVolumeSource, out *api.PortworxVolumeSource, s conversion.Scope) error { - out.VolumeID = in.VolumeID - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_PortworxVolumeSource_To_api_PortworxVolumeSource is an autogenerated conversion function. -func Convert_v1_PortworxVolumeSource_To_api_PortworxVolumeSource(in *PortworxVolumeSource, out *api.PortworxVolumeSource, s conversion.Scope) error { - return autoConvert_v1_PortworxVolumeSource_To_api_PortworxVolumeSource(in, out, s) -} - -func autoConvert_api_PortworxVolumeSource_To_v1_PortworxVolumeSource(in *api.PortworxVolumeSource, out *PortworxVolumeSource, s conversion.Scope) error { - out.VolumeID = in.VolumeID - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_PortworxVolumeSource_To_v1_PortworxVolumeSource is an autogenerated conversion function. -func Convert_api_PortworxVolumeSource_To_v1_PortworxVolumeSource(in *api.PortworxVolumeSource, out *PortworxVolumeSource, s conversion.Scope) error { - return autoConvert_api_PortworxVolumeSource_To_v1_PortworxVolumeSource(in, out, s) -} - -func autoConvert_v1_Preconditions_To_api_Preconditions(in *Preconditions, out *api.Preconditions, s conversion.Scope) error { - out.UID = (*types.UID)(unsafe.Pointer(in.UID)) - return nil -} - -// Convert_v1_Preconditions_To_api_Preconditions is an autogenerated conversion function. -func Convert_v1_Preconditions_To_api_Preconditions(in *Preconditions, out *api.Preconditions, s conversion.Scope) error { - return autoConvert_v1_Preconditions_To_api_Preconditions(in, out, s) -} - -func autoConvert_api_Preconditions_To_v1_Preconditions(in *api.Preconditions, out *Preconditions, s conversion.Scope) error { - out.UID = (*types.UID)(unsafe.Pointer(in.UID)) - return nil -} - -// Convert_api_Preconditions_To_v1_Preconditions is an autogenerated conversion function. -func Convert_api_Preconditions_To_v1_Preconditions(in *api.Preconditions, out *Preconditions, s conversion.Scope) error { - return autoConvert_api_Preconditions_To_v1_Preconditions(in, out, s) -} - -func autoConvert_v1_PreferAvoidPodsEntry_To_api_PreferAvoidPodsEntry(in *PreferAvoidPodsEntry, out *api.PreferAvoidPodsEntry, s conversion.Scope) error { - if err := Convert_v1_PodSignature_To_api_PodSignature(&in.PodSignature, &out.PodSignature, s); err != nil { - return err - } - out.EvictionTime = in.EvictionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_v1_PreferAvoidPodsEntry_To_api_PreferAvoidPodsEntry is an autogenerated conversion function. -func Convert_v1_PreferAvoidPodsEntry_To_api_PreferAvoidPodsEntry(in *PreferAvoidPodsEntry, out *api.PreferAvoidPodsEntry, s conversion.Scope) error { - return autoConvert_v1_PreferAvoidPodsEntry_To_api_PreferAvoidPodsEntry(in, out, s) -} - -func autoConvert_api_PreferAvoidPodsEntry_To_v1_PreferAvoidPodsEntry(in *api.PreferAvoidPodsEntry, out *PreferAvoidPodsEntry, s conversion.Scope) error { - if err := Convert_api_PodSignature_To_v1_PodSignature(&in.PodSignature, &out.PodSignature, s); err != nil { - return err - } - out.EvictionTime = in.EvictionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_api_PreferAvoidPodsEntry_To_v1_PreferAvoidPodsEntry is an autogenerated conversion function. -func Convert_api_PreferAvoidPodsEntry_To_v1_PreferAvoidPodsEntry(in *api.PreferAvoidPodsEntry, out *PreferAvoidPodsEntry, s conversion.Scope) error { - return autoConvert_api_PreferAvoidPodsEntry_To_v1_PreferAvoidPodsEntry(in, out, s) -} - -func autoConvert_v1_PreferredSchedulingTerm_To_api_PreferredSchedulingTerm(in *PreferredSchedulingTerm, out *api.PreferredSchedulingTerm, s conversion.Scope) error { - out.Weight = in.Weight - if err := Convert_v1_NodeSelectorTerm_To_api_NodeSelectorTerm(&in.Preference, &out.Preference, s); err != nil { - return err - } - return nil -} - -// Convert_v1_PreferredSchedulingTerm_To_api_PreferredSchedulingTerm is an autogenerated conversion function. -func Convert_v1_PreferredSchedulingTerm_To_api_PreferredSchedulingTerm(in *PreferredSchedulingTerm, out *api.PreferredSchedulingTerm, s conversion.Scope) error { - return autoConvert_v1_PreferredSchedulingTerm_To_api_PreferredSchedulingTerm(in, out, s) -} - -func autoConvert_api_PreferredSchedulingTerm_To_v1_PreferredSchedulingTerm(in *api.PreferredSchedulingTerm, out *PreferredSchedulingTerm, s conversion.Scope) error { - out.Weight = in.Weight - if err := Convert_api_NodeSelectorTerm_To_v1_NodeSelectorTerm(&in.Preference, &out.Preference, s); err != nil { - return err - } - return nil -} - -// Convert_api_PreferredSchedulingTerm_To_v1_PreferredSchedulingTerm is an autogenerated conversion function. -func Convert_api_PreferredSchedulingTerm_To_v1_PreferredSchedulingTerm(in *api.PreferredSchedulingTerm, out *PreferredSchedulingTerm, s conversion.Scope) error { - return autoConvert_api_PreferredSchedulingTerm_To_v1_PreferredSchedulingTerm(in, out, s) -} - -func autoConvert_v1_Probe_To_api_Probe(in *Probe, out *api.Probe, s conversion.Scope) error { - if err := Convert_v1_Handler_To_api_Handler(&in.Handler, &out.Handler, s); err != nil { - return err - } - out.InitialDelaySeconds = in.InitialDelaySeconds - out.TimeoutSeconds = in.TimeoutSeconds - out.PeriodSeconds = in.PeriodSeconds - out.SuccessThreshold = in.SuccessThreshold - out.FailureThreshold = in.FailureThreshold - return nil -} - -// Convert_v1_Probe_To_api_Probe is an autogenerated conversion function. -func Convert_v1_Probe_To_api_Probe(in *Probe, out *api.Probe, s conversion.Scope) error { - return autoConvert_v1_Probe_To_api_Probe(in, out, s) -} - -func autoConvert_api_Probe_To_v1_Probe(in *api.Probe, out *Probe, s conversion.Scope) error { - if err := Convert_api_Handler_To_v1_Handler(&in.Handler, &out.Handler, s); err != nil { - return err - } - out.InitialDelaySeconds = in.InitialDelaySeconds - out.TimeoutSeconds = in.TimeoutSeconds - out.PeriodSeconds = in.PeriodSeconds - out.SuccessThreshold = in.SuccessThreshold - out.FailureThreshold = in.FailureThreshold - return nil -} - -// Convert_api_Probe_To_v1_Probe is an autogenerated conversion function. -func Convert_api_Probe_To_v1_Probe(in *api.Probe, out *Probe, s conversion.Scope) error { - return autoConvert_api_Probe_To_v1_Probe(in, out, s) -} - -func autoConvert_v1_ProjectedVolumeSource_To_api_ProjectedVolumeSource(in *ProjectedVolumeSource, out *api.ProjectedVolumeSource, s conversion.Scope) error { - out.Sources = *(*[]api.VolumeProjection)(unsafe.Pointer(&in.Sources)) - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - return nil -} - -// Convert_v1_ProjectedVolumeSource_To_api_ProjectedVolumeSource is an autogenerated conversion function. -func Convert_v1_ProjectedVolumeSource_To_api_ProjectedVolumeSource(in *ProjectedVolumeSource, out *api.ProjectedVolumeSource, s conversion.Scope) error { - return autoConvert_v1_ProjectedVolumeSource_To_api_ProjectedVolumeSource(in, out, s) -} - -func autoConvert_api_ProjectedVolumeSource_To_v1_ProjectedVolumeSource(in *api.ProjectedVolumeSource, out *ProjectedVolumeSource, s conversion.Scope) error { - if in.Sources == nil { - out.Sources = make([]VolumeProjection, 0) - } else { - out.Sources = *(*[]VolumeProjection)(unsafe.Pointer(&in.Sources)) - } - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - return nil -} - -// Convert_api_ProjectedVolumeSource_To_v1_ProjectedVolumeSource is an autogenerated conversion function. -func Convert_api_ProjectedVolumeSource_To_v1_ProjectedVolumeSource(in *api.ProjectedVolumeSource, out *ProjectedVolumeSource, s conversion.Scope) error { - return autoConvert_api_ProjectedVolumeSource_To_v1_ProjectedVolumeSource(in, out, s) -} - -func autoConvert_v1_QuobyteVolumeSource_To_api_QuobyteVolumeSource(in *QuobyteVolumeSource, out *api.QuobyteVolumeSource, s conversion.Scope) error { - out.Registry = in.Registry - out.Volume = in.Volume - out.ReadOnly = in.ReadOnly - out.User = in.User - out.Group = in.Group - return nil -} - -// Convert_v1_QuobyteVolumeSource_To_api_QuobyteVolumeSource is an autogenerated conversion function. -func Convert_v1_QuobyteVolumeSource_To_api_QuobyteVolumeSource(in *QuobyteVolumeSource, out *api.QuobyteVolumeSource, s conversion.Scope) error { - return autoConvert_v1_QuobyteVolumeSource_To_api_QuobyteVolumeSource(in, out, s) -} - -func autoConvert_api_QuobyteVolumeSource_To_v1_QuobyteVolumeSource(in *api.QuobyteVolumeSource, out *QuobyteVolumeSource, s conversion.Scope) error { - out.Registry = in.Registry - out.Volume = in.Volume - out.ReadOnly = in.ReadOnly - out.User = in.User - out.Group = in.Group - return nil -} - -// Convert_api_QuobyteVolumeSource_To_v1_QuobyteVolumeSource is an autogenerated conversion function. -func Convert_api_QuobyteVolumeSource_To_v1_QuobyteVolumeSource(in *api.QuobyteVolumeSource, out *QuobyteVolumeSource, s conversion.Scope) error { - return autoConvert_api_QuobyteVolumeSource_To_v1_QuobyteVolumeSource(in, out, s) -} - -func autoConvert_v1_RBDVolumeSource_To_api_RBDVolumeSource(in *RBDVolumeSource, out *api.RBDVolumeSource, s conversion.Scope) error { - out.CephMonitors = *(*[]string)(unsafe.Pointer(&in.CephMonitors)) - out.RBDImage = in.RBDImage - out.FSType = in.FSType - out.RBDPool = in.RBDPool - out.RadosUser = in.RadosUser - out.Keyring = in.Keyring - out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_RBDVolumeSource_To_api_RBDVolumeSource is an autogenerated conversion function. -func Convert_v1_RBDVolumeSource_To_api_RBDVolumeSource(in *RBDVolumeSource, out *api.RBDVolumeSource, s conversion.Scope) error { - return autoConvert_v1_RBDVolumeSource_To_api_RBDVolumeSource(in, out, s) -} - -func autoConvert_api_RBDVolumeSource_To_v1_RBDVolumeSource(in *api.RBDVolumeSource, out *RBDVolumeSource, s conversion.Scope) error { - if in.CephMonitors == nil { - out.CephMonitors = make([]string, 0) - } else { - out.CephMonitors = *(*[]string)(unsafe.Pointer(&in.CephMonitors)) - } - out.RBDImage = in.RBDImage - out.FSType = in.FSType - out.RBDPool = in.RBDPool - out.RadosUser = in.RadosUser - out.Keyring = in.Keyring - out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_RBDVolumeSource_To_v1_RBDVolumeSource is an autogenerated conversion function. -func Convert_api_RBDVolumeSource_To_v1_RBDVolumeSource(in *api.RBDVolumeSource, out *RBDVolumeSource, s conversion.Scope) error { - return autoConvert_api_RBDVolumeSource_To_v1_RBDVolumeSource(in, out, s) -} - -func autoConvert_v1_RangeAllocation_To_api_RangeAllocation(in *RangeAllocation, out *api.RangeAllocation, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Range = in.Range - out.Data = *(*[]byte)(unsafe.Pointer(&in.Data)) - return nil -} - -// Convert_v1_RangeAllocation_To_api_RangeAllocation is an autogenerated conversion function. -func Convert_v1_RangeAllocation_To_api_RangeAllocation(in *RangeAllocation, out *api.RangeAllocation, s conversion.Scope) error { - return autoConvert_v1_RangeAllocation_To_api_RangeAllocation(in, out, s) -} - -func autoConvert_api_RangeAllocation_To_v1_RangeAllocation(in *api.RangeAllocation, out *RangeAllocation, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Range = in.Range - if in.Data == nil { - out.Data = make([]byte, 0) - } else { - out.Data = *(*[]byte)(unsafe.Pointer(&in.Data)) - } - return nil -} - -// Convert_api_RangeAllocation_To_v1_RangeAllocation is an autogenerated conversion function. -func Convert_api_RangeAllocation_To_v1_RangeAllocation(in *api.RangeAllocation, out *RangeAllocation, s conversion.Scope) error { - return autoConvert_api_RangeAllocation_To_v1_RangeAllocation(in, out, s) -} - -func autoConvert_v1_ReplicationController_To_api_ReplicationController(in *ReplicationController, out *api.ReplicationController, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_ReplicationControllerSpec_To_api_ReplicationControllerSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_ReplicationControllerStatus_To_api_ReplicationControllerStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_v1_ReplicationController_To_api_ReplicationController is an autogenerated conversion function. -func Convert_v1_ReplicationController_To_api_ReplicationController(in *ReplicationController, out *api.ReplicationController, s conversion.Scope) error { - return autoConvert_v1_ReplicationController_To_api_ReplicationController(in, out, s) -} - -func autoConvert_api_ReplicationController_To_v1_ReplicationController(in *api.ReplicationController, out *ReplicationController, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_ReplicationControllerSpec_To_v1_ReplicationControllerSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_ReplicationControllerStatus_To_v1_ReplicationControllerStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_api_ReplicationController_To_v1_ReplicationController is an autogenerated conversion function. -func Convert_api_ReplicationController_To_v1_ReplicationController(in *api.ReplicationController, out *ReplicationController, s conversion.Scope) error { - return autoConvert_api_ReplicationController_To_v1_ReplicationController(in, out, s) -} - -func autoConvert_v1_ReplicationControllerCondition_To_api_ReplicationControllerCondition(in *ReplicationControllerCondition, out *api.ReplicationControllerCondition, s conversion.Scope) error { - out.Type = api.ReplicationControllerConditionType(in.Type) - out.Status = api.ConditionStatus(in.Status) - out.LastTransitionTime = in.LastTransitionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_v1_ReplicationControllerCondition_To_api_ReplicationControllerCondition is an autogenerated conversion function. -func Convert_v1_ReplicationControllerCondition_To_api_ReplicationControllerCondition(in *ReplicationControllerCondition, out *api.ReplicationControllerCondition, s conversion.Scope) error { - return autoConvert_v1_ReplicationControllerCondition_To_api_ReplicationControllerCondition(in, out, s) -} - -func autoConvert_api_ReplicationControllerCondition_To_v1_ReplicationControllerCondition(in *api.ReplicationControllerCondition, out *ReplicationControllerCondition, s conversion.Scope) error { - out.Type = ReplicationControllerConditionType(in.Type) - out.Status = ConditionStatus(in.Status) - out.LastTransitionTime = in.LastTransitionTime - out.Reason = in.Reason - out.Message = in.Message - return nil -} - -// Convert_api_ReplicationControllerCondition_To_v1_ReplicationControllerCondition is an autogenerated conversion function. -func Convert_api_ReplicationControllerCondition_To_v1_ReplicationControllerCondition(in *api.ReplicationControllerCondition, out *ReplicationControllerCondition, s conversion.Scope) error { - return autoConvert_api_ReplicationControllerCondition_To_v1_ReplicationControllerCondition(in, out, s) -} - -func autoConvert_v1_ReplicationControllerList_To_api_ReplicationControllerList(in *ReplicationControllerList, out *api.ReplicationControllerList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]api.ReplicationController, len(*in)) - for i := range *in { - if err := Convert_v1_ReplicationController_To_api_ReplicationController(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -// Convert_v1_ReplicationControllerList_To_api_ReplicationControllerList is an autogenerated conversion function. -func Convert_v1_ReplicationControllerList_To_api_ReplicationControllerList(in *ReplicationControllerList, out *api.ReplicationControllerList, s conversion.Scope) error { - return autoConvert_v1_ReplicationControllerList_To_api_ReplicationControllerList(in, out, s) -} - -func autoConvert_api_ReplicationControllerList_To_v1_ReplicationControllerList(in *api.ReplicationControllerList, out *ReplicationControllerList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ReplicationController, len(*in)) - for i := range *in { - if err := Convert_api_ReplicationController_To_v1_ReplicationController(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = make([]ReplicationController, 0) - } - return nil -} - -// Convert_api_ReplicationControllerList_To_v1_ReplicationControllerList is an autogenerated conversion function. -func Convert_api_ReplicationControllerList_To_v1_ReplicationControllerList(in *api.ReplicationControllerList, out *ReplicationControllerList, s conversion.Scope) error { - return autoConvert_api_ReplicationControllerList_To_v1_ReplicationControllerList(in, out, s) -} - -func autoConvert_v1_ReplicationControllerSpec_To_api_ReplicationControllerSpec(in *ReplicationControllerSpec, out *api.ReplicationControllerSpec, s conversion.Scope) error { - if err := meta_v1.Convert_Pointer_int32_To_int32(&in.Replicas, &out.Replicas, s); err != nil { - return err - } - out.MinReadySeconds = in.MinReadySeconds - out.Selector = *(*map[string]string)(unsafe.Pointer(&in.Selector)) - if in.Template != nil { - in, out := &in.Template, &out.Template - *out = new(api.PodTemplateSpec) - if err := Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec(*in, *out, s); err != nil { - return err - } - } else { - out.Template = nil - } - return nil -} - -func autoConvert_api_ReplicationControllerSpec_To_v1_ReplicationControllerSpec(in *api.ReplicationControllerSpec, out *ReplicationControllerSpec, s conversion.Scope) error { - if err := meta_v1.Convert_int32_To_Pointer_int32(&in.Replicas, &out.Replicas, s); err != nil { - return err - } - out.MinReadySeconds = in.MinReadySeconds - out.Selector = *(*map[string]string)(unsafe.Pointer(&in.Selector)) - if in.Template != nil { - in, out := &in.Template, &out.Template - *out = new(PodTemplateSpec) - if err := Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(*in, *out, s); err != nil { - return err - } - } else { - out.Template = nil - } - return nil -} - -func autoConvert_v1_ReplicationControllerStatus_To_api_ReplicationControllerStatus(in *ReplicationControllerStatus, out *api.ReplicationControllerStatus, s conversion.Scope) error { - out.Replicas = in.Replicas - out.FullyLabeledReplicas = in.FullyLabeledReplicas - out.ReadyReplicas = in.ReadyReplicas - out.AvailableReplicas = in.AvailableReplicas - out.ObservedGeneration = in.ObservedGeneration - out.Conditions = *(*[]api.ReplicationControllerCondition)(unsafe.Pointer(&in.Conditions)) - return nil -} - -// Convert_v1_ReplicationControllerStatus_To_api_ReplicationControllerStatus is an autogenerated conversion function. -func Convert_v1_ReplicationControllerStatus_To_api_ReplicationControllerStatus(in *ReplicationControllerStatus, out *api.ReplicationControllerStatus, s conversion.Scope) error { - return autoConvert_v1_ReplicationControllerStatus_To_api_ReplicationControllerStatus(in, out, s) -} - -func autoConvert_api_ReplicationControllerStatus_To_v1_ReplicationControllerStatus(in *api.ReplicationControllerStatus, out *ReplicationControllerStatus, s conversion.Scope) error { - out.Replicas = in.Replicas - out.FullyLabeledReplicas = in.FullyLabeledReplicas - out.ReadyReplicas = in.ReadyReplicas - out.AvailableReplicas = in.AvailableReplicas - out.ObservedGeneration = in.ObservedGeneration - out.Conditions = *(*[]ReplicationControllerCondition)(unsafe.Pointer(&in.Conditions)) - return nil -} - -// Convert_api_ReplicationControllerStatus_To_v1_ReplicationControllerStatus is an autogenerated conversion function. -func Convert_api_ReplicationControllerStatus_To_v1_ReplicationControllerStatus(in *api.ReplicationControllerStatus, out *ReplicationControllerStatus, s conversion.Scope) error { - return autoConvert_api_ReplicationControllerStatus_To_v1_ReplicationControllerStatus(in, out, s) -} - -func autoConvert_v1_ResourceFieldSelector_To_api_ResourceFieldSelector(in *ResourceFieldSelector, out *api.ResourceFieldSelector, s conversion.Scope) error { - out.ContainerName = in.ContainerName - out.Resource = in.Resource - out.Divisor = in.Divisor - return nil -} - -// Convert_v1_ResourceFieldSelector_To_api_ResourceFieldSelector is an autogenerated conversion function. -func Convert_v1_ResourceFieldSelector_To_api_ResourceFieldSelector(in *ResourceFieldSelector, out *api.ResourceFieldSelector, s conversion.Scope) error { - return autoConvert_v1_ResourceFieldSelector_To_api_ResourceFieldSelector(in, out, s) -} - -func autoConvert_api_ResourceFieldSelector_To_v1_ResourceFieldSelector(in *api.ResourceFieldSelector, out *ResourceFieldSelector, s conversion.Scope) error { - out.ContainerName = in.ContainerName - out.Resource = in.Resource - out.Divisor = in.Divisor - return nil -} - -// Convert_api_ResourceFieldSelector_To_v1_ResourceFieldSelector is an autogenerated conversion function. -func Convert_api_ResourceFieldSelector_To_v1_ResourceFieldSelector(in *api.ResourceFieldSelector, out *ResourceFieldSelector, s conversion.Scope) error { - return autoConvert_api_ResourceFieldSelector_To_v1_ResourceFieldSelector(in, out, s) -} - -func autoConvert_v1_ResourceQuota_To_api_ResourceQuota(in *ResourceQuota, out *api.ResourceQuota, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_ResourceQuotaSpec_To_api_ResourceQuotaSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_ResourceQuotaStatus_To_api_ResourceQuotaStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_v1_ResourceQuota_To_api_ResourceQuota is an autogenerated conversion function. -func Convert_v1_ResourceQuota_To_api_ResourceQuota(in *ResourceQuota, out *api.ResourceQuota, s conversion.Scope) error { - return autoConvert_v1_ResourceQuota_To_api_ResourceQuota(in, out, s) -} - -func autoConvert_api_ResourceQuota_To_v1_ResourceQuota(in *api.ResourceQuota, out *ResourceQuota, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_ResourceQuotaSpec_To_v1_ResourceQuotaSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_ResourceQuotaStatus_To_v1_ResourceQuotaStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_api_ResourceQuota_To_v1_ResourceQuota is an autogenerated conversion function. -func Convert_api_ResourceQuota_To_v1_ResourceQuota(in *api.ResourceQuota, out *ResourceQuota, s conversion.Scope) error { - return autoConvert_api_ResourceQuota_To_v1_ResourceQuota(in, out, s) -} - -func autoConvert_v1_ResourceQuotaList_To_api_ResourceQuotaList(in *ResourceQuotaList, out *api.ResourceQuotaList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.ResourceQuota)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_ResourceQuotaList_To_api_ResourceQuotaList is an autogenerated conversion function. -func Convert_v1_ResourceQuotaList_To_api_ResourceQuotaList(in *ResourceQuotaList, out *api.ResourceQuotaList, s conversion.Scope) error { - return autoConvert_v1_ResourceQuotaList_To_api_ResourceQuotaList(in, out, s) -} - -func autoConvert_api_ResourceQuotaList_To_v1_ResourceQuotaList(in *api.ResourceQuotaList, out *ResourceQuotaList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]ResourceQuota, 0) - } else { - out.Items = *(*[]ResourceQuota)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_ResourceQuotaList_To_v1_ResourceQuotaList is an autogenerated conversion function. -func Convert_api_ResourceQuotaList_To_v1_ResourceQuotaList(in *api.ResourceQuotaList, out *ResourceQuotaList, s conversion.Scope) error { - return autoConvert_api_ResourceQuotaList_To_v1_ResourceQuotaList(in, out, s) -} - -func autoConvert_v1_ResourceQuotaSpec_To_api_ResourceQuotaSpec(in *ResourceQuotaSpec, out *api.ResourceQuotaSpec, s conversion.Scope) error { - out.Hard = *(*api.ResourceList)(unsafe.Pointer(&in.Hard)) - out.Scopes = *(*[]api.ResourceQuotaScope)(unsafe.Pointer(&in.Scopes)) - return nil -} - -// Convert_v1_ResourceQuotaSpec_To_api_ResourceQuotaSpec is an autogenerated conversion function. -func Convert_v1_ResourceQuotaSpec_To_api_ResourceQuotaSpec(in *ResourceQuotaSpec, out *api.ResourceQuotaSpec, s conversion.Scope) error { - return autoConvert_v1_ResourceQuotaSpec_To_api_ResourceQuotaSpec(in, out, s) -} - -func autoConvert_api_ResourceQuotaSpec_To_v1_ResourceQuotaSpec(in *api.ResourceQuotaSpec, out *ResourceQuotaSpec, s conversion.Scope) error { - out.Hard = *(*ResourceList)(unsafe.Pointer(&in.Hard)) - out.Scopes = *(*[]ResourceQuotaScope)(unsafe.Pointer(&in.Scopes)) - return nil -} - -// Convert_api_ResourceQuotaSpec_To_v1_ResourceQuotaSpec is an autogenerated conversion function. -func Convert_api_ResourceQuotaSpec_To_v1_ResourceQuotaSpec(in *api.ResourceQuotaSpec, out *ResourceQuotaSpec, s conversion.Scope) error { - return autoConvert_api_ResourceQuotaSpec_To_v1_ResourceQuotaSpec(in, out, s) -} - -func autoConvert_v1_ResourceQuotaStatus_To_api_ResourceQuotaStatus(in *ResourceQuotaStatus, out *api.ResourceQuotaStatus, s conversion.Scope) error { - out.Hard = *(*api.ResourceList)(unsafe.Pointer(&in.Hard)) - out.Used = *(*api.ResourceList)(unsafe.Pointer(&in.Used)) - return nil -} - -// Convert_v1_ResourceQuotaStatus_To_api_ResourceQuotaStatus is an autogenerated conversion function. -func Convert_v1_ResourceQuotaStatus_To_api_ResourceQuotaStatus(in *ResourceQuotaStatus, out *api.ResourceQuotaStatus, s conversion.Scope) error { - return autoConvert_v1_ResourceQuotaStatus_To_api_ResourceQuotaStatus(in, out, s) -} - -func autoConvert_api_ResourceQuotaStatus_To_v1_ResourceQuotaStatus(in *api.ResourceQuotaStatus, out *ResourceQuotaStatus, s conversion.Scope) error { - out.Hard = *(*ResourceList)(unsafe.Pointer(&in.Hard)) - out.Used = *(*ResourceList)(unsafe.Pointer(&in.Used)) - return nil -} - -// Convert_api_ResourceQuotaStatus_To_v1_ResourceQuotaStatus is an autogenerated conversion function. -func Convert_api_ResourceQuotaStatus_To_v1_ResourceQuotaStatus(in *api.ResourceQuotaStatus, out *ResourceQuotaStatus, s conversion.Scope) error { - return autoConvert_api_ResourceQuotaStatus_To_v1_ResourceQuotaStatus(in, out, s) -} - -func autoConvert_v1_ResourceRequirements_To_api_ResourceRequirements(in *ResourceRequirements, out *api.ResourceRequirements, s conversion.Scope) error { - out.Limits = *(*api.ResourceList)(unsafe.Pointer(&in.Limits)) - out.Requests = *(*api.ResourceList)(unsafe.Pointer(&in.Requests)) - return nil -} - -// Convert_v1_ResourceRequirements_To_api_ResourceRequirements is an autogenerated conversion function. -func Convert_v1_ResourceRequirements_To_api_ResourceRequirements(in *ResourceRequirements, out *api.ResourceRequirements, s conversion.Scope) error { - return autoConvert_v1_ResourceRequirements_To_api_ResourceRequirements(in, out, s) -} - -func autoConvert_api_ResourceRequirements_To_v1_ResourceRequirements(in *api.ResourceRequirements, out *ResourceRequirements, s conversion.Scope) error { - out.Limits = *(*ResourceList)(unsafe.Pointer(&in.Limits)) - out.Requests = *(*ResourceList)(unsafe.Pointer(&in.Requests)) - return nil -} - -// Convert_api_ResourceRequirements_To_v1_ResourceRequirements is an autogenerated conversion function. -func Convert_api_ResourceRequirements_To_v1_ResourceRequirements(in *api.ResourceRequirements, out *ResourceRequirements, s conversion.Scope) error { - return autoConvert_api_ResourceRequirements_To_v1_ResourceRequirements(in, out, s) -} - -func autoConvert_v1_SELinuxOptions_To_api_SELinuxOptions(in *SELinuxOptions, out *api.SELinuxOptions, s conversion.Scope) error { - out.User = in.User - out.Role = in.Role - out.Type = in.Type - out.Level = in.Level - return nil -} - -// Convert_v1_SELinuxOptions_To_api_SELinuxOptions is an autogenerated conversion function. -func Convert_v1_SELinuxOptions_To_api_SELinuxOptions(in *SELinuxOptions, out *api.SELinuxOptions, s conversion.Scope) error { - return autoConvert_v1_SELinuxOptions_To_api_SELinuxOptions(in, out, s) -} - -func autoConvert_api_SELinuxOptions_To_v1_SELinuxOptions(in *api.SELinuxOptions, out *SELinuxOptions, s conversion.Scope) error { - out.User = in.User - out.Role = in.Role - out.Type = in.Type - out.Level = in.Level - return nil -} - -// Convert_api_SELinuxOptions_To_v1_SELinuxOptions is an autogenerated conversion function. -func Convert_api_SELinuxOptions_To_v1_SELinuxOptions(in *api.SELinuxOptions, out *SELinuxOptions, s conversion.Scope) error { - return autoConvert_api_SELinuxOptions_To_v1_SELinuxOptions(in, out, s) -} - -func autoConvert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource(in *ScaleIOVolumeSource, out *api.ScaleIOVolumeSource, s conversion.Scope) error { - out.Gateway = in.Gateway - out.System = in.System - out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.SSLEnabled = in.SSLEnabled - out.ProtectionDomain = in.ProtectionDomain - out.StoragePool = in.StoragePool - out.StorageMode = in.StorageMode - out.VolumeName = in.VolumeName - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource is an autogenerated conversion function. -func Convert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource(in *ScaleIOVolumeSource, out *api.ScaleIOVolumeSource, s conversion.Scope) error { - return autoConvert_v1_ScaleIOVolumeSource_To_api_ScaleIOVolumeSource(in, out, s) -} - -func autoConvert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource(in *api.ScaleIOVolumeSource, out *ScaleIOVolumeSource, s conversion.Scope) error { - out.Gateway = in.Gateway - out.System = in.System - out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) - out.SSLEnabled = in.SSLEnabled - out.ProtectionDomain = in.ProtectionDomain - out.StoragePool = in.StoragePool - out.StorageMode = in.StorageMode - out.VolumeName = in.VolumeName - out.FSType = in.FSType - out.ReadOnly = in.ReadOnly - return nil -} - -// Convert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource is an autogenerated conversion function. -func Convert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource(in *api.ScaleIOVolumeSource, out *ScaleIOVolumeSource, s conversion.Scope) error { - return autoConvert_api_ScaleIOVolumeSource_To_v1_ScaleIOVolumeSource(in, out, s) -} - -func autoConvert_v1_Secret_To_api_Secret(in *Secret, out *api.Secret, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Data = *(*map[string][]byte)(unsafe.Pointer(&in.Data)) - // INFO: in.StringData opted out of conversion generation - out.Type = api.SecretType(in.Type) - return nil -} - -func autoConvert_api_Secret_To_v1_Secret(in *api.Secret, out *Secret, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Data = *(*map[string][]byte)(unsafe.Pointer(&in.Data)) - out.Type = SecretType(in.Type) - return nil -} - -// Convert_api_Secret_To_v1_Secret is an autogenerated conversion function. -func Convert_api_Secret_To_v1_Secret(in *api.Secret, out *Secret, s conversion.Scope) error { - return autoConvert_api_Secret_To_v1_Secret(in, out, s) -} - -func autoConvert_v1_SecretEnvSource_To_api_SecretEnvSource(in *SecretEnvSource, out *api.SecretEnvSource, s conversion.Scope) error { - if err := Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_SecretEnvSource_To_api_SecretEnvSource is an autogenerated conversion function. -func Convert_v1_SecretEnvSource_To_api_SecretEnvSource(in *SecretEnvSource, out *api.SecretEnvSource, s conversion.Scope) error { - return autoConvert_v1_SecretEnvSource_To_api_SecretEnvSource(in, out, s) -} - -func autoConvert_api_SecretEnvSource_To_v1_SecretEnvSource(in *api.SecretEnvSource, out *SecretEnvSource, s conversion.Scope) error { - if err := Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_SecretEnvSource_To_v1_SecretEnvSource is an autogenerated conversion function. -func Convert_api_SecretEnvSource_To_v1_SecretEnvSource(in *api.SecretEnvSource, out *SecretEnvSource, s conversion.Scope) error { - return autoConvert_api_SecretEnvSource_To_v1_SecretEnvSource(in, out, s) -} - -func autoConvert_v1_SecretKeySelector_To_api_SecretKeySelector(in *SecretKeySelector, out *api.SecretKeySelector, s conversion.Scope) error { - if err := Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Key = in.Key - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_SecretKeySelector_To_api_SecretKeySelector is an autogenerated conversion function. -func Convert_v1_SecretKeySelector_To_api_SecretKeySelector(in *SecretKeySelector, out *api.SecretKeySelector, s conversion.Scope) error { - return autoConvert_v1_SecretKeySelector_To_api_SecretKeySelector(in, out, s) -} - -func autoConvert_api_SecretKeySelector_To_v1_SecretKeySelector(in *api.SecretKeySelector, out *SecretKeySelector, s conversion.Scope) error { - if err := Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Key = in.Key - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_SecretKeySelector_To_v1_SecretKeySelector is an autogenerated conversion function. -func Convert_api_SecretKeySelector_To_v1_SecretKeySelector(in *api.SecretKeySelector, out *SecretKeySelector, s conversion.Scope) error { - return autoConvert_api_SecretKeySelector_To_v1_SecretKeySelector(in, out, s) -} - -func autoConvert_v1_SecretList_To_api_SecretList(in *SecretList, out *api.SecretList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]api.Secret, len(*in)) - for i := range *in { - if err := Convert_v1_Secret_To_api_Secret(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -// Convert_v1_SecretList_To_api_SecretList is an autogenerated conversion function. -func Convert_v1_SecretList_To_api_SecretList(in *SecretList, out *api.SecretList, s conversion.Scope) error { - return autoConvert_v1_SecretList_To_api_SecretList(in, out, s) -} - -func autoConvert_api_SecretList_To_v1_SecretList(in *api.SecretList, out *SecretList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Secret, len(*in)) - for i := range *in { - if err := Convert_api_Secret_To_v1_Secret(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = make([]Secret, 0) - } - return nil -} - -// Convert_api_SecretList_To_v1_SecretList is an autogenerated conversion function. -func Convert_api_SecretList_To_v1_SecretList(in *api.SecretList, out *SecretList, s conversion.Scope) error { - return autoConvert_api_SecretList_To_v1_SecretList(in, out, s) -} - -func autoConvert_v1_SecretProjection_To_api_SecretProjection(in *SecretProjection, out *api.SecretProjection, s conversion.Scope) error { - if err := Convert_v1_LocalObjectReference_To_api_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Items = *(*[]api.KeyToPath)(unsafe.Pointer(&in.Items)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_SecretProjection_To_api_SecretProjection is an autogenerated conversion function. -func Convert_v1_SecretProjection_To_api_SecretProjection(in *SecretProjection, out *api.SecretProjection, s conversion.Scope) error { - return autoConvert_v1_SecretProjection_To_api_SecretProjection(in, out, s) -} - -func autoConvert_api_SecretProjection_To_v1_SecretProjection(in *api.SecretProjection, out *SecretProjection, s conversion.Scope) error { - if err := Convert_api_LocalObjectReference_To_v1_LocalObjectReference(&in.LocalObjectReference, &out.LocalObjectReference, s); err != nil { - return err - } - out.Items = *(*[]KeyToPath)(unsafe.Pointer(&in.Items)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_SecretProjection_To_v1_SecretProjection is an autogenerated conversion function. -func Convert_api_SecretProjection_To_v1_SecretProjection(in *api.SecretProjection, out *SecretProjection, s conversion.Scope) error { - return autoConvert_api_SecretProjection_To_v1_SecretProjection(in, out, s) -} - -func autoConvert_v1_SecretVolumeSource_To_api_SecretVolumeSource(in *SecretVolumeSource, out *api.SecretVolumeSource, s conversion.Scope) error { - out.SecretName = in.SecretName - out.Items = *(*[]api.KeyToPath)(unsafe.Pointer(&in.Items)) - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_v1_SecretVolumeSource_To_api_SecretVolumeSource is an autogenerated conversion function. -func Convert_v1_SecretVolumeSource_To_api_SecretVolumeSource(in *SecretVolumeSource, out *api.SecretVolumeSource, s conversion.Scope) error { - return autoConvert_v1_SecretVolumeSource_To_api_SecretVolumeSource(in, out, s) -} - -func autoConvert_api_SecretVolumeSource_To_v1_SecretVolumeSource(in *api.SecretVolumeSource, out *SecretVolumeSource, s conversion.Scope) error { - out.SecretName = in.SecretName - out.Items = *(*[]KeyToPath)(unsafe.Pointer(&in.Items)) - out.DefaultMode = (*int32)(unsafe.Pointer(in.DefaultMode)) - out.Optional = (*bool)(unsafe.Pointer(in.Optional)) - return nil -} - -// Convert_api_SecretVolumeSource_To_v1_SecretVolumeSource is an autogenerated conversion function. -func Convert_api_SecretVolumeSource_To_v1_SecretVolumeSource(in *api.SecretVolumeSource, out *SecretVolumeSource, s conversion.Scope) error { - return autoConvert_api_SecretVolumeSource_To_v1_SecretVolumeSource(in, out, s) -} - -func autoConvert_v1_SecurityContext_To_api_SecurityContext(in *SecurityContext, out *api.SecurityContext, s conversion.Scope) error { - out.Capabilities = (*api.Capabilities)(unsafe.Pointer(in.Capabilities)) - out.Privileged = (*bool)(unsafe.Pointer(in.Privileged)) - out.SELinuxOptions = (*api.SELinuxOptions)(unsafe.Pointer(in.SELinuxOptions)) - out.RunAsUser = (*types.UnixUserID)(unsafe.Pointer(in.RunAsUser)) - out.RunAsNonRoot = (*bool)(unsafe.Pointer(in.RunAsNonRoot)) - out.ReadOnlyRootFilesystem = (*bool)(unsafe.Pointer(in.ReadOnlyRootFilesystem)) - return nil -} - -// Convert_v1_SecurityContext_To_api_SecurityContext is an autogenerated conversion function. -func Convert_v1_SecurityContext_To_api_SecurityContext(in *SecurityContext, out *api.SecurityContext, s conversion.Scope) error { - return autoConvert_v1_SecurityContext_To_api_SecurityContext(in, out, s) -} - -func autoConvert_api_SecurityContext_To_v1_SecurityContext(in *api.SecurityContext, out *SecurityContext, s conversion.Scope) error { - out.Capabilities = (*Capabilities)(unsafe.Pointer(in.Capabilities)) - out.Privileged = (*bool)(unsafe.Pointer(in.Privileged)) - out.SELinuxOptions = (*SELinuxOptions)(unsafe.Pointer(in.SELinuxOptions)) - out.RunAsUser = (*types.UnixUserID)(unsafe.Pointer(in.RunAsUser)) - out.RunAsNonRoot = (*bool)(unsafe.Pointer(in.RunAsNonRoot)) - out.ReadOnlyRootFilesystem = (*bool)(unsafe.Pointer(in.ReadOnlyRootFilesystem)) - return nil -} - -// Convert_api_SecurityContext_To_v1_SecurityContext is an autogenerated conversion function. -func Convert_api_SecurityContext_To_v1_SecurityContext(in *api.SecurityContext, out *SecurityContext, s conversion.Scope) error { - return autoConvert_api_SecurityContext_To_v1_SecurityContext(in, out, s) -} - -func autoConvert_v1_SerializedReference_To_api_SerializedReference(in *SerializedReference, out *api.SerializedReference, s conversion.Scope) error { - if err := Convert_v1_ObjectReference_To_api_ObjectReference(&in.Reference, &out.Reference, s); err != nil { - return err - } - return nil -} - -// Convert_v1_SerializedReference_To_api_SerializedReference is an autogenerated conversion function. -func Convert_v1_SerializedReference_To_api_SerializedReference(in *SerializedReference, out *api.SerializedReference, s conversion.Scope) error { - return autoConvert_v1_SerializedReference_To_api_SerializedReference(in, out, s) -} - -func autoConvert_api_SerializedReference_To_v1_SerializedReference(in *api.SerializedReference, out *SerializedReference, s conversion.Scope) error { - if err := Convert_api_ObjectReference_To_v1_ObjectReference(&in.Reference, &out.Reference, s); err != nil { - return err - } - return nil -} - -// Convert_api_SerializedReference_To_v1_SerializedReference is an autogenerated conversion function. -func Convert_api_SerializedReference_To_v1_SerializedReference(in *api.SerializedReference, out *SerializedReference, s conversion.Scope) error { - return autoConvert_api_SerializedReference_To_v1_SerializedReference(in, out, s) -} - -func autoConvert_v1_Service_To_api_Service(in *Service, out *api.Service, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1_ServiceSpec_To_api_ServiceSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1_ServiceStatus_To_api_ServiceStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_v1_Service_To_api_Service is an autogenerated conversion function. -func Convert_v1_Service_To_api_Service(in *Service, out *api.Service, s conversion.Scope) error { - return autoConvert_v1_Service_To_api_Service(in, out, s) -} - -func autoConvert_api_Service_To_v1_Service(in *api.Service, out *Service, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_api_ServiceSpec_To_v1_ServiceSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_api_ServiceStatus_To_v1_ServiceStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -// Convert_api_Service_To_v1_Service is an autogenerated conversion function. -func Convert_api_Service_To_v1_Service(in *api.Service, out *Service, s conversion.Scope) error { - return autoConvert_api_Service_To_v1_Service(in, out, s) -} - -func autoConvert_v1_ServiceAccount_To_api_ServiceAccount(in *ServiceAccount, out *api.ServiceAccount, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Secrets = *(*[]api.ObjectReference)(unsafe.Pointer(&in.Secrets)) - out.ImagePullSecrets = *(*[]api.LocalObjectReference)(unsafe.Pointer(&in.ImagePullSecrets)) - out.AutomountServiceAccountToken = (*bool)(unsafe.Pointer(in.AutomountServiceAccountToken)) - return nil -} - -// Convert_v1_ServiceAccount_To_api_ServiceAccount is an autogenerated conversion function. -func Convert_v1_ServiceAccount_To_api_ServiceAccount(in *ServiceAccount, out *api.ServiceAccount, s conversion.Scope) error { - return autoConvert_v1_ServiceAccount_To_api_ServiceAccount(in, out, s) -} - -func autoConvert_api_ServiceAccount_To_v1_ServiceAccount(in *api.ServiceAccount, out *ServiceAccount, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - out.Secrets = *(*[]ObjectReference)(unsafe.Pointer(&in.Secrets)) - out.ImagePullSecrets = *(*[]LocalObjectReference)(unsafe.Pointer(&in.ImagePullSecrets)) - out.AutomountServiceAccountToken = (*bool)(unsafe.Pointer(in.AutomountServiceAccountToken)) - return nil -} - -// Convert_api_ServiceAccount_To_v1_ServiceAccount is an autogenerated conversion function. -func Convert_api_ServiceAccount_To_v1_ServiceAccount(in *api.ServiceAccount, out *ServiceAccount, s conversion.Scope) error { - return autoConvert_api_ServiceAccount_To_v1_ServiceAccount(in, out, s) -} - -func autoConvert_v1_ServiceAccountList_To_api_ServiceAccountList(in *ServiceAccountList, out *api.ServiceAccountList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - out.Items = *(*[]api.ServiceAccount)(unsafe.Pointer(&in.Items)) - return nil -} - -// Convert_v1_ServiceAccountList_To_api_ServiceAccountList is an autogenerated conversion function. -func Convert_v1_ServiceAccountList_To_api_ServiceAccountList(in *ServiceAccountList, out *api.ServiceAccountList, s conversion.Scope) error { - return autoConvert_v1_ServiceAccountList_To_api_ServiceAccountList(in, out, s) -} - -func autoConvert_api_ServiceAccountList_To_v1_ServiceAccountList(in *api.ServiceAccountList, out *ServiceAccountList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items == nil { - out.Items = make([]ServiceAccount, 0) - } else { - out.Items = *(*[]ServiceAccount)(unsafe.Pointer(&in.Items)) - } - return nil -} - -// Convert_api_ServiceAccountList_To_v1_ServiceAccountList is an autogenerated conversion function. -func Convert_api_ServiceAccountList_To_v1_ServiceAccountList(in *api.ServiceAccountList, out *ServiceAccountList, s conversion.Scope) error { - return autoConvert_api_ServiceAccountList_To_v1_ServiceAccountList(in, out, s) -} - -func autoConvert_v1_ServiceList_To_api_ServiceList(in *ServiceList, out *api.ServiceList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]api.Service, len(*in)) - for i := range *in { - if err := Convert_v1_Service_To_api_Service(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -// Convert_v1_ServiceList_To_api_ServiceList is an autogenerated conversion function. -func Convert_v1_ServiceList_To_api_ServiceList(in *ServiceList, out *api.ServiceList, s conversion.Scope) error { - return autoConvert_v1_ServiceList_To_api_ServiceList(in, out, s) -} - -func autoConvert_api_ServiceList_To_v1_ServiceList(in *api.ServiceList, out *ServiceList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Service, len(*in)) - for i := range *in { - if err := Convert_api_Service_To_v1_Service(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = make([]Service, 0) - } - return nil -} - -// Convert_api_ServiceList_To_v1_ServiceList is an autogenerated conversion function. -func Convert_api_ServiceList_To_v1_ServiceList(in *api.ServiceList, out *ServiceList, s conversion.Scope) error { - return autoConvert_api_ServiceList_To_v1_ServiceList(in, out, s) -} - -func autoConvert_v1_ServicePort_To_api_ServicePort(in *ServicePort, out *api.ServicePort, s conversion.Scope) error { - out.Name = in.Name - out.Protocol = api.Protocol(in.Protocol) - out.Port = in.Port - out.TargetPort = in.TargetPort - out.NodePort = in.NodePort - return nil -} - -// Convert_v1_ServicePort_To_api_ServicePort is an autogenerated conversion function. -func Convert_v1_ServicePort_To_api_ServicePort(in *ServicePort, out *api.ServicePort, s conversion.Scope) error { - return autoConvert_v1_ServicePort_To_api_ServicePort(in, out, s) -} - -func autoConvert_api_ServicePort_To_v1_ServicePort(in *api.ServicePort, out *ServicePort, s conversion.Scope) error { - out.Name = in.Name - out.Protocol = Protocol(in.Protocol) - out.Port = in.Port - out.TargetPort = in.TargetPort - out.NodePort = in.NodePort - return nil -} - -// Convert_api_ServicePort_To_v1_ServicePort is an autogenerated conversion function. -func Convert_api_ServicePort_To_v1_ServicePort(in *api.ServicePort, out *ServicePort, s conversion.Scope) error { - return autoConvert_api_ServicePort_To_v1_ServicePort(in, out, s) -} - -func autoConvert_v1_ServiceProxyOptions_To_api_ServiceProxyOptions(in *ServiceProxyOptions, out *api.ServiceProxyOptions, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_v1_ServiceProxyOptions_To_api_ServiceProxyOptions is an autogenerated conversion function. -func Convert_v1_ServiceProxyOptions_To_api_ServiceProxyOptions(in *ServiceProxyOptions, out *api.ServiceProxyOptions, s conversion.Scope) error { - return autoConvert_v1_ServiceProxyOptions_To_api_ServiceProxyOptions(in, out, s) -} - -func autoConvert_api_ServiceProxyOptions_To_v1_ServiceProxyOptions(in *api.ServiceProxyOptions, out *ServiceProxyOptions, s conversion.Scope) error { - out.Path = in.Path - return nil -} - -// Convert_api_ServiceProxyOptions_To_v1_ServiceProxyOptions is an autogenerated conversion function. -func Convert_api_ServiceProxyOptions_To_v1_ServiceProxyOptions(in *api.ServiceProxyOptions, out *ServiceProxyOptions, s conversion.Scope) error { - return autoConvert_api_ServiceProxyOptions_To_v1_ServiceProxyOptions(in, out, s) -} - -func autoConvert_v1_ServiceSpec_To_api_ServiceSpec(in *ServiceSpec, out *api.ServiceSpec, s conversion.Scope) error { - out.Ports = *(*[]api.ServicePort)(unsafe.Pointer(&in.Ports)) - out.Selector = *(*map[string]string)(unsafe.Pointer(&in.Selector)) - out.ClusterIP = in.ClusterIP - out.Type = api.ServiceType(in.Type) - out.ExternalIPs = *(*[]string)(unsafe.Pointer(&in.ExternalIPs)) - out.SessionAffinity = api.ServiceAffinity(in.SessionAffinity) - out.LoadBalancerIP = in.LoadBalancerIP - out.LoadBalancerSourceRanges = *(*[]string)(unsafe.Pointer(&in.LoadBalancerSourceRanges)) - out.ExternalName = in.ExternalName - out.ExternalTrafficPolicy = api.ServiceExternalTrafficPolicyType(in.ExternalTrafficPolicy) - out.HealthCheckNodePort = in.HealthCheckNodePort - return nil -} - -// Convert_v1_ServiceSpec_To_api_ServiceSpec is an autogenerated conversion function. -func Convert_v1_ServiceSpec_To_api_ServiceSpec(in *ServiceSpec, out *api.ServiceSpec, s conversion.Scope) error { - return autoConvert_v1_ServiceSpec_To_api_ServiceSpec(in, out, s) -} - -func autoConvert_api_ServiceSpec_To_v1_ServiceSpec(in *api.ServiceSpec, out *ServiceSpec, s conversion.Scope) error { - out.Type = ServiceType(in.Type) - out.Ports = *(*[]ServicePort)(unsafe.Pointer(&in.Ports)) - out.Selector = *(*map[string]string)(unsafe.Pointer(&in.Selector)) - out.ClusterIP = in.ClusterIP - out.ExternalName = in.ExternalName - out.ExternalIPs = *(*[]string)(unsafe.Pointer(&in.ExternalIPs)) - out.LoadBalancerIP = in.LoadBalancerIP - out.SessionAffinity = ServiceAffinity(in.SessionAffinity) - out.LoadBalancerSourceRanges = *(*[]string)(unsafe.Pointer(&in.LoadBalancerSourceRanges)) - out.ExternalTrafficPolicy = ServiceExternalTrafficPolicyType(in.ExternalTrafficPolicy) - out.HealthCheckNodePort = in.HealthCheckNodePort - return nil -} - -// Convert_api_ServiceSpec_To_v1_ServiceSpec is an autogenerated conversion function. -func Convert_api_ServiceSpec_To_v1_ServiceSpec(in *api.ServiceSpec, out *ServiceSpec, s conversion.Scope) error { - return autoConvert_api_ServiceSpec_To_v1_ServiceSpec(in, out, s) -} - -func autoConvert_v1_ServiceStatus_To_api_ServiceStatus(in *ServiceStatus, out *api.ServiceStatus, s conversion.Scope) error { - if err := Convert_v1_LoadBalancerStatus_To_api_LoadBalancerStatus(&in.LoadBalancer, &out.LoadBalancer, s); err != nil { - return err - } - return nil -} - -// Convert_v1_ServiceStatus_To_api_ServiceStatus is an autogenerated conversion function. -func Convert_v1_ServiceStatus_To_api_ServiceStatus(in *ServiceStatus, out *api.ServiceStatus, s conversion.Scope) error { - return autoConvert_v1_ServiceStatus_To_api_ServiceStatus(in, out, s) -} - -func autoConvert_api_ServiceStatus_To_v1_ServiceStatus(in *api.ServiceStatus, out *ServiceStatus, s conversion.Scope) error { - if err := Convert_api_LoadBalancerStatus_To_v1_LoadBalancerStatus(&in.LoadBalancer, &out.LoadBalancer, s); err != nil { - return err - } - return nil -} - -// Convert_api_ServiceStatus_To_v1_ServiceStatus is an autogenerated conversion function. -func Convert_api_ServiceStatus_To_v1_ServiceStatus(in *api.ServiceStatus, out *ServiceStatus, s conversion.Scope) error { - 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 - return nil -} - -// Convert_v1_Sysctl_To_api_Sysctl is an autogenerated conversion function. -func Convert_v1_Sysctl_To_api_Sysctl(in *Sysctl, out *api.Sysctl, s conversion.Scope) error { - return autoConvert_v1_Sysctl_To_api_Sysctl(in, out, s) -} - -func autoConvert_api_Sysctl_To_v1_Sysctl(in *api.Sysctl, out *Sysctl, s conversion.Scope) error { - out.Name = in.Name - out.Value = in.Value - return nil -} - -// Convert_api_Sysctl_To_v1_Sysctl is an autogenerated conversion function. -func Convert_api_Sysctl_To_v1_Sysctl(in *api.Sysctl, out *Sysctl, s conversion.Scope) error { - return autoConvert_api_Sysctl_To_v1_Sysctl(in, out, s) -} - -func autoConvert_v1_TCPSocketAction_To_api_TCPSocketAction(in *TCPSocketAction, out *api.TCPSocketAction, s conversion.Scope) error { - out.Port = in.Port - out.Host = in.Host - return nil -} - -// Convert_v1_TCPSocketAction_To_api_TCPSocketAction is an autogenerated conversion function. -func Convert_v1_TCPSocketAction_To_api_TCPSocketAction(in *TCPSocketAction, out *api.TCPSocketAction, s conversion.Scope) error { - return autoConvert_v1_TCPSocketAction_To_api_TCPSocketAction(in, out, s) -} - -func autoConvert_api_TCPSocketAction_To_v1_TCPSocketAction(in *api.TCPSocketAction, out *TCPSocketAction, s conversion.Scope) error { - out.Port = in.Port - out.Host = in.Host - return nil -} - -// Convert_api_TCPSocketAction_To_v1_TCPSocketAction is an autogenerated conversion function. -func Convert_api_TCPSocketAction_To_v1_TCPSocketAction(in *api.TCPSocketAction, out *TCPSocketAction, s conversion.Scope) error { - return autoConvert_api_TCPSocketAction_To_v1_TCPSocketAction(in, out, s) -} - -func autoConvert_v1_Taint_To_api_Taint(in *Taint, out *api.Taint, s conversion.Scope) error { - out.Key = in.Key - out.Value = in.Value - out.Effect = api.TaintEffect(in.Effect) - out.TimeAdded = in.TimeAdded - return nil -} - -// Convert_v1_Taint_To_api_Taint is an autogenerated conversion function. -func Convert_v1_Taint_To_api_Taint(in *Taint, out *api.Taint, s conversion.Scope) error { - return autoConvert_v1_Taint_To_api_Taint(in, out, s) -} - -func autoConvert_api_Taint_To_v1_Taint(in *api.Taint, out *Taint, s conversion.Scope) error { - out.Key = in.Key - out.Value = in.Value - out.Effect = TaintEffect(in.Effect) - out.TimeAdded = in.TimeAdded - return nil -} - -// Convert_api_Taint_To_v1_Taint is an autogenerated conversion function. -func Convert_api_Taint_To_v1_Taint(in *api.Taint, out *Taint, s conversion.Scope) error { - return autoConvert_api_Taint_To_v1_Taint(in, out, s) -} - -func autoConvert_v1_Toleration_To_api_Toleration(in *Toleration, out *api.Toleration, s conversion.Scope) error { - out.Key = in.Key - out.Operator = api.TolerationOperator(in.Operator) - out.Value = in.Value - out.Effect = api.TaintEffect(in.Effect) - out.TolerationSeconds = (*int64)(unsafe.Pointer(in.TolerationSeconds)) - return nil -} - -// Convert_v1_Toleration_To_api_Toleration is an autogenerated conversion function. -func Convert_v1_Toleration_To_api_Toleration(in *Toleration, out *api.Toleration, s conversion.Scope) error { - return autoConvert_v1_Toleration_To_api_Toleration(in, out, s) -} - -func autoConvert_api_Toleration_To_v1_Toleration(in *api.Toleration, out *Toleration, s conversion.Scope) error { - out.Key = in.Key - out.Operator = TolerationOperator(in.Operator) - out.Value = in.Value - out.Effect = TaintEffect(in.Effect) - out.TolerationSeconds = (*int64)(unsafe.Pointer(in.TolerationSeconds)) - return nil -} - -// Convert_api_Toleration_To_v1_Toleration is an autogenerated conversion function. -func Convert_api_Toleration_To_v1_Toleration(in *api.Toleration, out *Toleration, s conversion.Scope) error { - return autoConvert_api_Toleration_To_v1_Toleration(in, out, s) -} - -func autoConvert_v1_Volume_To_api_Volume(in *Volume, out *api.Volume, s conversion.Scope) error { - out.Name = in.Name - if err := Convert_v1_VolumeSource_To_api_VolumeSource(&in.VolumeSource, &out.VolumeSource, s); err != nil { - return err - } - return nil -} - -// Convert_v1_Volume_To_api_Volume is an autogenerated conversion function. -func Convert_v1_Volume_To_api_Volume(in *Volume, out *api.Volume, s conversion.Scope) error { - return autoConvert_v1_Volume_To_api_Volume(in, out, s) -} - -func autoConvert_api_Volume_To_v1_Volume(in *api.Volume, out *Volume, s conversion.Scope) error { - out.Name = in.Name - if err := Convert_api_VolumeSource_To_v1_VolumeSource(&in.VolumeSource, &out.VolumeSource, s); err != nil { - return err - } - return nil -} - -// Convert_api_Volume_To_v1_Volume is an autogenerated conversion function. -func Convert_api_Volume_To_v1_Volume(in *api.Volume, out *Volume, s conversion.Scope) error { - return autoConvert_api_Volume_To_v1_Volume(in, out, s) -} - -func autoConvert_v1_VolumeMount_To_api_VolumeMount(in *VolumeMount, out *api.VolumeMount, s conversion.Scope) error { - out.Name = in.Name - out.ReadOnly = in.ReadOnly - out.MountPath = in.MountPath - out.SubPath = in.SubPath - return nil -} - -// Convert_v1_VolumeMount_To_api_VolumeMount is an autogenerated conversion function. -func Convert_v1_VolumeMount_To_api_VolumeMount(in *VolumeMount, out *api.VolumeMount, s conversion.Scope) error { - return autoConvert_v1_VolumeMount_To_api_VolumeMount(in, out, s) -} - -func autoConvert_api_VolumeMount_To_v1_VolumeMount(in *api.VolumeMount, out *VolumeMount, s conversion.Scope) error { - out.Name = in.Name - out.ReadOnly = in.ReadOnly - out.MountPath = in.MountPath - out.SubPath = in.SubPath - return nil -} - -// Convert_api_VolumeMount_To_v1_VolumeMount is an autogenerated conversion function. -func Convert_api_VolumeMount_To_v1_VolumeMount(in *api.VolumeMount, out *VolumeMount, s conversion.Scope) error { - return autoConvert_api_VolumeMount_To_v1_VolumeMount(in, out, s) -} - -func autoConvert_v1_VolumeProjection_To_api_VolumeProjection(in *VolumeProjection, out *api.VolumeProjection, s conversion.Scope) error { - out.Secret = (*api.SecretProjection)(unsafe.Pointer(in.Secret)) - out.DownwardAPI = (*api.DownwardAPIProjection)(unsafe.Pointer(in.DownwardAPI)) - out.ConfigMap = (*api.ConfigMapProjection)(unsafe.Pointer(in.ConfigMap)) - return nil -} - -// Convert_v1_VolumeProjection_To_api_VolumeProjection is an autogenerated conversion function. -func Convert_v1_VolumeProjection_To_api_VolumeProjection(in *VolumeProjection, out *api.VolumeProjection, s conversion.Scope) error { - return autoConvert_v1_VolumeProjection_To_api_VolumeProjection(in, out, s) -} - -func autoConvert_api_VolumeProjection_To_v1_VolumeProjection(in *api.VolumeProjection, out *VolumeProjection, s conversion.Scope) error { - out.Secret = (*SecretProjection)(unsafe.Pointer(in.Secret)) - out.DownwardAPI = (*DownwardAPIProjection)(unsafe.Pointer(in.DownwardAPI)) - out.ConfigMap = (*ConfigMapProjection)(unsafe.Pointer(in.ConfigMap)) - return nil -} - -// Convert_api_VolumeProjection_To_v1_VolumeProjection is an autogenerated conversion function. -func Convert_api_VolumeProjection_To_v1_VolumeProjection(in *api.VolumeProjection, out *VolumeProjection, s conversion.Scope) error { - return autoConvert_api_VolumeProjection_To_v1_VolumeProjection(in, out, s) -} - -func autoConvert_v1_VolumeSource_To_api_VolumeSource(in *VolumeSource, out *api.VolumeSource, s conversion.Scope) error { - out.HostPath = (*api.HostPathVolumeSource)(unsafe.Pointer(in.HostPath)) - out.EmptyDir = (*api.EmptyDirVolumeSource)(unsafe.Pointer(in.EmptyDir)) - out.GCEPersistentDisk = (*api.GCEPersistentDiskVolumeSource)(unsafe.Pointer(in.GCEPersistentDisk)) - out.AWSElasticBlockStore = (*api.AWSElasticBlockStoreVolumeSource)(unsafe.Pointer(in.AWSElasticBlockStore)) - out.GitRepo = (*api.GitRepoVolumeSource)(unsafe.Pointer(in.GitRepo)) - out.Secret = (*api.SecretVolumeSource)(unsafe.Pointer(in.Secret)) - out.NFS = (*api.NFSVolumeSource)(unsafe.Pointer(in.NFS)) - out.ISCSI = (*api.ISCSIVolumeSource)(unsafe.Pointer(in.ISCSI)) - out.Glusterfs = (*api.GlusterfsVolumeSource)(unsafe.Pointer(in.Glusterfs)) - out.PersistentVolumeClaim = (*api.PersistentVolumeClaimVolumeSource)(unsafe.Pointer(in.PersistentVolumeClaim)) - out.RBD = (*api.RBDVolumeSource)(unsafe.Pointer(in.RBD)) - out.FlexVolume = (*api.FlexVolumeSource)(unsafe.Pointer(in.FlexVolume)) - out.Cinder = (*api.CinderVolumeSource)(unsafe.Pointer(in.Cinder)) - out.CephFS = (*api.CephFSVolumeSource)(unsafe.Pointer(in.CephFS)) - out.Flocker = (*api.FlockerVolumeSource)(unsafe.Pointer(in.Flocker)) - out.DownwardAPI = (*api.DownwardAPIVolumeSource)(unsafe.Pointer(in.DownwardAPI)) - out.FC = (*api.FCVolumeSource)(unsafe.Pointer(in.FC)) - out.AzureFile = (*api.AzureFileVolumeSource)(unsafe.Pointer(in.AzureFile)) - out.ConfigMap = (*api.ConfigMapVolumeSource)(unsafe.Pointer(in.ConfigMap)) - out.VsphereVolume = (*api.VsphereVirtualDiskVolumeSource)(unsafe.Pointer(in.VsphereVolume)) - out.Quobyte = (*api.QuobyteVolumeSource)(unsafe.Pointer(in.Quobyte)) - out.AzureDisk = (*api.AzureDiskVolumeSource)(unsafe.Pointer(in.AzureDisk)) - out.PhotonPersistentDisk = (*api.PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) - 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 -} - -// Convert_v1_VolumeSource_To_api_VolumeSource is an autogenerated conversion function. -func Convert_v1_VolumeSource_To_api_VolumeSource(in *VolumeSource, out *api.VolumeSource, s conversion.Scope) error { - return autoConvert_v1_VolumeSource_To_api_VolumeSource(in, out, s) -} - -func autoConvert_api_VolumeSource_To_v1_VolumeSource(in *api.VolumeSource, out *VolumeSource, s conversion.Scope) error { - out.HostPath = (*HostPathVolumeSource)(unsafe.Pointer(in.HostPath)) - out.EmptyDir = (*EmptyDirVolumeSource)(unsafe.Pointer(in.EmptyDir)) - out.GCEPersistentDisk = (*GCEPersistentDiskVolumeSource)(unsafe.Pointer(in.GCEPersistentDisk)) - out.AWSElasticBlockStore = (*AWSElasticBlockStoreVolumeSource)(unsafe.Pointer(in.AWSElasticBlockStore)) - out.GitRepo = (*GitRepoVolumeSource)(unsafe.Pointer(in.GitRepo)) - out.Secret = (*SecretVolumeSource)(unsafe.Pointer(in.Secret)) - out.NFS = (*NFSVolumeSource)(unsafe.Pointer(in.NFS)) - out.ISCSI = (*ISCSIVolumeSource)(unsafe.Pointer(in.ISCSI)) - out.Glusterfs = (*GlusterfsVolumeSource)(unsafe.Pointer(in.Glusterfs)) - out.PersistentVolumeClaim = (*PersistentVolumeClaimVolumeSource)(unsafe.Pointer(in.PersistentVolumeClaim)) - out.RBD = (*RBDVolumeSource)(unsafe.Pointer(in.RBD)) - out.Quobyte = (*QuobyteVolumeSource)(unsafe.Pointer(in.Quobyte)) - out.FlexVolume = (*FlexVolumeSource)(unsafe.Pointer(in.FlexVolume)) - out.Cinder = (*CinderVolumeSource)(unsafe.Pointer(in.Cinder)) - out.CephFS = (*CephFSVolumeSource)(unsafe.Pointer(in.CephFS)) - out.Flocker = (*FlockerVolumeSource)(unsafe.Pointer(in.Flocker)) - out.DownwardAPI = (*DownwardAPIVolumeSource)(unsafe.Pointer(in.DownwardAPI)) - out.FC = (*FCVolumeSource)(unsafe.Pointer(in.FC)) - out.AzureFile = (*AzureFileVolumeSource)(unsafe.Pointer(in.AzureFile)) - out.ConfigMap = (*ConfigMapVolumeSource)(unsafe.Pointer(in.ConfigMap)) - out.VsphereVolume = (*VsphereVirtualDiskVolumeSource)(unsafe.Pointer(in.VsphereVolume)) - out.AzureDisk = (*AzureDiskVolumeSource)(unsafe.Pointer(in.AzureDisk)) - out.PhotonPersistentDisk = (*PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) - 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 -} - -// Convert_api_VolumeSource_To_v1_VolumeSource is an autogenerated conversion function. -func Convert_api_VolumeSource_To_v1_VolumeSource(in *api.VolumeSource, out *VolumeSource, s conversion.Scope) error { - return autoConvert_api_VolumeSource_To_v1_VolumeSource(in, out, s) -} - -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 -} - -// Convert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSource is an autogenerated conversion function. -func Convert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSource(in *VsphereVirtualDiskVolumeSource, out *api.VsphereVirtualDiskVolumeSource, s conversion.Scope) error { - return autoConvert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSource(in, out, s) -} - -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 -} - -// Convert_api_VsphereVirtualDiskVolumeSource_To_v1_VsphereVirtualDiskVolumeSource is an autogenerated conversion function. -func Convert_api_VsphereVirtualDiskVolumeSource_To_v1_VsphereVirtualDiskVolumeSource(in *api.VsphereVirtualDiskVolumeSource, out *VsphereVirtualDiskVolumeSource, s conversion.Scope) error { - return autoConvert_api_VsphereVirtualDiskVolumeSource_To_v1_VsphereVirtualDiskVolumeSource(in, out, s) -} - -func autoConvert_v1_WeightedPodAffinityTerm_To_api_WeightedPodAffinityTerm(in *WeightedPodAffinityTerm, out *api.WeightedPodAffinityTerm, s conversion.Scope) error { - out.Weight = in.Weight - if err := Convert_v1_PodAffinityTerm_To_api_PodAffinityTerm(&in.PodAffinityTerm, &out.PodAffinityTerm, s); err != nil { - return err - } - return nil -} - -// Convert_v1_WeightedPodAffinityTerm_To_api_WeightedPodAffinityTerm is an autogenerated conversion function. -func Convert_v1_WeightedPodAffinityTerm_To_api_WeightedPodAffinityTerm(in *WeightedPodAffinityTerm, out *api.WeightedPodAffinityTerm, s conversion.Scope) error { - return autoConvert_v1_WeightedPodAffinityTerm_To_api_WeightedPodAffinityTerm(in, out, s) -} - -func autoConvert_api_WeightedPodAffinityTerm_To_v1_WeightedPodAffinityTerm(in *api.WeightedPodAffinityTerm, out *WeightedPodAffinityTerm, s conversion.Scope) error { - out.Weight = in.Weight - if err := Convert_api_PodAffinityTerm_To_v1_PodAffinityTerm(&in.PodAffinityTerm, &out.PodAffinityTerm, s); err != nil { - return err - } - return nil -} - -// Convert_api_WeightedPodAffinityTerm_To_v1_WeightedPodAffinityTerm is an autogenerated conversion function. -func Convert_api_WeightedPodAffinityTerm_To_v1_WeightedPodAffinityTerm(in *api.WeightedPodAffinityTerm, out *WeightedPodAffinityTerm, s conversion.Scope) error { - return autoConvert_api_WeightedPodAffinityTerm_To_v1_WeightedPodAffinityTerm(in, out, s) -} 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 deleted file mode 100644 index 38ee730eb..000000000 --- a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.deepcopy.go +++ /dev/null @@ -1,3770 +0,0 @@ -// +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" - types "k8s.io/apimachinery/pkg/types" - 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_AWSElasticBlockStoreVolumeSource, InType: reflect.TypeOf(&AWSElasticBlockStoreVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Affinity, InType: reflect.TypeOf(&Affinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_AttachedVolume, InType: reflect.TypeOf(&AttachedVolume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_AvoidPods, InType: reflect.TypeOf(&AvoidPods{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_AzureDiskVolumeSource, InType: reflect.TypeOf(&AzureDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_AzureFileVolumeSource, InType: reflect.TypeOf(&AzureFileVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Binding, InType: reflect.TypeOf(&Binding{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Capabilities, InType: reflect.TypeOf(&Capabilities{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_CephFSVolumeSource, InType: reflect.TypeOf(&CephFSVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_CinderVolumeSource, InType: reflect.TypeOf(&CinderVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ComponentCondition, InType: reflect.TypeOf(&ComponentCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ComponentStatus, InType: reflect.TypeOf(&ComponentStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ComponentStatusList, InType: reflect.TypeOf(&ComponentStatusList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ConfigMap, InType: reflect.TypeOf(&ConfigMap{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ConfigMapEnvSource, InType: reflect.TypeOf(&ConfigMapEnvSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ConfigMapKeySelector, InType: reflect.TypeOf(&ConfigMapKeySelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ConfigMapList, InType: reflect.TypeOf(&ConfigMapList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ConfigMapProjection, InType: reflect.TypeOf(&ConfigMapProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ConfigMapVolumeSource, InType: reflect.TypeOf(&ConfigMapVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Container, InType: reflect.TypeOf(&Container{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ContainerImage, InType: reflect.TypeOf(&ContainerImage{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ContainerPort, InType: reflect.TypeOf(&ContainerPort{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ContainerState, InType: reflect.TypeOf(&ContainerState{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ContainerStateRunning, InType: reflect.TypeOf(&ContainerStateRunning{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ContainerStateTerminated, InType: reflect.TypeOf(&ContainerStateTerminated{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ContainerStateWaiting, InType: reflect.TypeOf(&ContainerStateWaiting{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ContainerStatus, InType: reflect.TypeOf(&ContainerStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_DaemonEndpoint, InType: reflect.TypeOf(&DaemonEndpoint{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_DeleteOptions, InType: reflect.TypeOf(&DeleteOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_DownwardAPIProjection, InType: reflect.TypeOf(&DownwardAPIProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_DownwardAPIVolumeFile, InType: reflect.TypeOf(&DownwardAPIVolumeFile{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_DownwardAPIVolumeSource, InType: reflect.TypeOf(&DownwardAPIVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EmptyDirVolumeSource, InType: reflect.TypeOf(&EmptyDirVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EndpointAddress, InType: reflect.TypeOf(&EndpointAddress{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EndpointPort, InType: reflect.TypeOf(&EndpointPort{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EndpointSubset, InType: reflect.TypeOf(&EndpointSubset{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Endpoints, InType: reflect.TypeOf(&Endpoints{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EndpointsList, InType: reflect.TypeOf(&EndpointsList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EnvFromSource, InType: reflect.TypeOf(&EnvFromSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EnvVar, InType: reflect.TypeOf(&EnvVar{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EnvVarSource, InType: reflect.TypeOf(&EnvVarSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Event, InType: reflect.TypeOf(&Event{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EventList, InType: reflect.TypeOf(&EventList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_EventSource, InType: reflect.TypeOf(&EventSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ExecAction, InType: reflect.TypeOf(&ExecAction{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_FCVolumeSource, InType: reflect.TypeOf(&FCVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_FlexVolumeSource, InType: reflect.TypeOf(&FlexVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_FlockerVolumeSource, InType: reflect.TypeOf(&FlockerVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_GCEPersistentDiskVolumeSource, InType: reflect.TypeOf(&GCEPersistentDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_GitRepoVolumeSource, InType: reflect.TypeOf(&GitRepoVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_GlusterfsVolumeSource, InType: reflect.TypeOf(&GlusterfsVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HTTPGetAction, InType: reflect.TypeOf(&HTTPGetAction{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HTTPHeader, InType: reflect.TypeOf(&HTTPHeader{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Handler, InType: reflect.TypeOf(&Handler{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HostAlias, InType: reflect.TypeOf(&HostAlias{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HostPathVolumeSource, InType: reflect.TypeOf(&HostPathVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ISCSIVolumeSource, InType: reflect.TypeOf(&ISCSIVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_KeyToPath, InType: reflect.TypeOf(&KeyToPath{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Lifecycle, InType: reflect.TypeOf(&Lifecycle{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LimitRange, InType: reflect.TypeOf(&LimitRange{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LimitRangeItem, InType: reflect.TypeOf(&LimitRangeItem{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LimitRangeList, InType: reflect.TypeOf(&LimitRangeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LimitRangeSpec, InType: reflect.TypeOf(&LimitRangeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_List, InType: reflect.TypeOf(&List{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ListOptions, InType: reflect.TypeOf(&ListOptions{})}, - 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{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NamespaceSpec, InType: reflect.TypeOf(&NamespaceSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NamespaceStatus, InType: reflect.TypeOf(&NamespaceStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Node, InType: reflect.TypeOf(&Node{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeAddress, InType: reflect.TypeOf(&NodeAddress{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeAffinity, InType: reflect.TypeOf(&NodeAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeCondition, InType: reflect.TypeOf(&NodeCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeDaemonEndpoints, InType: reflect.TypeOf(&NodeDaemonEndpoints{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeList, InType: reflect.TypeOf(&NodeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeProxyOptions, InType: reflect.TypeOf(&NodeProxyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeResources, InType: reflect.TypeOf(&NodeResources{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeSelector, InType: reflect.TypeOf(&NodeSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeSelectorRequirement, InType: reflect.TypeOf(&NodeSelectorRequirement{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeSelectorTerm, InType: reflect.TypeOf(&NodeSelectorTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeSpec, InType: reflect.TypeOf(&NodeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeStatus, InType: reflect.TypeOf(&NodeStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NodeSystemInfo, InType: reflect.TypeOf(&NodeSystemInfo{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ObjectFieldSelector, InType: reflect.TypeOf(&ObjectFieldSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ObjectMeta, InType: reflect.TypeOf(&ObjectMeta{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ObjectReference, InType: reflect.TypeOf(&ObjectReference{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolume, InType: reflect.TypeOf(&PersistentVolume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeClaim, InType: reflect.TypeOf(&PersistentVolumeClaim{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeClaimList, InType: reflect.TypeOf(&PersistentVolumeClaimList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeClaimSpec, InType: reflect.TypeOf(&PersistentVolumeClaimSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeClaimStatus, InType: reflect.TypeOf(&PersistentVolumeClaimStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeClaimVolumeSource, InType: reflect.TypeOf(&PersistentVolumeClaimVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeList, InType: reflect.TypeOf(&PersistentVolumeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeSource, InType: reflect.TypeOf(&PersistentVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeSpec, InType: reflect.TypeOf(&PersistentVolumeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PersistentVolumeStatus, InType: reflect.TypeOf(&PersistentVolumeStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PhotonPersistentDiskVolumeSource, InType: reflect.TypeOf(&PhotonPersistentDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Pod, InType: reflect.TypeOf(&Pod{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodAffinity, InType: reflect.TypeOf(&PodAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodAffinityTerm, InType: reflect.TypeOf(&PodAffinityTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodAntiAffinity, InType: reflect.TypeOf(&PodAntiAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodAttachOptions, InType: reflect.TypeOf(&PodAttachOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodCondition, InType: reflect.TypeOf(&PodCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodExecOptions, InType: reflect.TypeOf(&PodExecOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodList, InType: reflect.TypeOf(&PodList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodLogOptions, InType: reflect.TypeOf(&PodLogOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodPortForwardOptions, InType: reflect.TypeOf(&PodPortForwardOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodProxyOptions, InType: reflect.TypeOf(&PodProxyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodSecurityContext, InType: reflect.TypeOf(&PodSecurityContext{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodSignature, InType: reflect.TypeOf(&PodSignature{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodSpec, InType: reflect.TypeOf(&PodSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodStatus, InType: reflect.TypeOf(&PodStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodStatusResult, InType: reflect.TypeOf(&PodStatusResult{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodTemplate, InType: reflect.TypeOf(&PodTemplate{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodTemplateList, InType: reflect.TypeOf(&PodTemplateList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodTemplateSpec, InType: reflect.TypeOf(&PodTemplateSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PortworxVolumeSource, InType: reflect.TypeOf(&PortworxVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Preconditions, InType: reflect.TypeOf(&Preconditions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PreferAvoidPodsEntry, InType: reflect.TypeOf(&PreferAvoidPodsEntry{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PreferredSchedulingTerm, InType: reflect.TypeOf(&PreferredSchedulingTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Probe, InType: reflect.TypeOf(&Probe{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ProjectedVolumeSource, InType: reflect.TypeOf(&ProjectedVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_QuobyteVolumeSource, InType: reflect.TypeOf(&QuobyteVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_RBDVolumeSource, InType: reflect.TypeOf(&RBDVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_RangeAllocation, InType: reflect.TypeOf(&RangeAllocation{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ReplicationController, InType: reflect.TypeOf(&ReplicationController{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ReplicationControllerCondition, InType: reflect.TypeOf(&ReplicationControllerCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ReplicationControllerList, InType: reflect.TypeOf(&ReplicationControllerList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ReplicationControllerSpec, InType: reflect.TypeOf(&ReplicationControllerSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ReplicationControllerStatus, InType: reflect.TypeOf(&ReplicationControllerStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceFieldSelector, InType: reflect.TypeOf(&ResourceFieldSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceQuota, InType: reflect.TypeOf(&ResourceQuota{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceQuotaList, InType: reflect.TypeOf(&ResourceQuotaList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceQuotaSpec, InType: reflect.TypeOf(&ResourceQuotaSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceQuotaStatus, InType: reflect.TypeOf(&ResourceQuotaStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceRequirements, InType: reflect.TypeOf(&ResourceRequirements{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SELinuxOptions, InType: reflect.TypeOf(&SELinuxOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ScaleIOVolumeSource, InType: reflect.TypeOf(&ScaleIOVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Secret, InType: reflect.TypeOf(&Secret{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecretEnvSource, InType: reflect.TypeOf(&SecretEnvSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecretKeySelector, InType: reflect.TypeOf(&SecretKeySelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecretList, InType: reflect.TypeOf(&SecretList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecretProjection, InType: reflect.TypeOf(&SecretProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecretVolumeSource, InType: reflect.TypeOf(&SecretVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SecurityContext, InType: reflect.TypeOf(&SecurityContext{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SerializedReference, InType: reflect.TypeOf(&SerializedReference{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Service, InType: reflect.TypeOf(&Service{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceAccount, InType: reflect.TypeOf(&ServiceAccount{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceAccountList, InType: reflect.TypeOf(&ServiceAccountList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceList, InType: reflect.TypeOf(&ServiceList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServicePort, InType: reflect.TypeOf(&ServicePort{})}, - 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{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Toleration, InType: reflect.TypeOf(&Toleration{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Volume, InType: reflect.TypeOf(&Volume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_VolumeMount, InType: reflect.TypeOf(&VolumeMount{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_VolumeProjection, InType: reflect.TypeOf(&VolumeProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_VolumeSource, InType: reflect.TypeOf(&VolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_VsphereVirtualDiskVolumeSource, InType: reflect.TypeOf(&VsphereVirtualDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_WeightedPodAffinityTerm, InType: reflect.TypeOf(&WeightedPodAffinityTerm{})}, - ) -} - -// DeepCopy_v1_AWSElasticBlockStoreVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_AWSElasticBlockStoreVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AWSElasticBlockStoreVolumeSource) - out := out.(*AWSElasticBlockStoreVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_Affinity is an autogenerated deepcopy function. -func DeepCopy_v1_Affinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Affinity) - out := out.(*Affinity) - *out = *in - if in.NodeAffinity != nil { - in, out := &in.NodeAffinity, &out.NodeAffinity - *out = new(NodeAffinity) - if err := DeepCopy_v1_NodeAffinity(*in, *out, c); err != nil { - return err - } - } - if in.PodAffinity != nil { - in, out := &in.PodAffinity, &out.PodAffinity - *out = new(PodAffinity) - if err := DeepCopy_v1_PodAffinity(*in, *out, c); err != nil { - return err - } - } - if in.PodAntiAffinity != nil { - in, out := &in.PodAntiAffinity, &out.PodAntiAffinity - *out = new(PodAntiAffinity) - if err := DeepCopy_v1_PodAntiAffinity(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_AttachedVolume is an autogenerated deepcopy function. -func DeepCopy_v1_AttachedVolume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AttachedVolume) - out := out.(*AttachedVolume) - *out = *in - return nil - } -} - -// DeepCopy_v1_AvoidPods is an autogenerated deepcopy function. -func DeepCopy_v1_AvoidPods(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AvoidPods) - out := out.(*AvoidPods) - *out = *in - if in.PreferAvoidPods != nil { - in, out := &in.PreferAvoidPods, &out.PreferAvoidPods - *out = make([]PreferAvoidPodsEntry, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PreferAvoidPodsEntry(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_AzureDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_AzureDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AzureDiskVolumeSource) - out := out.(*AzureDiskVolumeSource) - *out = *in - if in.CachingMode != nil { - in, out := &in.CachingMode, &out.CachingMode - *out = new(AzureDataDiskCachingMode) - **out = **in - } - if in.FSType != nil { - in, out := &in.FSType, &out.FSType - *out = new(string) - **out = **in - } - if in.ReadOnly != nil { - in, out := &in.ReadOnly, &out.ReadOnly - *out = new(bool) - **out = **in - } - if in.Kind != nil { - in, out := &in.Kind, &out.Kind - *out = new(AzureDataDiskKind) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_AzureFileVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_AzureFileVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AzureFileVolumeSource) - out := out.(*AzureFileVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_Binding is an autogenerated deepcopy function. -func DeepCopy_v1_Binding(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Binding) - out := out.(*Binding) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - return nil - } -} - -// DeepCopy_v1_Capabilities is an autogenerated deepcopy function. -func DeepCopy_v1_Capabilities(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Capabilities) - out := out.(*Capabilities) - *out = *in - if in.Add != nil { - in, out := &in.Add, &out.Add - *out = make([]Capability, len(*in)) - copy(*out, *in) - } - if in.Drop != nil { - in, out := &in.Drop, &out.Drop - *out = make([]Capability, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_CephFSVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_CephFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CephFSVolumeSource) - out := out.(*CephFSVolumeSource) - *out = *in - if in.Monitors != nil { - in, out := &in.Monitors, &out.Monitors - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_CinderVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_CinderVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CinderVolumeSource) - out := out.(*CinderVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_ComponentCondition is an autogenerated deepcopy function. -func DeepCopy_v1_ComponentCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentCondition) - out := out.(*ComponentCondition) - *out = *in - return nil - } -} - -// DeepCopy_v1_ComponentStatus is an autogenerated deepcopy function. -func DeepCopy_v1_ComponentStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentStatus) - out := out.(*ComponentStatus) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ComponentCondition, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_ComponentStatusList is an autogenerated deepcopy function. -func DeepCopy_v1_ComponentStatusList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentStatusList) - out := out.(*ComponentStatusList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ComponentStatus, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ComponentStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_ConfigMap is an autogenerated deepcopy function. -func DeepCopy_v1_ConfigMap(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMap) - out := out.(*ConfigMap) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - return nil - } -} - -// DeepCopy_v1_ConfigMapEnvSource is an autogenerated deepcopy function. -func DeepCopy_v1_ConfigMapEnvSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapEnvSource) - out := out.(*ConfigMapEnvSource) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_ConfigMapKeySelector is an autogenerated deepcopy function. -func DeepCopy_v1_ConfigMapKeySelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapKeySelector) - out := out.(*ConfigMapKeySelector) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_ConfigMapList is an autogenerated deepcopy function. -func DeepCopy_v1_ConfigMapList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapList) - out := out.(*ConfigMapList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ConfigMap, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ConfigMap(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_ConfigMapProjection is an autogenerated deepcopy function. -func DeepCopy_v1_ConfigMapProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapProjection) - out := out.(*ConfigMapProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_v1_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_ConfigMapVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_ConfigMapVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapVolumeSource) - out := out.(*ConfigMapVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_v1_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_Container is an autogenerated deepcopy function. -func DeepCopy_v1_Container(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Container) - out := out.(*Container) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Args != nil { - in, out := &in.Args, &out.Args - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]ContainerPort, len(*in)) - copy(*out, *in) - } - if in.EnvFrom != nil { - in, out := &in.EnvFrom, &out.EnvFrom - *out = make([]EnvFromSource, len(*in)) - for i := range *in { - if err := DeepCopy_v1_EnvFromSource(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Env != nil { - in, out := &in.Env, &out.Env - *out = make([]EnvVar, len(*in)) - for i := range *in { - if err := DeepCopy_v1_EnvVar(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if err := DeepCopy_v1_ResourceRequirements(&in.Resources, &out.Resources, c); err != nil { - return err - } - if in.VolumeMounts != nil { - in, out := &in.VolumeMounts, &out.VolumeMounts - *out = make([]VolumeMount, len(*in)) - copy(*out, *in) - } - if in.LivenessProbe != nil { - in, out := &in.LivenessProbe, &out.LivenessProbe - *out = new(Probe) - if err := DeepCopy_v1_Probe(*in, *out, c); err != nil { - return err - } - } - if in.ReadinessProbe != nil { - in, out := &in.ReadinessProbe, &out.ReadinessProbe - *out = new(Probe) - if err := DeepCopy_v1_Probe(*in, *out, c); err != nil { - return err - } - } - if in.Lifecycle != nil { - in, out := &in.Lifecycle, &out.Lifecycle - *out = new(Lifecycle) - if err := DeepCopy_v1_Lifecycle(*in, *out, c); err != nil { - return err - } - } - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext - *out = new(SecurityContext) - if err := DeepCopy_v1_SecurityContext(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_ContainerImage is an autogenerated deepcopy function. -func DeepCopy_v1_ContainerImage(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerImage) - out := out.(*ContainerImage) - *out = *in - if in.Names != nil { - in, out := &in.Names, &out.Names - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_ContainerPort is an autogenerated deepcopy function. -func DeepCopy_v1_ContainerPort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerPort) - out := out.(*ContainerPort) - *out = *in - return nil - } -} - -// DeepCopy_v1_ContainerState is an autogenerated deepcopy function. -func DeepCopy_v1_ContainerState(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerState) - out := out.(*ContainerState) - *out = *in - if in.Waiting != nil { - in, out := &in.Waiting, &out.Waiting - *out = new(ContainerStateWaiting) - **out = **in - } - if in.Running != nil { - in, out := &in.Running, &out.Running - *out = new(ContainerStateRunning) - if err := DeepCopy_v1_ContainerStateRunning(*in, *out, c); err != nil { - return err - } - } - if in.Terminated != nil { - in, out := &in.Terminated, &out.Terminated - *out = new(ContainerStateTerminated) - if err := DeepCopy_v1_ContainerStateTerminated(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_ContainerStateRunning is an autogenerated deepcopy function. -func DeepCopy_v1_ContainerStateRunning(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateRunning) - out := out.(*ContainerStateRunning) - *out = *in - out.StartedAt = in.StartedAt.DeepCopy() - return nil - } -} - -// DeepCopy_v1_ContainerStateTerminated is an autogenerated deepcopy function. -func DeepCopy_v1_ContainerStateTerminated(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateTerminated) - out := out.(*ContainerStateTerminated) - *out = *in - out.StartedAt = in.StartedAt.DeepCopy() - out.FinishedAt = in.FinishedAt.DeepCopy() - return nil - } -} - -// DeepCopy_v1_ContainerStateWaiting is an autogenerated deepcopy function. -func DeepCopy_v1_ContainerStateWaiting(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateWaiting) - out := out.(*ContainerStateWaiting) - *out = *in - return nil - } -} - -// DeepCopy_v1_ContainerStatus is an autogenerated deepcopy function. -func DeepCopy_v1_ContainerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStatus) - out := out.(*ContainerStatus) - *out = *in - if err := DeepCopy_v1_ContainerState(&in.State, &out.State, c); err != nil { - return err - } - if err := DeepCopy_v1_ContainerState(&in.LastTerminationState, &out.LastTerminationState, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_DaemonEndpoint is an autogenerated deepcopy function. -func DeepCopy_v1_DaemonEndpoint(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DaemonEndpoint) - out := out.(*DaemonEndpoint) - *out = *in - return nil - } -} - -// DeepCopy_v1_DeleteOptions is an autogenerated deepcopy function. -func DeepCopy_v1_DeleteOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeleteOptions) - out := out.(*DeleteOptions) - *out = *in - if in.GracePeriodSeconds != nil { - in, out := &in.GracePeriodSeconds, &out.GracePeriodSeconds - *out = new(int64) - **out = **in - } - if in.Preconditions != nil { - in, out := &in.Preconditions, &out.Preconditions - *out = new(Preconditions) - if err := DeepCopy_v1_Preconditions(*in, *out, c); err != nil { - return err - } - } - if in.OrphanDependents != nil { - in, out := &in.OrphanDependents, &out.OrphanDependents - *out = new(bool) - **out = **in - } - if in.PropagationPolicy != nil { - in, out := &in.PropagationPolicy, &out.PropagationPolicy - *out = new(DeletionPropagation) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_DownwardAPIProjection is an autogenerated deepcopy function. -func DeepCopy_v1_DownwardAPIProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIProjection) - out := out.(*DownwardAPIProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DownwardAPIVolumeFile, len(*in)) - for i := range *in { - if err := DeepCopy_v1_DownwardAPIVolumeFile(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_DownwardAPIVolumeFile is an autogenerated deepcopy function. -func DeepCopy_v1_DownwardAPIVolumeFile(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIVolumeFile) - out := out.(*DownwardAPIVolumeFile) - *out = *in - if in.FieldRef != nil { - in, out := &in.FieldRef, &out.FieldRef - *out = new(ObjectFieldSelector) - **out = **in - } - if in.ResourceFieldRef != nil { - in, out := &in.ResourceFieldRef, &out.ResourceFieldRef - *out = new(ResourceFieldSelector) - if err := DeepCopy_v1_ResourceFieldSelector(*in, *out, c); err != nil { - return err - } - } - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_DownwardAPIVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_DownwardAPIVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIVolumeSource) - out := out.(*DownwardAPIVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DownwardAPIVolumeFile, len(*in)) - for i := range *in { - if err := DeepCopy_v1_DownwardAPIVolumeFile(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_EmptyDirVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_EmptyDirVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EmptyDirVolumeSource) - out := out.(*EmptyDirVolumeSource) - *out = *in - out.SizeLimit = in.SizeLimit.DeepCopy() - return nil - } -} - -// DeepCopy_v1_EndpointAddress is an autogenerated deepcopy function. -func DeepCopy_v1_EndpointAddress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointAddress) - out := out.(*EndpointAddress) - *out = *in - if in.NodeName != nil { - in, out := &in.NodeName, &out.NodeName - *out = new(string) - **out = **in - } - if in.TargetRef != nil { - in, out := &in.TargetRef, &out.TargetRef - *out = new(ObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_EndpointPort is an autogenerated deepcopy function. -func DeepCopy_v1_EndpointPort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointPort) - out := out.(*EndpointPort) - *out = *in - return nil - } -} - -// DeepCopy_v1_EndpointSubset is an autogenerated deepcopy function. -func DeepCopy_v1_EndpointSubset(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointSubset) - out := out.(*EndpointSubset) - *out = *in - if in.Addresses != nil { - in, out := &in.Addresses, &out.Addresses - *out = make([]EndpointAddress, len(*in)) - for i := range *in { - if err := DeepCopy_v1_EndpointAddress(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.NotReadyAddresses != nil { - in, out := &in.NotReadyAddresses, &out.NotReadyAddresses - *out = make([]EndpointAddress, len(*in)) - for i := range *in { - if err := DeepCopy_v1_EndpointAddress(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]EndpointPort, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_Endpoints is an autogenerated deepcopy function. -func DeepCopy_v1_Endpoints(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Endpoints) - out := out.(*Endpoints) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if in.Subsets != nil { - in, out := &in.Subsets, &out.Subsets - *out = make([]EndpointSubset, len(*in)) - for i := range *in { - if err := DeepCopy_v1_EndpointSubset(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_EndpointsList is an autogenerated deepcopy function. -func DeepCopy_v1_EndpointsList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointsList) - out := out.(*EndpointsList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Endpoints, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Endpoints(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_EnvFromSource is an autogenerated deepcopy function. -func DeepCopy_v1_EnvFromSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvFromSource) - out := out.(*EnvFromSource) - *out = *in - if in.ConfigMapRef != nil { - in, out := &in.ConfigMapRef, &out.ConfigMapRef - *out = new(ConfigMapEnvSource) - if err := DeepCopy_v1_ConfigMapEnvSource(*in, *out, c); err != nil { - return err - } - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(SecretEnvSource) - if err := DeepCopy_v1_SecretEnvSource(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_EnvVar is an autogenerated deepcopy function. -func DeepCopy_v1_EnvVar(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvVar) - out := out.(*EnvVar) - *out = *in - if in.ValueFrom != nil { - in, out := &in.ValueFrom, &out.ValueFrom - *out = new(EnvVarSource) - if err := DeepCopy_v1_EnvVarSource(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_EnvVarSource is an autogenerated deepcopy function. -func DeepCopy_v1_EnvVarSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvVarSource) - out := out.(*EnvVarSource) - *out = *in - if in.FieldRef != nil { - in, out := &in.FieldRef, &out.FieldRef - *out = new(ObjectFieldSelector) - **out = **in - } - if in.ResourceFieldRef != nil { - in, out := &in.ResourceFieldRef, &out.ResourceFieldRef - *out = new(ResourceFieldSelector) - if err := DeepCopy_v1_ResourceFieldSelector(*in, *out, c); err != nil { - return err - } - } - if in.ConfigMapKeyRef != nil { - in, out := &in.ConfigMapKeyRef, &out.ConfigMapKeyRef - *out = new(ConfigMapKeySelector) - if err := DeepCopy_v1_ConfigMapKeySelector(*in, *out, c); err != nil { - return err - } - } - if in.SecretKeyRef != nil { - in, out := &in.SecretKeyRef, &out.SecretKeyRef - *out = new(SecretKeySelector) - if err := DeepCopy_v1_SecretKeySelector(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_Event is an autogenerated deepcopy function. -func DeepCopy_v1_Event(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Event) - out := out.(*Event) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - out.FirstTimestamp = in.FirstTimestamp.DeepCopy() - out.LastTimestamp = in.LastTimestamp.DeepCopy() - return nil - } -} - -// DeepCopy_v1_EventList is an autogenerated deepcopy function. -func DeepCopy_v1_EventList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EventList) - out := out.(*EventList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Event, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Event(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_EventSource is an autogenerated deepcopy function. -func DeepCopy_v1_EventSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EventSource) - out := out.(*EventSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_ExecAction is an autogenerated deepcopy function. -func DeepCopy_v1_ExecAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ExecAction) - out := out.(*ExecAction) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_FCVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_FCVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FCVolumeSource) - out := out.(*FCVolumeSource) - *out = *in - if in.TargetWWNs != nil { - in, out := &in.TargetWWNs, &out.TargetWWNs - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_FlexVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_FlexVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FlexVolumeSource) - out := out.(*FlexVolumeSource) - *out = *in - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - if in.Options != nil { - in, out := &in.Options, &out.Options - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - return nil - } -} - -// DeepCopy_v1_FlockerVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_FlockerVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FlockerVolumeSource) - out := out.(*FlockerVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_GCEPersistentDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_GCEPersistentDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GCEPersistentDiskVolumeSource) - out := out.(*GCEPersistentDiskVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_GitRepoVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_GitRepoVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GitRepoVolumeSource) - out := out.(*GitRepoVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_GlusterfsVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_GlusterfsVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GlusterfsVolumeSource) - out := out.(*GlusterfsVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_HTTPGetAction is an autogenerated deepcopy function. -func DeepCopy_v1_HTTPGetAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPGetAction) - out := out.(*HTTPGetAction) - *out = *in - if in.HTTPHeaders != nil { - in, out := &in.HTTPHeaders, &out.HTTPHeaders - *out = make([]HTTPHeader, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_HTTPHeader is an autogenerated deepcopy function. -func DeepCopy_v1_HTTPHeader(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPHeader) - out := out.(*HTTPHeader) - *out = *in - return nil - } -} - -// DeepCopy_v1_Handler is an autogenerated deepcopy function. -func DeepCopy_v1_Handler(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Handler) - out := out.(*Handler) - *out = *in - if in.Exec != nil { - in, out := &in.Exec, &out.Exec - *out = new(ExecAction) - if err := DeepCopy_v1_ExecAction(*in, *out, c); err != nil { - return err - } - } - if in.HTTPGet != nil { - in, out := &in.HTTPGet, &out.HTTPGet - *out = new(HTTPGetAction) - if err := DeepCopy_v1_HTTPGetAction(*in, *out, c); err != nil { - return err - } - } - if in.TCPSocket != nil { - in, out := &in.TCPSocket, &out.TCPSocket - *out = new(TCPSocketAction) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_HostAlias is an autogenerated deepcopy function. -func DeepCopy_v1_HostAlias(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HostAlias) - out := out.(*HostAlias) - *out = *in - if in.Hostnames != nil { - in, out := &in.Hostnames, &out.Hostnames - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_HostPathVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_HostPathVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HostPathVolumeSource) - out := out.(*HostPathVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_ISCSIVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_ISCSIVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ISCSIVolumeSource) - out := out.(*ISCSIVolumeSource) - *out = *in - if in.Portals != nil { - in, out := &in.Portals, &out.Portals - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_KeyToPath is an autogenerated deepcopy function. -func DeepCopy_v1_KeyToPath(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*KeyToPath) - out := out.(*KeyToPath) - *out = *in - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_Lifecycle is an autogenerated deepcopy function. -func DeepCopy_v1_Lifecycle(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Lifecycle) - out := out.(*Lifecycle) - *out = *in - if in.PostStart != nil { - in, out := &in.PostStart, &out.PostStart - *out = new(Handler) - if err := DeepCopy_v1_Handler(*in, *out, c); err != nil { - return err - } - } - if in.PreStop != nil { - in, out := &in.PreStop, &out.PreStop - *out = new(Handler) - if err := DeepCopy_v1_Handler(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_LimitRange is an autogenerated deepcopy function. -func DeepCopy_v1_LimitRange(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRange) - out := out.(*LimitRange) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_LimitRangeSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_LimitRangeItem is an autogenerated deepcopy function. -func DeepCopy_v1_LimitRangeItem(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeItem) - out := out.(*LimitRangeItem) - *out = *in - if in.Max != nil { - in, out := &in.Max, &out.Max - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Min != nil { - in, out := &in.Min, &out.Min - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Default != nil { - in, out := &in.Default, &out.Default - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.DefaultRequest != nil { - in, out := &in.DefaultRequest, &out.DefaultRequest - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.MaxLimitRequestRatio != nil { - in, out := &in.MaxLimitRequestRatio, &out.MaxLimitRequestRatio - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_v1_LimitRangeList is an autogenerated deepcopy function. -func DeepCopy_v1_LimitRangeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeList) - out := out.(*LimitRangeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]LimitRange, len(*in)) - for i := range *in { - if err := DeepCopy_v1_LimitRange(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_LimitRangeSpec is an autogenerated deepcopy function. -func DeepCopy_v1_LimitRangeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeSpec) - out := out.(*LimitRangeSpec) - *out = *in - if in.Limits != nil { - in, out := &in.Limits, &out.Limits - *out = make([]LimitRangeItem, len(*in)) - for i := range *in { - if err := DeepCopy_v1_LimitRangeItem(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_List is an autogenerated deepcopy function. -func DeepCopy_v1_List(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*List) - out := out.(*List) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]runtime.RawExtension, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*runtime.RawExtension) - } - } - } - return nil - } -} - -// DeepCopy_v1_ListOptions is an autogenerated deepcopy function. -func DeepCopy_v1_ListOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ListOptions) - out := out.(*ListOptions) - *out = *in - if in.TimeoutSeconds != nil { - in, out := &in.TimeoutSeconds, &out.TimeoutSeconds - *out = new(int64) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_LoadBalancerIngress is an autogenerated deepcopy function. -func DeepCopy_v1_LoadBalancerIngress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LoadBalancerIngress) - out := out.(*LoadBalancerIngress) - *out = *in - return nil - } -} - -// DeepCopy_v1_LoadBalancerStatus is an autogenerated deepcopy function. -func DeepCopy_v1_LoadBalancerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LoadBalancerStatus) - out := out.(*LoadBalancerStatus) - *out = *in - if in.Ingress != nil { - in, out := &in.Ingress, &out.Ingress - *out = make([]LoadBalancerIngress, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_LocalObjectReference is an autogenerated deepcopy function. -func DeepCopy_v1_LocalObjectReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LocalObjectReference) - out := out.(*LocalObjectReference) - *out = *in - return nil - } -} - -// 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 { - { - in := in.(*NFSVolumeSource) - out := out.(*NFSVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_Namespace is an autogenerated deepcopy function. -func DeepCopy_v1_Namespace(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Namespace) - out := out.(*Namespace) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_NamespaceSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_NamespaceList is an autogenerated deepcopy function. -func DeepCopy_v1_NamespaceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceList) - out := out.(*NamespaceList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Namespace, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Namespace(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_NamespaceSpec is an autogenerated deepcopy function. -func DeepCopy_v1_NamespaceSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceSpec) - out := out.(*NamespaceSpec) - *out = *in - if in.Finalizers != nil { - in, out := &in.Finalizers, &out.Finalizers - *out = make([]FinalizerName, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_NamespaceStatus is an autogenerated deepcopy function. -func DeepCopy_v1_NamespaceStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceStatus) - out := out.(*NamespaceStatus) - *out = *in - return nil - } -} - -// DeepCopy_v1_Node is an autogenerated deepcopy function. -func DeepCopy_v1_Node(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Node) - out := out.(*Node) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_NodeSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1_NodeStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_NodeAddress is an autogenerated deepcopy function. -func DeepCopy_v1_NodeAddress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeAddress) - out := out.(*NodeAddress) - *out = *in - return nil - } -} - -// DeepCopy_v1_NodeAffinity is an autogenerated deepcopy function. -func DeepCopy_v1_NodeAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeAffinity) - out := out.(*NodeAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = new(NodeSelector) - if err := DeepCopy_v1_NodeSelector(*in, *out, c); err != nil { - return err - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]PreferredSchedulingTerm, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PreferredSchedulingTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_NodeCondition is an autogenerated deepcopy function. -func DeepCopy_v1_NodeCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeCondition) - out := out.(*NodeCondition) - *out = *in - out.LastHeartbeatTime = in.LastHeartbeatTime.DeepCopy() - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_v1_NodeDaemonEndpoints is an autogenerated deepcopy function. -func DeepCopy_v1_NodeDaemonEndpoints(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeDaemonEndpoints) - out := out.(*NodeDaemonEndpoints) - *out = *in - return nil - } -} - -// DeepCopy_v1_NodeList is an autogenerated deepcopy function. -func DeepCopy_v1_NodeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeList) - out := out.(*NodeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Node, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Node(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_NodeProxyOptions is an autogenerated deepcopy function. -func DeepCopy_v1_NodeProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeProxyOptions) - out := out.(*NodeProxyOptions) - *out = *in - return nil - } -} - -// DeepCopy_v1_NodeResources is an autogenerated deepcopy function. -func DeepCopy_v1_NodeResources(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeResources) - out := out.(*NodeResources) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_v1_NodeSelector is an autogenerated deepcopy function. -func DeepCopy_v1_NodeSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelector) - out := out.(*NodeSelector) - *out = *in - if in.NodeSelectorTerms != nil { - in, out := &in.NodeSelectorTerms, &out.NodeSelectorTerms - *out = make([]NodeSelectorTerm, len(*in)) - for i := range *in { - if err := DeepCopy_v1_NodeSelectorTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_NodeSelectorRequirement is an autogenerated deepcopy function. -func DeepCopy_v1_NodeSelectorRequirement(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelectorRequirement) - out := out.(*NodeSelectorRequirement) - *out = *in - if in.Values != nil { - in, out := &in.Values, &out.Values - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_NodeSelectorTerm is an autogenerated deepcopy function. -func DeepCopy_v1_NodeSelectorTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelectorTerm) - out := out.(*NodeSelectorTerm) - *out = *in - if in.MatchExpressions != nil { - in, out := &in.MatchExpressions, &out.MatchExpressions - *out = make([]NodeSelectorRequirement, len(*in)) - for i := range *in { - if err := DeepCopy_v1_NodeSelectorRequirement(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_NodeSpec is an autogenerated deepcopy function. -func DeepCopy_v1_NodeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSpec) - out := out.(*NodeSpec) - *out = *in - if in.Taints != nil { - in, out := &in.Taints, &out.Taints - *out = make([]Taint, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Taint(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_NodeStatus is an autogenerated deepcopy function. -func DeepCopy_v1_NodeStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeStatus) - out := out.(*NodeStatus) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Allocatable != nil { - in, out := &in.Allocatable, &out.Allocatable - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]NodeCondition, len(*in)) - for i := range *in { - if err := DeepCopy_v1_NodeCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Addresses != nil { - in, out := &in.Addresses, &out.Addresses - *out = make([]NodeAddress, len(*in)) - copy(*out, *in) - } - if in.Images != nil { - in, out := &in.Images, &out.Images - *out = make([]ContainerImage, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ContainerImage(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.VolumesInUse != nil { - in, out := &in.VolumesInUse, &out.VolumesInUse - *out = make([]UniqueVolumeName, len(*in)) - copy(*out, *in) - } - if in.VolumesAttached != nil { - in, out := &in.VolumesAttached, &out.VolumesAttached - *out = make([]AttachedVolume, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_NodeSystemInfo is an autogenerated deepcopy function. -func DeepCopy_v1_NodeSystemInfo(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSystemInfo) - out := out.(*NodeSystemInfo) - *out = *in - return nil - } -} - -// DeepCopy_v1_ObjectFieldSelector is an autogenerated deepcopy function. -func DeepCopy_v1_ObjectFieldSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectFieldSelector) - out := out.(*ObjectFieldSelector) - *out = *in - return nil - } -} - -// DeepCopy_v1_ObjectMeta is an autogenerated deepcopy function. -func DeepCopy_v1_ObjectMeta(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectMeta) - out := out.(*ObjectMeta) - *out = *in - out.CreationTimestamp = in.CreationTimestamp.DeepCopy() - if in.DeletionTimestamp != nil { - in, out := &in.DeletionTimestamp, &out.DeletionTimestamp - *out = new(meta_v1.Time) - **out = (*in).DeepCopy() - } - if in.DeletionGracePeriodSeconds != nil { - in, out := &in.DeletionGracePeriodSeconds, &out.DeletionGracePeriodSeconds - *out = new(int64) - **out = **in - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.Annotations != nil { - in, out := &in.Annotations, &out.Annotations - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.OwnerReferences != nil { - in, out := &in.OwnerReferences, &out.OwnerReferences - *out = make([]meta_v1.OwnerReference, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*meta_v1.OwnerReference) - } - } - } - if in.Initializers != nil { - in, out := &in.Initializers, &out.Initializers - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*meta_v1.Initializers) - } - } - if in.Finalizers != nil { - in, out := &in.Finalizers, &out.Finalizers - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_ObjectReference is an autogenerated deepcopy function. -func DeepCopy_v1_ObjectReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectReference) - out := out.(*ObjectReference) - *out = *in - return nil - } -} - -// DeepCopy_v1_PersistentVolume is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolume) - out := out.(*PersistentVolume) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_PersistentVolumeSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_PersistentVolumeClaim is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeClaim(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaim) - out := out.(*PersistentVolumeClaim) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_PersistentVolumeClaimSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1_PersistentVolumeClaimStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_PersistentVolumeClaimList is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeClaimList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimList) - out := out.(*PersistentVolumeClaimList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PersistentVolumeClaim, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PersistentVolumeClaim(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PersistentVolumeClaimSpec is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeClaimSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimSpec) - out := out.(*PersistentVolumeClaimSpec) - *out = *in - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*meta_v1.LabelSelector) - } - } - if err := DeepCopy_v1_ResourceRequirements(&in.Resources, &out.Resources, c); err != nil { - return err - } - if in.StorageClassName != nil { - in, out := &in.StorageClassName, &out.StorageClassName - *out = new(string) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_PersistentVolumeClaimStatus is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeClaimStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimStatus) - out := out.(*PersistentVolumeClaimStatus) - *out = *in - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_v1_PersistentVolumeClaimVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeClaimVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimVolumeSource) - out := out.(*PersistentVolumeClaimVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_PersistentVolumeList is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeList) - out := out.(*PersistentVolumeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PersistentVolume, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PersistentVolume(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PersistentVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeSource) - out := out.(*PersistentVolumeSource) - *out = *in - if in.GCEPersistentDisk != nil { - in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk - *out = new(GCEPersistentDiskVolumeSource) - **out = **in - } - if in.AWSElasticBlockStore != nil { - in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore - *out = new(AWSElasticBlockStoreVolumeSource) - **out = **in - } - if in.HostPath != nil { - in, out := &in.HostPath, &out.HostPath - *out = new(HostPathVolumeSource) - **out = **in - } - if in.Glusterfs != nil { - in, out := &in.Glusterfs, &out.Glusterfs - *out = new(GlusterfsVolumeSource) - **out = **in - } - if in.NFS != nil { - in, out := &in.NFS, &out.NFS - *out = new(NFSVolumeSource) - **out = **in - } - if in.RBD != nil { - in, out := &in.RBD, &out.RBD - *out = new(RBDVolumeSource) - if err := DeepCopy_v1_RBDVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.ISCSI != nil { - in, out := &in.ISCSI, &out.ISCSI - *out = new(ISCSIVolumeSource) - if err := DeepCopy_v1_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Cinder != nil { - in, out := &in.Cinder, &out.Cinder - *out = new(CinderVolumeSource) - **out = **in - } - if in.CephFS != nil { - in, out := &in.CephFS, &out.CephFS - *out = new(CephFSVolumeSource) - if err := DeepCopy_v1_CephFSVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.FC != nil { - in, out := &in.FC, &out.FC - *out = new(FCVolumeSource) - if err := DeepCopy_v1_FCVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Flocker != nil { - in, out := &in.Flocker, &out.Flocker - *out = new(FlockerVolumeSource) - **out = **in - } - if in.FlexVolume != nil { - in, out := &in.FlexVolume, &out.FlexVolume - *out = new(FlexVolumeSource) - if err := DeepCopy_v1_FlexVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.AzureFile != nil { - in, out := &in.AzureFile, &out.AzureFile - *out = new(AzureFileVolumeSource) - **out = **in - } - if in.VsphereVolume != nil { - in, out := &in.VsphereVolume, &out.VsphereVolume - *out = new(VsphereVirtualDiskVolumeSource) - **out = **in - } - if in.Quobyte != nil { - in, out := &in.Quobyte, &out.Quobyte - *out = new(QuobyteVolumeSource) - **out = **in - } - if in.AzureDisk != nil { - in, out := &in.AzureDisk, &out.AzureDisk - *out = new(AzureDiskVolumeSource) - if err := DeepCopy_v1_AzureDiskVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.PhotonPersistentDisk != nil { - in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk - *out = new(PhotonPersistentDiskVolumeSource) - **out = **in - } - if in.PortworxVolume != nil { - in, out := &in.PortworxVolume, &out.PortworxVolume - *out = new(PortworxVolumeSource) - **out = **in - } - if in.ScaleIO != nil { - in, out := &in.ScaleIO, &out.ScaleIO - *out = new(ScaleIOVolumeSource) - if err := DeepCopy_v1_ScaleIOVolumeSource(*in, *out, c); err != nil { - 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 - } -} - -// DeepCopy_v1_PersistentVolumeSpec is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeSpec) - out := out.(*PersistentVolumeSpec) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if err := DeepCopy_v1_PersistentVolumeSource(&in.PersistentVolumeSource, &out.PersistentVolumeSource, c); err != nil { - return err - } - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.ClaimRef != nil { - in, out := &in.ClaimRef, &out.ClaimRef - *out = new(ObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_PersistentVolumeStatus is an autogenerated deepcopy function. -func DeepCopy_v1_PersistentVolumeStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeStatus) - out := out.(*PersistentVolumeStatus) - *out = *in - return nil - } -} - -// DeepCopy_v1_PhotonPersistentDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_PhotonPersistentDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PhotonPersistentDiskVolumeSource) - out := out.(*PhotonPersistentDiskVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_Pod is an autogenerated deepcopy function. -func DeepCopy_v1_Pod(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Pod) - out := out.(*Pod) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_PodSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1_PodStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_PodAffinity is an autogenerated deepcopy function. -func DeepCopy_v1_PodAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAffinity) - out := out.(*PodAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = make([]PodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]WeightedPodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_v1_WeightedPodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PodAffinityTerm is an autogenerated deepcopy function. -func DeepCopy_v1_PodAffinityTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAffinityTerm) - out := out.(*PodAffinityTerm) - *out = *in - if in.LabelSelector != nil { - in, out := &in.LabelSelector, &out.LabelSelector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*meta_v1.LabelSelector) - } - } - if in.Namespaces != nil { - in, out := &in.Namespaces, &out.Namespaces - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_PodAntiAffinity is an autogenerated deepcopy function. -func DeepCopy_v1_PodAntiAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAntiAffinity) - out := out.(*PodAntiAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = make([]PodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]WeightedPodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_v1_WeightedPodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PodAttachOptions is an autogenerated deepcopy function. -func DeepCopy_v1_PodAttachOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAttachOptions) - out := out.(*PodAttachOptions) - *out = *in - return nil - } -} - -// DeepCopy_v1_PodCondition is an autogenerated deepcopy function. -func DeepCopy_v1_PodCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodCondition) - out := out.(*PodCondition) - *out = *in - out.LastProbeTime = in.LastProbeTime.DeepCopy() - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_v1_PodExecOptions is an autogenerated deepcopy function. -func DeepCopy_v1_PodExecOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodExecOptions) - out := out.(*PodExecOptions) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_PodList is an autogenerated deepcopy function. -func DeepCopy_v1_PodList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodList) - out := out.(*PodList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Pod, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Pod(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PodLogOptions is an autogenerated deepcopy function. -func DeepCopy_v1_PodLogOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodLogOptions) - out := out.(*PodLogOptions) - *out = *in - if in.SinceSeconds != nil { - in, out := &in.SinceSeconds, &out.SinceSeconds - *out = new(int64) - **out = **in - } - if in.SinceTime != nil { - in, out := &in.SinceTime, &out.SinceTime - *out = new(meta_v1.Time) - **out = (*in).DeepCopy() - } - if in.TailLines != nil { - in, out := &in.TailLines, &out.TailLines - *out = new(int64) - **out = **in - } - if in.LimitBytes != nil { - in, out := &in.LimitBytes, &out.LimitBytes - *out = new(int64) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_PodPortForwardOptions is an autogenerated deepcopy function. -func DeepCopy_v1_PodPortForwardOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodPortForwardOptions) - out := out.(*PodPortForwardOptions) - *out = *in - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]int32, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_PodProxyOptions is an autogenerated deepcopy function. -func DeepCopy_v1_PodProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodProxyOptions) - out := out.(*PodProxyOptions) - *out = *in - return nil - } -} - -// DeepCopy_v1_PodSecurityContext is an autogenerated deepcopy function. -func DeepCopy_v1_PodSecurityContext(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSecurityContext) - out := out.(*PodSecurityContext) - *out = *in - if in.SELinuxOptions != nil { - in, out := &in.SELinuxOptions, &out.SELinuxOptions - *out = new(SELinuxOptions) - **out = **in - } - if in.RunAsUser != nil { - in, out := &in.RunAsUser, &out.RunAsUser - *out = new(types.UnixUserID) - **out = **in - } - if in.RunAsNonRoot != nil { - in, out := &in.RunAsNonRoot, &out.RunAsNonRoot - *out = new(bool) - **out = **in - } - if in.SupplementalGroups != nil { - in, out := &in.SupplementalGroups, &out.SupplementalGroups - *out = make([]types.UnixGroupID, len(*in)) - copy(*out, *in) - } - if in.FSGroup != nil { - in, out := &in.FSGroup, &out.FSGroup - *out = new(types.UnixGroupID) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_PodSignature is an autogenerated deepcopy function. -func DeepCopy_v1_PodSignature(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSignature) - out := out.(*PodSignature) - *out = *in - if in.PodController != nil { - in, out := &in.PodController, &out.PodController - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*meta_v1.OwnerReference) - } - } - return nil - } -} - -// DeepCopy_v1_PodSpec is an autogenerated deepcopy function. -func DeepCopy_v1_PodSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSpec) - out := out.(*PodSpec) - *out = *in - if in.Volumes != nil { - in, out := &in.Volumes, &out.Volumes - *out = make([]Volume, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Volume(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.InitContainers != nil { - in, out := &in.InitContainers, &out.InitContainers - *out = make([]Container, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Container(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Containers != nil { - in, out := &in.Containers, &out.Containers - *out = make([]Container, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Container(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.TerminationGracePeriodSeconds != nil { - in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds - *out = new(int64) - **out = **in - } - if in.ActiveDeadlineSeconds != nil { - in, out := &in.ActiveDeadlineSeconds, &out.ActiveDeadlineSeconds - *out = new(int64) - **out = **in - } - if in.NodeSelector != nil { - in, out := &in.NodeSelector, &out.NodeSelector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.AutomountServiceAccountToken != nil { - in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken - *out = new(bool) - **out = **in - } - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext - *out = new(PodSecurityContext) - if err := DeepCopy_v1_PodSecurityContext(*in, *out, c); err != nil { - return err - } - } - if in.ImagePullSecrets != nil { - in, out := &in.ImagePullSecrets, &out.ImagePullSecrets - *out = make([]LocalObjectReference, len(*in)) - copy(*out, *in) - } - if in.Affinity != nil { - in, out := &in.Affinity, &out.Affinity - *out = new(Affinity) - if err := DeepCopy_v1_Affinity(*in, *out, c); err != nil { - return err - } - } - if in.Tolerations != nil { - in, out := &in.Tolerations, &out.Tolerations - *out = make([]Toleration, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Toleration(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.HostAliases != nil { - in, out := &in.HostAliases, &out.HostAliases - *out = make([]HostAlias, len(*in)) - for i := range *in { - if err := DeepCopy_v1_HostAlias(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PodStatus is an autogenerated deepcopy function. -func DeepCopy_v1_PodStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodStatus) - out := out.(*PodStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]PodCondition, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PodCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.StartTime != nil { - in, out := &in.StartTime, &out.StartTime - *out = new(meta_v1.Time) - **out = (*in).DeepCopy() - } - if in.InitContainerStatuses != nil { - in, out := &in.InitContainerStatuses, &out.InitContainerStatuses - *out = make([]ContainerStatus, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ContainerStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.ContainerStatuses != nil { - in, out := &in.ContainerStatuses, &out.ContainerStatuses - *out = make([]ContainerStatus, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ContainerStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PodStatusResult is an autogenerated deepcopy function. -func DeepCopy_v1_PodStatusResult(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodStatusResult) - out := out.(*PodStatusResult) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_PodStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_PodTemplate is an autogenerated deepcopy function. -func DeepCopy_v1_PodTemplate(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplate) - out := out.(*PodTemplate) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_PodTemplateSpec(&in.Template, &out.Template, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_PodTemplateList is an autogenerated deepcopy function. -func DeepCopy_v1_PodTemplateList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplateList) - out := out.(*PodTemplateList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PodTemplate, len(*in)) - for i := range *in { - if err := DeepCopy_v1_PodTemplate(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_PodTemplateSpec is an autogenerated deepcopy function. -func DeepCopy_v1_PodTemplateSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplateSpec) - out := out.(*PodTemplateSpec) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_PodSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_PortworxVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_PortworxVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PortworxVolumeSource) - out := out.(*PortworxVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_Preconditions is an autogenerated deepcopy function. -func DeepCopy_v1_Preconditions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Preconditions) - out := out.(*Preconditions) - *out = *in - if in.UID != nil { - in, out := &in.UID, &out.UID - *out = new(types.UID) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_PreferAvoidPodsEntry is an autogenerated deepcopy function. -func DeepCopy_v1_PreferAvoidPodsEntry(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PreferAvoidPodsEntry) - out := out.(*PreferAvoidPodsEntry) - *out = *in - if err := DeepCopy_v1_PodSignature(&in.PodSignature, &out.PodSignature, c); err != nil { - return err - } - out.EvictionTime = in.EvictionTime.DeepCopy() - return nil - } -} - -// DeepCopy_v1_PreferredSchedulingTerm is an autogenerated deepcopy function. -func DeepCopy_v1_PreferredSchedulingTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PreferredSchedulingTerm) - out := out.(*PreferredSchedulingTerm) - *out = *in - if err := DeepCopy_v1_NodeSelectorTerm(&in.Preference, &out.Preference, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_Probe is an autogenerated deepcopy function. -func DeepCopy_v1_Probe(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Probe) - out := out.(*Probe) - *out = *in - if err := DeepCopy_v1_Handler(&in.Handler, &out.Handler, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_ProjectedVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_ProjectedVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ProjectedVolumeSource) - out := out.(*ProjectedVolumeSource) - *out = *in - if in.Sources != nil { - in, out := &in.Sources, &out.Sources - *out = make([]VolumeProjection, len(*in)) - for i := range *in { - if err := DeepCopy_v1_VolumeProjection(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_QuobyteVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_QuobyteVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*QuobyteVolumeSource) - out := out.(*QuobyteVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_RBDVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_RBDVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RBDVolumeSource) - out := out.(*RBDVolumeSource) - *out = *in - if in.CephMonitors != nil { - in, out := &in.CephMonitors, &out.CephMonitors - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_RangeAllocation is an autogenerated deepcopy function. -func DeepCopy_v1_RangeAllocation(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RangeAllocation) - out := out.(*RangeAllocation) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make([]byte, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_ReplicationController is an autogenerated deepcopy function. -func DeepCopy_v1_ReplicationController(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationController) - out := out.(*ReplicationController) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_ReplicationControllerSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1_ReplicationControllerStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_ReplicationControllerCondition is an autogenerated deepcopy function. -func DeepCopy_v1_ReplicationControllerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerCondition) - out := out.(*ReplicationControllerCondition) - *out = *in - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_v1_ReplicationControllerList is an autogenerated deepcopy function. -func DeepCopy_v1_ReplicationControllerList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerList) - out := out.(*ReplicationControllerList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ReplicationController, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ReplicationController(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_ReplicationControllerSpec is an autogenerated deepcopy function. -func DeepCopy_v1_ReplicationControllerSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerSpec) - out := out.(*ReplicationControllerSpec) - *out = *in - if in.Replicas != nil { - in, out := &in.Replicas, &out.Replicas - *out = new(int32) - **out = **in - } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.Template != nil { - in, out := &in.Template, &out.Template - *out = new(PodTemplateSpec) - if err := DeepCopy_v1_PodTemplateSpec(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_ReplicationControllerStatus is an autogenerated deepcopy function. -func DeepCopy_v1_ReplicationControllerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerStatus) - out := out.(*ReplicationControllerStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ReplicationControllerCondition, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ReplicationControllerCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_ResourceFieldSelector is an autogenerated deepcopy function. -func DeepCopy_v1_ResourceFieldSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceFieldSelector) - out := out.(*ResourceFieldSelector) - *out = *in - out.Divisor = in.Divisor.DeepCopy() - return nil - } -} - -// DeepCopy_v1_ResourceQuota is an autogenerated deepcopy function. -func DeepCopy_v1_ResourceQuota(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuota) - out := out.(*ResourceQuota) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_ResourceQuotaSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1_ResourceQuotaStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_ResourceQuotaList is an autogenerated deepcopy function. -func DeepCopy_v1_ResourceQuotaList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaList) - out := out.(*ResourceQuotaList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ResourceQuota, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ResourceQuota(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_ResourceQuotaSpec is an autogenerated deepcopy function. -func DeepCopy_v1_ResourceQuotaSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaSpec) - out := out.(*ResourceQuotaSpec) - *out = *in - if in.Hard != nil { - in, out := &in.Hard, &out.Hard - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Scopes != nil { - in, out := &in.Scopes, &out.Scopes - *out = make([]ResourceQuotaScope, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_ResourceQuotaStatus is an autogenerated deepcopy function. -func DeepCopy_v1_ResourceQuotaStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaStatus) - out := out.(*ResourceQuotaStatus) - *out = *in - if in.Hard != nil { - in, out := &in.Hard, &out.Hard - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Used != nil { - in, out := &in.Used, &out.Used - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_v1_ResourceRequirements is an autogenerated deepcopy function. -func DeepCopy_v1_ResourceRequirements(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceRequirements) - out := out.(*ResourceRequirements) - *out = *in - if in.Limits != nil { - in, out := &in.Limits, &out.Limits - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Requests != nil { - in, out := &in.Requests, &out.Requests - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_v1_SELinuxOptions is an autogenerated deepcopy function. -func DeepCopy_v1_SELinuxOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SELinuxOptions) - out := out.(*SELinuxOptions) - *out = *in - return nil - } -} - -// DeepCopy_v1_ScaleIOVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_ScaleIOVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ScaleIOVolumeSource) - out := out.(*ScaleIOVolumeSource) - *out = *in - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_Secret is an autogenerated deepcopy function. -func DeepCopy_v1_Secret(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Secret) - out := out.(*Secret) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make(map[string][]byte) - for key, val := range *in { - if newVal, err := c.DeepCopy(&val); err != nil { - return err - } else { - (*out)[key] = *newVal.(*[]byte) - } - } - } - if in.StringData != nil { - in, out := &in.StringData, &out.StringData - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - return nil - } -} - -// DeepCopy_v1_SecretEnvSource is an autogenerated deepcopy function. -func DeepCopy_v1_SecretEnvSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretEnvSource) - out := out.(*SecretEnvSource) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_SecretKeySelector is an autogenerated deepcopy function. -func DeepCopy_v1_SecretKeySelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretKeySelector) - out := out.(*SecretKeySelector) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_SecretList is an autogenerated deepcopy function. -func DeepCopy_v1_SecretList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretList) - out := out.(*SecretList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Secret, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Secret(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_SecretProjection is an autogenerated deepcopy function. -func DeepCopy_v1_SecretProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretProjection) - out := out.(*SecretProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_v1_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_SecretVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_SecretVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretVolumeSource) - out := out.(*SecretVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_v1_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_SecurityContext is an autogenerated deepcopy function. -func DeepCopy_v1_SecurityContext(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecurityContext) - out := out.(*SecurityContext) - *out = *in - if in.Capabilities != nil { - in, out := &in.Capabilities, &out.Capabilities - *out = new(Capabilities) - if err := DeepCopy_v1_Capabilities(*in, *out, c); err != nil { - return err - } - } - if in.Privileged != nil { - in, out := &in.Privileged, &out.Privileged - *out = new(bool) - **out = **in - } - if in.SELinuxOptions != nil { - in, out := &in.SELinuxOptions, &out.SELinuxOptions - *out = new(SELinuxOptions) - **out = **in - } - if in.RunAsUser != nil { - in, out := &in.RunAsUser, &out.RunAsUser - *out = new(types.UnixUserID) - **out = **in - } - if in.RunAsNonRoot != nil { - in, out := &in.RunAsNonRoot, &out.RunAsNonRoot - *out = new(bool) - **out = **in - } - if in.ReadOnlyRootFilesystem != nil { - in, out := &in.ReadOnlyRootFilesystem, &out.ReadOnlyRootFilesystem - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_SerializedReference is an autogenerated deepcopy function. -func DeepCopy_v1_SerializedReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SerializedReference) - out := out.(*SerializedReference) - *out = *in - return nil - } -} - -// DeepCopy_v1_Service is an autogenerated deepcopy function. -func DeepCopy_v1_Service(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Service) - out := out.(*Service) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if err := DeepCopy_v1_ServiceSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1_ServiceStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_ServiceAccount is an autogenerated deepcopy function. -func DeepCopy_v1_ServiceAccount(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceAccount) - out := out.(*ServiceAccount) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) - } - if in.Secrets != nil { - in, out := &in.Secrets, &out.Secrets - *out = make([]ObjectReference, len(*in)) - copy(*out, *in) - } - if in.ImagePullSecrets != nil { - in, out := &in.ImagePullSecrets, &out.ImagePullSecrets - *out = make([]LocalObjectReference, len(*in)) - copy(*out, *in) - } - if in.AutomountServiceAccountToken != nil { - in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_ServiceAccountList is an autogenerated deepcopy function. -func DeepCopy_v1_ServiceAccountList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceAccountList) - out := out.(*ServiceAccountList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ServiceAccount, len(*in)) - for i := range *in { - if err := DeepCopy_v1_ServiceAccount(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_ServiceList is an autogenerated deepcopy function. -func DeepCopy_v1_ServiceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceList) - out := out.(*ServiceList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Service, len(*in)) - for i := range *in { - if err := DeepCopy_v1_Service(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_v1_ServicePort is an autogenerated deepcopy function. -func DeepCopy_v1_ServicePort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServicePort) - out := out.(*ServicePort) - *out = *in - return nil - } -} - -// DeepCopy_v1_ServiceProxyOptions is an autogenerated deepcopy function. -func DeepCopy_v1_ServiceProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceProxyOptions) - out := out.(*ServiceProxyOptions) - *out = *in - return nil - } -} - -// DeepCopy_v1_ServiceSpec is an autogenerated deepcopy function. -func DeepCopy_v1_ServiceSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceSpec) - out := out.(*ServiceSpec) - *out = *in - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]ServicePort, len(*in)) - copy(*out, *in) - } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.ExternalIPs != nil { - in, out := &in.ExternalIPs, &out.ExternalIPs - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.LoadBalancerSourceRanges != nil { - in, out := &in.LoadBalancerSourceRanges, &out.LoadBalancerSourceRanges - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_v1_ServiceStatus is an autogenerated deepcopy function. -func DeepCopy_v1_ServiceStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceStatus) - out := out.(*ServiceStatus) - *out = *in - if err := DeepCopy_v1_LoadBalancerStatus(&in.LoadBalancer, &out.LoadBalancer, c); err != nil { - return err - } - return nil - } -} - -// 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 { - { - in := in.(*Sysctl) - out := out.(*Sysctl) - *out = *in - return nil - } -} - -// DeepCopy_v1_TCPSocketAction is an autogenerated deepcopy function. -func DeepCopy_v1_TCPSocketAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*TCPSocketAction) - out := out.(*TCPSocketAction) - *out = *in - return nil - } -} - -// DeepCopy_v1_Taint is an autogenerated deepcopy function. -func DeepCopy_v1_Taint(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Taint) - out := out.(*Taint) - *out = *in - out.TimeAdded = in.TimeAdded.DeepCopy() - return nil - } -} - -// DeepCopy_v1_Toleration is an autogenerated deepcopy function. -func DeepCopy_v1_Toleration(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Toleration) - out := out.(*Toleration) - *out = *in - if in.TolerationSeconds != nil { - in, out := &in.TolerationSeconds, &out.TolerationSeconds - *out = new(int64) - **out = **in - } - return nil - } -} - -// DeepCopy_v1_Volume is an autogenerated deepcopy function. -func DeepCopy_v1_Volume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Volume) - out := out.(*Volume) - *out = *in - if err := DeepCopy_v1_VolumeSource(&in.VolumeSource, &out.VolumeSource, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_v1_VolumeMount is an autogenerated deepcopy function. -func DeepCopy_v1_VolumeMount(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeMount) - out := out.(*VolumeMount) - *out = *in - return nil - } -} - -// DeepCopy_v1_VolumeProjection is an autogenerated deepcopy function. -func DeepCopy_v1_VolumeProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeProjection) - out := out.(*VolumeProjection) - *out = *in - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = new(SecretProjection) - if err := DeepCopy_v1_SecretProjection(*in, *out, c); err != nil { - return err - } - } - if in.DownwardAPI != nil { - in, out := &in.DownwardAPI, &out.DownwardAPI - *out = new(DownwardAPIProjection) - if err := DeepCopy_v1_DownwardAPIProjection(*in, *out, c); err != nil { - return err - } - } - if in.ConfigMap != nil { - in, out := &in.ConfigMap, &out.ConfigMap - *out = new(ConfigMapProjection) - if err := DeepCopy_v1_ConfigMapProjection(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_v1_VolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_VolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeSource) - out := out.(*VolumeSource) - *out = *in - if in.HostPath != nil { - in, out := &in.HostPath, &out.HostPath - *out = new(HostPathVolumeSource) - **out = **in - } - if in.EmptyDir != nil { - in, out := &in.EmptyDir, &out.EmptyDir - *out = new(EmptyDirVolumeSource) - if err := DeepCopy_v1_EmptyDirVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.GCEPersistentDisk != nil { - in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk - *out = new(GCEPersistentDiskVolumeSource) - **out = **in - } - if in.AWSElasticBlockStore != nil { - in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore - *out = new(AWSElasticBlockStoreVolumeSource) - **out = **in - } - if in.GitRepo != nil { - in, out := &in.GitRepo, &out.GitRepo - *out = new(GitRepoVolumeSource) - **out = **in - } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = new(SecretVolumeSource) - if err := DeepCopy_v1_SecretVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.NFS != nil { - in, out := &in.NFS, &out.NFS - *out = new(NFSVolumeSource) - **out = **in - } - if in.ISCSI != nil { - in, out := &in.ISCSI, &out.ISCSI - *out = new(ISCSIVolumeSource) - if err := DeepCopy_v1_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Glusterfs != nil { - in, out := &in.Glusterfs, &out.Glusterfs - *out = new(GlusterfsVolumeSource) - **out = **in - } - if in.PersistentVolumeClaim != nil { - in, out := &in.PersistentVolumeClaim, &out.PersistentVolumeClaim - *out = new(PersistentVolumeClaimVolumeSource) - **out = **in - } - if in.RBD != nil { - in, out := &in.RBD, &out.RBD - *out = new(RBDVolumeSource) - if err := DeepCopy_v1_RBDVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.FlexVolume != nil { - in, out := &in.FlexVolume, &out.FlexVolume - *out = new(FlexVolumeSource) - if err := DeepCopy_v1_FlexVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Cinder != nil { - in, out := &in.Cinder, &out.Cinder - *out = new(CinderVolumeSource) - **out = **in - } - if in.CephFS != nil { - in, out := &in.CephFS, &out.CephFS - *out = new(CephFSVolumeSource) - if err := DeepCopy_v1_CephFSVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Flocker != nil { - in, out := &in.Flocker, &out.Flocker - *out = new(FlockerVolumeSource) - **out = **in - } - if in.DownwardAPI != nil { - in, out := &in.DownwardAPI, &out.DownwardAPI - *out = new(DownwardAPIVolumeSource) - if err := DeepCopy_v1_DownwardAPIVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.FC != nil { - in, out := &in.FC, &out.FC - *out = new(FCVolumeSource) - if err := DeepCopy_v1_FCVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.AzureFile != nil { - in, out := &in.AzureFile, &out.AzureFile - *out = new(AzureFileVolumeSource) - **out = **in - } - if in.ConfigMap != nil { - in, out := &in.ConfigMap, &out.ConfigMap - *out = new(ConfigMapVolumeSource) - if err := DeepCopy_v1_ConfigMapVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.VsphereVolume != nil { - in, out := &in.VsphereVolume, &out.VsphereVolume - *out = new(VsphereVirtualDiskVolumeSource) - **out = **in - } - if in.Quobyte != nil { - in, out := &in.Quobyte, &out.Quobyte - *out = new(QuobyteVolumeSource) - **out = **in - } - if in.AzureDisk != nil { - in, out := &in.AzureDisk, &out.AzureDisk - *out = new(AzureDiskVolumeSource) - if err := DeepCopy_v1_AzureDiskVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.PhotonPersistentDisk != nil { - in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk - *out = new(PhotonPersistentDiskVolumeSource) - **out = **in - } - if in.Projected != nil { - in, out := &in.Projected, &out.Projected - *out = new(ProjectedVolumeSource) - if err := DeepCopy_v1_ProjectedVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.PortworxVolume != nil { - in, out := &in.PortworxVolume, &out.PortworxVolume - *out = new(PortworxVolumeSource) - **out = **in - } - if in.ScaleIO != nil { - in, out := &in.ScaleIO, &out.ScaleIO - *out = new(ScaleIOVolumeSource) - if err := DeepCopy_v1_ScaleIOVolumeSource(*in, *out, c); err != nil { - 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 - } -} - -// DeepCopy_v1_VsphereVirtualDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_v1_VsphereVirtualDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VsphereVirtualDiskVolumeSource) - out := out.(*VsphereVirtualDiskVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_v1_WeightedPodAffinityTerm is an autogenerated deepcopy function. -func DeepCopy_v1_WeightedPodAffinityTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*WeightedPodAffinityTerm) - out := out.(*WeightedPodAffinityTerm) - *out = *in - if err := DeepCopy_v1_PodAffinityTerm(&in.PodAffinityTerm, &out.PodAffinityTerm, c); err != nil { - return err - } - return nil - } -} diff --git a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.defaults.go b/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.defaults.go deleted file mode 100644 index 31e795066..000000000 --- a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.defaults.go +++ /dev/null @@ -1,631 +0,0 @@ -// +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(&ConfigMap{}, func(obj interface{}) { SetObjectDefaults_ConfigMap(obj.(*ConfigMap)) }) - scheme.AddTypeDefaultingFunc(&ConfigMapList{}, func(obj interface{}) { SetObjectDefaults_ConfigMapList(obj.(*ConfigMapList)) }) - scheme.AddTypeDefaultingFunc(&Endpoints{}, func(obj interface{}) { SetObjectDefaults_Endpoints(obj.(*Endpoints)) }) - scheme.AddTypeDefaultingFunc(&EndpointsList{}, func(obj interface{}) { SetObjectDefaults_EndpointsList(obj.(*EndpointsList)) }) - scheme.AddTypeDefaultingFunc(&LimitRange{}, func(obj interface{}) { SetObjectDefaults_LimitRange(obj.(*LimitRange)) }) - scheme.AddTypeDefaultingFunc(&LimitRangeList{}, func(obj interface{}) { SetObjectDefaults_LimitRangeList(obj.(*LimitRangeList)) }) - scheme.AddTypeDefaultingFunc(&Namespace{}, func(obj interface{}) { SetObjectDefaults_Namespace(obj.(*Namespace)) }) - scheme.AddTypeDefaultingFunc(&NamespaceList{}, func(obj interface{}) { SetObjectDefaults_NamespaceList(obj.(*NamespaceList)) }) - scheme.AddTypeDefaultingFunc(&Node{}, func(obj interface{}) { SetObjectDefaults_Node(obj.(*Node)) }) - scheme.AddTypeDefaultingFunc(&NodeList{}, func(obj interface{}) { SetObjectDefaults_NodeList(obj.(*NodeList)) }) - scheme.AddTypeDefaultingFunc(&PersistentVolume{}, func(obj interface{}) { SetObjectDefaults_PersistentVolume(obj.(*PersistentVolume)) }) - scheme.AddTypeDefaultingFunc(&PersistentVolumeClaim{}, func(obj interface{}) { SetObjectDefaults_PersistentVolumeClaim(obj.(*PersistentVolumeClaim)) }) - scheme.AddTypeDefaultingFunc(&PersistentVolumeClaimList{}, func(obj interface{}) { SetObjectDefaults_PersistentVolumeClaimList(obj.(*PersistentVolumeClaimList)) }) - scheme.AddTypeDefaultingFunc(&PersistentVolumeList{}, func(obj interface{}) { SetObjectDefaults_PersistentVolumeList(obj.(*PersistentVolumeList)) }) - scheme.AddTypeDefaultingFunc(&Pod{}, func(obj interface{}) { SetObjectDefaults_Pod(obj.(*Pod)) }) - scheme.AddTypeDefaultingFunc(&PodAttachOptions{}, func(obj interface{}) { SetObjectDefaults_PodAttachOptions(obj.(*PodAttachOptions)) }) - scheme.AddTypeDefaultingFunc(&PodExecOptions{}, func(obj interface{}) { SetObjectDefaults_PodExecOptions(obj.(*PodExecOptions)) }) - scheme.AddTypeDefaultingFunc(&PodList{}, func(obj interface{}) { SetObjectDefaults_PodList(obj.(*PodList)) }) - scheme.AddTypeDefaultingFunc(&PodTemplate{}, func(obj interface{}) { SetObjectDefaults_PodTemplate(obj.(*PodTemplate)) }) - scheme.AddTypeDefaultingFunc(&PodTemplateList{}, func(obj interface{}) { SetObjectDefaults_PodTemplateList(obj.(*PodTemplateList)) }) - scheme.AddTypeDefaultingFunc(&ReplicationController{}, func(obj interface{}) { SetObjectDefaults_ReplicationController(obj.(*ReplicationController)) }) - scheme.AddTypeDefaultingFunc(&ReplicationControllerList{}, func(obj interface{}) { SetObjectDefaults_ReplicationControllerList(obj.(*ReplicationControllerList)) }) - scheme.AddTypeDefaultingFunc(&ResourceQuota{}, func(obj interface{}) { SetObjectDefaults_ResourceQuota(obj.(*ResourceQuota)) }) - scheme.AddTypeDefaultingFunc(&ResourceQuotaList{}, func(obj interface{}) { SetObjectDefaults_ResourceQuotaList(obj.(*ResourceQuotaList)) }) - scheme.AddTypeDefaultingFunc(&Secret{}, func(obj interface{}) { SetObjectDefaults_Secret(obj.(*Secret)) }) - scheme.AddTypeDefaultingFunc(&SecretList{}, func(obj interface{}) { SetObjectDefaults_SecretList(obj.(*SecretList)) }) - scheme.AddTypeDefaultingFunc(&Service{}, func(obj interface{}) { SetObjectDefaults_Service(obj.(*Service)) }) - scheme.AddTypeDefaultingFunc(&ServiceList{}, func(obj interface{}) { SetObjectDefaults_ServiceList(obj.(*ServiceList)) }) - return nil -} - -func SetObjectDefaults_ConfigMap(in *ConfigMap) { - SetDefaults_ConfigMap(in) -} - -func SetObjectDefaults_ConfigMapList(in *ConfigMapList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_ConfigMap(a) - } -} - -func SetObjectDefaults_Endpoints(in *Endpoints) { - SetDefaults_Endpoints(in) -} - -func SetObjectDefaults_EndpointsList(in *EndpointsList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_Endpoints(a) - } -} - -func SetObjectDefaults_LimitRange(in *LimitRange) { - for i := range in.Spec.Limits { - a := &in.Spec.Limits[i] - SetDefaults_LimitRangeItem(a) - SetDefaults_ResourceList(&a.Max) - SetDefaults_ResourceList(&a.Min) - SetDefaults_ResourceList(&a.Default) - SetDefaults_ResourceList(&a.DefaultRequest) - SetDefaults_ResourceList(&a.MaxLimitRequestRatio) - } -} - -func SetObjectDefaults_LimitRangeList(in *LimitRangeList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_LimitRange(a) - } -} - -func SetObjectDefaults_Namespace(in *Namespace) { - SetDefaults_NamespaceStatus(&in.Status) -} - -func SetObjectDefaults_NamespaceList(in *NamespaceList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_Namespace(a) - } -} - -func SetObjectDefaults_Node(in *Node) { - SetDefaults_Node(in) - SetDefaults_NodeStatus(&in.Status) - SetDefaults_ResourceList(&in.Status.Capacity) - SetDefaults_ResourceList(&in.Status.Allocatable) -} - -func SetObjectDefaults_NodeList(in *NodeList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_Node(a) - } -} - -func SetObjectDefaults_PersistentVolume(in *PersistentVolume) { - SetDefaults_PersistentVolume(in) - SetDefaults_ResourceList(&in.Spec.Capacity) - if in.Spec.PersistentVolumeSource.RBD != nil { - SetDefaults_RBDVolumeSource(in.Spec.PersistentVolumeSource.RBD) - } - if in.Spec.PersistentVolumeSource.ISCSI != nil { - SetDefaults_ISCSIVolumeSource(in.Spec.PersistentVolumeSource.ISCSI) - } - if in.Spec.PersistentVolumeSource.AzureDisk != nil { - SetDefaults_AzureDiskVolumeSource(in.Spec.PersistentVolumeSource.AzureDisk) - } - if in.Spec.PersistentVolumeSource.ScaleIO != nil { - SetDefaults_ScaleIOVolumeSource(in.Spec.PersistentVolumeSource.ScaleIO) - } -} - -func SetObjectDefaults_PersistentVolumeClaim(in *PersistentVolumeClaim) { - SetDefaults_PersistentVolumeClaim(in) - SetDefaults_ResourceList(&in.Spec.Resources.Limits) - SetDefaults_ResourceList(&in.Spec.Resources.Requests) - SetDefaults_ResourceList(&in.Status.Capacity) -} - -func SetObjectDefaults_PersistentVolumeClaimList(in *PersistentVolumeClaimList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_PersistentVolumeClaim(a) - } -} - -func SetObjectDefaults_PersistentVolumeList(in *PersistentVolumeList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_PersistentVolume(a) - } -} - -func SetObjectDefaults_Pod(in *Pod) { - SetDefaults_Pod(in) - SetDefaults_PodSpec(&in.Spec) - for i := range in.Spec.Volumes { - a := &in.Spec.Volumes[i] - SetDefaults_Volume(a) - if a.VolumeSource.Secret != nil { - SetDefaults_SecretVolumeSource(a.VolumeSource.Secret) - } - if a.VolumeSource.ISCSI != nil { - SetDefaults_ISCSIVolumeSource(a.VolumeSource.ISCSI) - } - if a.VolumeSource.RBD != nil { - SetDefaults_RBDVolumeSource(a.VolumeSource.RBD) - } - if a.VolumeSource.DownwardAPI != nil { - SetDefaults_DownwardAPIVolumeSource(a.VolumeSource.DownwardAPI) - for j := range a.VolumeSource.DownwardAPI.Items { - b := &a.VolumeSource.DownwardAPI.Items[j] - if b.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.FieldRef) - } - } - } - if a.VolumeSource.ConfigMap != nil { - SetDefaults_ConfigMapVolumeSource(a.VolumeSource.ConfigMap) - } - if a.VolumeSource.AzureDisk != nil { - SetDefaults_AzureDiskVolumeSource(a.VolumeSource.AzureDisk) - } - if a.VolumeSource.Projected != nil { - SetDefaults_ProjectedVolumeSource(a.VolumeSource.Projected) - for j := range a.VolumeSource.Projected.Sources { - b := &a.VolumeSource.Projected.Sources[j] - if b.DownwardAPI != nil { - for k := range b.DownwardAPI.Items { - c := &b.DownwardAPI.Items[k] - if c.FieldRef != nil { - SetDefaults_ObjectFieldSelector(c.FieldRef) - } - } - } - } - } - if a.VolumeSource.ScaleIO != nil { - SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) - } - } - for i := range in.Spec.InitContainers { - a := &in.Spec.InitContainers[i] - SetDefaults_Container(a) - for j := range a.Ports { - b := &a.Ports[j] - SetDefaults_ContainerPort(b) - } - for j := range a.Env { - b := &a.Env[j] - if b.ValueFrom != nil { - if b.ValueFrom.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.ValueFrom.FieldRef) - } - } - } - SetDefaults_ResourceList(&a.Resources.Limits) - SetDefaults_ResourceList(&a.Resources.Requests) - if a.LivenessProbe != nil { - SetDefaults_Probe(a.LivenessProbe) - if a.LivenessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.LivenessProbe.Handler.HTTPGet) - } - } - if a.ReadinessProbe != nil { - SetDefaults_Probe(a.ReadinessProbe) - if a.ReadinessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.ReadinessProbe.Handler.HTTPGet) - } - } - if a.Lifecycle != nil { - if a.Lifecycle.PostStart != nil { - if a.Lifecycle.PostStart.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PostStart.HTTPGet) - } - } - if a.Lifecycle.PreStop != nil { - if a.Lifecycle.PreStop.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PreStop.HTTPGet) - } - } - } - } - for i := range in.Spec.Containers { - a := &in.Spec.Containers[i] - SetDefaults_Container(a) - for j := range a.Ports { - b := &a.Ports[j] - SetDefaults_ContainerPort(b) - } - for j := range a.Env { - b := &a.Env[j] - if b.ValueFrom != nil { - if b.ValueFrom.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.ValueFrom.FieldRef) - } - } - } - SetDefaults_ResourceList(&a.Resources.Limits) - SetDefaults_ResourceList(&a.Resources.Requests) - if a.LivenessProbe != nil { - SetDefaults_Probe(a.LivenessProbe) - if a.LivenessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.LivenessProbe.Handler.HTTPGet) - } - } - if a.ReadinessProbe != nil { - SetDefaults_Probe(a.ReadinessProbe) - if a.ReadinessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.ReadinessProbe.Handler.HTTPGet) - } - } - if a.Lifecycle != nil { - if a.Lifecycle.PostStart != nil { - if a.Lifecycle.PostStart.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PostStart.HTTPGet) - } - } - if a.Lifecycle.PreStop != nil { - if a.Lifecycle.PreStop.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PreStop.HTTPGet) - } - } - } - } -} - -func SetObjectDefaults_PodAttachOptions(in *PodAttachOptions) { - SetDefaults_PodAttachOptions(in) -} - -func SetObjectDefaults_PodExecOptions(in *PodExecOptions) { - SetDefaults_PodExecOptions(in) -} - -func SetObjectDefaults_PodList(in *PodList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_Pod(a) - } -} - -func SetObjectDefaults_PodTemplate(in *PodTemplate) { - SetDefaults_PodSpec(&in.Template.Spec) - for i := range in.Template.Spec.Volumes { - a := &in.Template.Spec.Volumes[i] - SetDefaults_Volume(a) - if a.VolumeSource.Secret != nil { - SetDefaults_SecretVolumeSource(a.VolumeSource.Secret) - } - if a.VolumeSource.ISCSI != nil { - SetDefaults_ISCSIVolumeSource(a.VolumeSource.ISCSI) - } - if a.VolumeSource.RBD != nil { - SetDefaults_RBDVolumeSource(a.VolumeSource.RBD) - } - if a.VolumeSource.DownwardAPI != nil { - SetDefaults_DownwardAPIVolumeSource(a.VolumeSource.DownwardAPI) - for j := range a.VolumeSource.DownwardAPI.Items { - b := &a.VolumeSource.DownwardAPI.Items[j] - if b.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.FieldRef) - } - } - } - if a.VolumeSource.ConfigMap != nil { - SetDefaults_ConfigMapVolumeSource(a.VolumeSource.ConfigMap) - } - if a.VolumeSource.AzureDisk != nil { - SetDefaults_AzureDiskVolumeSource(a.VolumeSource.AzureDisk) - } - if a.VolumeSource.Projected != nil { - SetDefaults_ProjectedVolumeSource(a.VolumeSource.Projected) - for j := range a.VolumeSource.Projected.Sources { - b := &a.VolumeSource.Projected.Sources[j] - if b.DownwardAPI != nil { - for k := range b.DownwardAPI.Items { - c := &b.DownwardAPI.Items[k] - if c.FieldRef != nil { - SetDefaults_ObjectFieldSelector(c.FieldRef) - } - } - } - } - } - if a.VolumeSource.ScaleIO != nil { - SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) - } - } - for i := range in.Template.Spec.InitContainers { - a := &in.Template.Spec.InitContainers[i] - SetDefaults_Container(a) - for j := range a.Ports { - b := &a.Ports[j] - SetDefaults_ContainerPort(b) - } - for j := range a.Env { - b := &a.Env[j] - if b.ValueFrom != nil { - if b.ValueFrom.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.ValueFrom.FieldRef) - } - } - } - SetDefaults_ResourceList(&a.Resources.Limits) - SetDefaults_ResourceList(&a.Resources.Requests) - if a.LivenessProbe != nil { - SetDefaults_Probe(a.LivenessProbe) - if a.LivenessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.LivenessProbe.Handler.HTTPGet) - } - } - if a.ReadinessProbe != nil { - SetDefaults_Probe(a.ReadinessProbe) - if a.ReadinessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.ReadinessProbe.Handler.HTTPGet) - } - } - if a.Lifecycle != nil { - if a.Lifecycle.PostStart != nil { - if a.Lifecycle.PostStart.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PostStart.HTTPGet) - } - } - if a.Lifecycle.PreStop != nil { - if a.Lifecycle.PreStop.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PreStop.HTTPGet) - } - } - } - } - for i := range in.Template.Spec.Containers { - a := &in.Template.Spec.Containers[i] - SetDefaults_Container(a) - for j := range a.Ports { - b := &a.Ports[j] - SetDefaults_ContainerPort(b) - } - for j := range a.Env { - b := &a.Env[j] - if b.ValueFrom != nil { - if b.ValueFrom.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.ValueFrom.FieldRef) - } - } - } - SetDefaults_ResourceList(&a.Resources.Limits) - SetDefaults_ResourceList(&a.Resources.Requests) - if a.LivenessProbe != nil { - SetDefaults_Probe(a.LivenessProbe) - if a.LivenessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.LivenessProbe.Handler.HTTPGet) - } - } - if a.ReadinessProbe != nil { - SetDefaults_Probe(a.ReadinessProbe) - if a.ReadinessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.ReadinessProbe.Handler.HTTPGet) - } - } - if a.Lifecycle != nil { - if a.Lifecycle.PostStart != nil { - if a.Lifecycle.PostStart.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PostStart.HTTPGet) - } - } - if a.Lifecycle.PreStop != nil { - if a.Lifecycle.PreStop.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PreStop.HTTPGet) - } - } - } - } -} - -func SetObjectDefaults_PodTemplateList(in *PodTemplateList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_PodTemplate(a) - } -} - -func SetObjectDefaults_ReplicationController(in *ReplicationController) { - SetDefaults_ReplicationController(in) - if in.Spec.Template != nil { - SetDefaults_PodSpec(&in.Spec.Template.Spec) - for i := range in.Spec.Template.Spec.Volumes { - a := &in.Spec.Template.Spec.Volumes[i] - SetDefaults_Volume(a) - if a.VolumeSource.Secret != nil { - SetDefaults_SecretVolumeSource(a.VolumeSource.Secret) - } - if a.VolumeSource.ISCSI != nil { - SetDefaults_ISCSIVolumeSource(a.VolumeSource.ISCSI) - } - if a.VolumeSource.RBD != nil { - SetDefaults_RBDVolumeSource(a.VolumeSource.RBD) - } - if a.VolumeSource.DownwardAPI != nil { - SetDefaults_DownwardAPIVolumeSource(a.VolumeSource.DownwardAPI) - for j := range a.VolumeSource.DownwardAPI.Items { - b := &a.VolumeSource.DownwardAPI.Items[j] - if b.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.FieldRef) - } - } - } - if a.VolumeSource.ConfigMap != nil { - SetDefaults_ConfigMapVolumeSource(a.VolumeSource.ConfigMap) - } - if a.VolumeSource.AzureDisk != nil { - SetDefaults_AzureDiskVolumeSource(a.VolumeSource.AzureDisk) - } - if a.VolumeSource.Projected != nil { - SetDefaults_ProjectedVolumeSource(a.VolumeSource.Projected) - for j := range a.VolumeSource.Projected.Sources { - b := &a.VolumeSource.Projected.Sources[j] - if b.DownwardAPI != nil { - for k := range b.DownwardAPI.Items { - c := &b.DownwardAPI.Items[k] - if c.FieldRef != nil { - SetDefaults_ObjectFieldSelector(c.FieldRef) - } - } - } - } - } - if a.VolumeSource.ScaleIO != nil { - SetDefaults_ScaleIOVolumeSource(a.VolumeSource.ScaleIO) - } - } - for i := range in.Spec.Template.Spec.InitContainers { - a := &in.Spec.Template.Spec.InitContainers[i] - SetDefaults_Container(a) - for j := range a.Ports { - b := &a.Ports[j] - SetDefaults_ContainerPort(b) - } - for j := range a.Env { - b := &a.Env[j] - if b.ValueFrom != nil { - if b.ValueFrom.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.ValueFrom.FieldRef) - } - } - } - SetDefaults_ResourceList(&a.Resources.Limits) - SetDefaults_ResourceList(&a.Resources.Requests) - if a.LivenessProbe != nil { - SetDefaults_Probe(a.LivenessProbe) - if a.LivenessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.LivenessProbe.Handler.HTTPGet) - } - } - if a.ReadinessProbe != nil { - SetDefaults_Probe(a.ReadinessProbe) - if a.ReadinessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.ReadinessProbe.Handler.HTTPGet) - } - } - if a.Lifecycle != nil { - if a.Lifecycle.PostStart != nil { - if a.Lifecycle.PostStart.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PostStart.HTTPGet) - } - } - if a.Lifecycle.PreStop != nil { - if a.Lifecycle.PreStop.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PreStop.HTTPGet) - } - } - } - } - for i := range in.Spec.Template.Spec.Containers { - a := &in.Spec.Template.Spec.Containers[i] - SetDefaults_Container(a) - for j := range a.Ports { - b := &a.Ports[j] - SetDefaults_ContainerPort(b) - } - for j := range a.Env { - b := &a.Env[j] - if b.ValueFrom != nil { - if b.ValueFrom.FieldRef != nil { - SetDefaults_ObjectFieldSelector(b.ValueFrom.FieldRef) - } - } - } - SetDefaults_ResourceList(&a.Resources.Limits) - SetDefaults_ResourceList(&a.Resources.Requests) - if a.LivenessProbe != nil { - SetDefaults_Probe(a.LivenessProbe) - if a.LivenessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.LivenessProbe.Handler.HTTPGet) - } - } - if a.ReadinessProbe != nil { - SetDefaults_Probe(a.ReadinessProbe) - if a.ReadinessProbe.Handler.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.ReadinessProbe.Handler.HTTPGet) - } - } - if a.Lifecycle != nil { - if a.Lifecycle.PostStart != nil { - if a.Lifecycle.PostStart.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PostStart.HTTPGet) - } - } - if a.Lifecycle.PreStop != nil { - if a.Lifecycle.PreStop.HTTPGet != nil { - SetDefaults_HTTPGetAction(a.Lifecycle.PreStop.HTTPGet) - } - } - } - } - } -} - -func SetObjectDefaults_ReplicationControllerList(in *ReplicationControllerList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_ReplicationController(a) - } -} - -func SetObjectDefaults_ResourceQuota(in *ResourceQuota) { - SetDefaults_ResourceList(&in.Spec.Hard) - SetDefaults_ResourceList(&in.Status.Hard) - SetDefaults_ResourceList(&in.Status.Used) -} - -func SetObjectDefaults_ResourceQuotaList(in *ResourceQuotaList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_ResourceQuota(a) - } -} - -func SetObjectDefaults_Secret(in *Secret) { - SetDefaults_Secret(in) -} - -func SetObjectDefaults_SecretList(in *SecretList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_Secret(a) - } -} - -func SetObjectDefaults_Service(in *Service) { - SetDefaults_Service(in) -} - -func SetObjectDefaults_ServiceList(in *ServiceList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_Service(a) - } -} 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 deleted file mode 100644 index b9b24716e..000000000 --- a/vendor/k8s.io/client-go/pkg/api/zz_generated.deepcopy.go +++ /dev/null @@ -1,3776 +0,0 @@ -// +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 api - -import ( - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" - conversion "k8s.io/apimachinery/pkg/conversion" - fields "k8s.io/apimachinery/pkg/fields" - labels "k8s.io/apimachinery/pkg/labels" - runtime "k8s.io/apimachinery/pkg/runtime" - types "k8s.io/apimachinery/pkg/types" - 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_api_AWSElasticBlockStoreVolumeSource, InType: reflect.TypeOf(&AWSElasticBlockStoreVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Affinity, InType: reflect.TypeOf(&Affinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AttachedVolume, InType: reflect.TypeOf(&AttachedVolume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AvoidPods, InType: reflect.TypeOf(&AvoidPods{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AzureDiskVolumeSource, InType: reflect.TypeOf(&AzureDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AzureFileVolumeSource, InType: reflect.TypeOf(&AzureFileVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Binding, InType: reflect.TypeOf(&Binding{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Capabilities, InType: reflect.TypeOf(&Capabilities{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_CephFSVolumeSource, InType: reflect.TypeOf(&CephFSVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_CinderVolumeSource, InType: reflect.TypeOf(&CinderVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ComponentCondition, InType: reflect.TypeOf(&ComponentCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ComponentStatus, InType: reflect.TypeOf(&ComponentStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ComponentStatusList, InType: reflect.TypeOf(&ComponentStatusList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMap, InType: reflect.TypeOf(&ConfigMap{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapEnvSource, InType: reflect.TypeOf(&ConfigMapEnvSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapKeySelector, InType: reflect.TypeOf(&ConfigMapKeySelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapList, InType: reflect.TypeOf(&ConfigMapList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapProjection, InType: reflect.TypeOf(&ConfigMapProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapVolumeSource, InType: reflect.TypeOf(&ConfigMapVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Container, InType: reflect.TypeOf(&Container{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerImage, InType: reflect.TypeOf(&ContainerImage{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerPort, InType: reflect.TypeOf(&ContainerPort{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerState, InType: reflect.TypeOf(&ContainerState{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStateRunning, InType: reflect.TypeOf(&ContainerStateRunning{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStateTerminated, InType: reflect.TypeOf(&ContainerStateTerminated{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStateWaiting, InType: reflect.TypeOf(&ContainerStateWaiting{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStatus, InType: reflect.TypeOf(&ContainerStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DaemonEndpoint, InType: reflect.TypeOf(&DaemonEndpoint{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DeleteOptions, InType: reflect.TypeOf(&DeleteOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DownwardAPIProjection, InType: reflect.TypeOf(&DownwardAPIProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DownwardAPIVolumeFile, InType: reflect.TypeOf(&DownwardAPIVolumeFile{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DownwardAPIVolumeSource, InType: reflect.TypeOf(&DownwardAPIVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EmptyDirVolumeSource, InType: reflect.TypeOf(&EmptyDirVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointAddress, InType: reflect.TypeOf(&EndpointAddress{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointPort, InType: reflect.TypeOf(&EndpointPort{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointSubset, InType: reflect.TypeOf(&EndpointSubset{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Endpoints, InType: reflect.TypeOf(&Endpoints{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointsList, InType: reflect.TypeOf(&EndpointsList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EnvFromSource, InType: reflect.TypeOf(&EnvFromSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EnvVar, InType: reflect.TypeOf(&EnvVar{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EnvVarSource, InType: reflect.TypeOf(&EnvVarSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Event, InType: reflect.TypeOf(&Event{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EventList, InType: reflect.TypeOf(&EventList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EventSource, InType: reflect.TypeOf(&EventSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ExecAction, InType: reflect.TypeOf(&ExecAction{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_FCVolumeSource, InType: reflect.TypeOf(&FCVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_FlexVolumeSource, InType: reflect.TypeOf(&FlexVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_FlockerVolumeSource, InType: reflect.TypeOf(&FlockerVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_GCEPersistentDiskVolumeSource, InType: reflect.TypeOf(&GCEPersistentDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_GitRepoVolumeSource, InType: reflect.TypeOf(&GitRepoVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_GlusterfsVolumeSource, InType: reflect.TypeOf(&GlusterfsVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HTTPGetAction, InType: reflect.TypeOf(&HTTPGetAction{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HTTPHeader, InType: reflect.TypeOf(&HTTPHeader{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Handler, InType: reflect.TypeOf(&Handler{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HostAlias, InType: reflect.TypeOf(&HostAlias{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HostPathVolumeSource, InType: reflect.TypeOf(&HostPathVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ISCSIVolumeSource, InType: reflect.TypeOf(&ISCSIVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_KeyToPath, InType: reflect.TypeOf(&KeyToPath{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Lifecycle, InType: reflect.TypeOf(&Lifecycle{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRange, InType: reflect.TypeOf(&LimitRange{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRangeItem, InType: reflect.TypeOf(&LimitRangeItem{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRangeList, InType: reflect.TypeOf(&LimitRangeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRangeSpec, InType: reflect.TypeOf(&LimitRangeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_List, InType: reflect.TypeOf(&List{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ListOptions, InType: reflect.TypeOf(&ListOptions{})}, - 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{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NamespaceSpec, InType: reflect.TypeOf(&NamespaceSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NamespaceStatus, InType: reflect.TypeOf(&NamespaceStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Node, InType: reflect.TypeOf(&Node{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeAddress, InType: reflect.TypeOf(&NodeAddress{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeAffinity, InType: reflect.TypeOf(&NodeAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeCondition, InType: reflect.TypeOf(&NodeCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeDaemonEndpoints, InType: reflect.TypeOf(&NodeDaemonEndpoints{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeList, InType: reflect.TypeOf(&NodeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeProxyOptions, InType: reflect.TypeOf(&NodeProxyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeResources, InType: reflect.TypeOf(&NodeResources{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSelector, InType: reflect.TypeOf(&NodeSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSelectorRequirement, InType: reflect.TypeOf(&NodeSelectorRequirement{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSelectorTerm, InType: reflect.TypeOf(&NodeSelectorTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSpec, InType: reflect.TypeOf(&NodeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeStatus, InType: reflect.TypeOf(&NodeStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSystemInfo, InType: reflect.TypeOf(&NodeSystemInfo{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ObjectFieldSelector, InType: reflect.TypeOf(&ObjectFieldSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ObjectMeta, InType: reflect.TypeOf(&ObjectMeta{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ObjectReference, InType: reflect.TypeOf(&ObjectReference{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolume, InType: reflect.TypeOf(&PersistentVolume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaim, InType: reflect.TypeOf(&PersistentVolumeClaim{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimList, InType: reflect.TypeOf(&PersistentVolumeClaimList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimSpec, InType: reflect.TypeOf(&PersistentVolumeClaimSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimStatus, InType: reflect.TypeOf(&PersistentVolumeClaimStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimVolumeSource, InType: reflect.TypeOf(&PersistentVolumeClaimVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeList, InType: reflect.TypeOf(&PersistentVolumeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeSource, InType: reflect.TypeOf(&PersistentVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeSpec, InType: reflect.TypeOf(&PersistentVolumeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeStatus, InType: reflect.TypeOf(&PersistentVolumeStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PhotonPersistentDiskVolumeSource, InType: reflect.TypeOf(&PhotonPersistentDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Pod, InType: reflect.TypeOf(&Pod{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAffinity, InType: reflect.TypeOf(&PodAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAffinityTerm, InType: reflect.TypeOf(&PodAffinityTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAntiAffinity, InType: reflect.TypeOf(&PodAntiAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAttachOptions, InType: reflect.TypeOf(&PodAttachOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodCondition, InType: reflect.TypeOf(&PodCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodExecOptions, InType: reflect.TypeOf(&PodExecOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodList, InType: reflect.TypeOf(&PodList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodLogOptions, InType: reflect.TypeOf(&PodLogOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodPortForwardOptions, InType: reflect.TypeOf(&PodPortForwardOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodProxyOptions, InType: reflect.TypeOf(&PodProxyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodSecurityContext, InType: reflect.TypeOf(&PodSecurityContext{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodSignature, InType: reflect.TypeOf(&PodSignature{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodSpec, InType: reflect.TypeOf(&PodSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodStatus, InType: reflect.TypeOf(&PodStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodStatusResult, InType: reflect.TypeOf(&PodStatusResult{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodTemplate, InType: reflect.TypeOf(&PodTemplate{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodTemplateList, InType: reflect.TypeOf(&PodTemplateList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodTemplateSpec, InType: reflect.TypeOf(&PodTemplateSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PortworxVolumeSource, InType: reflect.TypeOf(&PortworxVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Preconditions, InType: reflect.TypeOf(&Preconditions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PreferAvoidPodsEntry, InType: reflect.TypeOf(&PreferAvoidPodsEntry{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PreferredSchedulingTerm, InType: reflect.TypeOf(&PreferredSchedulingTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Probe, InType: reflect.TypeOf(&Probe{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ProjectedVolumeSource, InType: reflect.TypeOf(&ProjectedVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_QuobyteVolumeSource, InType: reflect.TypeOf(&QuobyteVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_RBDVolumeSource, InType: reflect.TypeOf(&RBDVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_RangeAllocation, InType: reflect.TypeOf(&RangeAllocation{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationController, InType: reflect.TypeOf(&ReplicationController{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerCondition, InType: reflect.TypeOf(&ReplicationControllerCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerList, InType: reflect.TypeOf(&ReplicationControllerList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerSpec, InType: reflect.TypeOf(&ReplicationControllerSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerStatus, InType: reflect.TypeOf(&ReplicationControllerStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceFieldSelector, InType: reflect.TypeOf(&ResourceFieldSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuota, InType: reflect.TypeOf(&ResourceQuota{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuotaList, InType: reflect.TypeOf(&ResourceQuotaList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuotaSpec, InType: reflect.TypeOf(&ResourceQuotaSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuotaStatus, InType: reflect.TypeOf(&ResourceQuotaStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceRequirements, InType: reflect.TypeOf(&ResourceRequirements{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SELinuxOptions, InType: reflect.TypeOf(&SELinuxOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ScaleIOVolumeSource, InType: reflect.TypeOf(&ScaleIOVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Secret, InType: reflect.TypeOf(&Secret{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretEnvSource, InType: reflect.TypeOf(&SecretEnvSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretKeySelector, InType: reflect.TypeOf(&SecretKeySelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretList, InType: reflect.TypeOf(&SecretList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretProjection, InType: reflect.TypeOf(&SecretProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretVolumeSource, InType: reflect.TypeOf(&SecretVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecurityContext, InType: reflect.TypeOf(&SecurityContext{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SerializedReference, InType: reflect.TypeOf(&SerializedReference{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Service, InType: reflect.TypeOf(&Service{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceAccount, InType: reflect.TypeOf(&ServiceAccount{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceAccountList, InType: reflect.TypeOf(&ServiceAccountList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceList, InType: reflect.TypeOf(&ServiceList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServicePort, InType: reflect.TypeOf(&ServicePort{})}, - 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{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Toleration, InType: reflect.TypeOf(&Toleration{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Volume, InType: reflect.TypeOf(&Volume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VolumeMount, InType: reflect.TypeOf(&VolumeMount{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VolumeProjection, InType: reflect.TypeOf(&VolumeProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VolumeSource, InType: reflect.TypeOf(&VolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VsphereVirtualDiskVolumeSource, InType: reflect.TypeOf(&VsphereVirtualDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_WeightedPodAffinityTerm, InType: reflect.TypeOf(&WeightedPodAffinityTerm{})}, - ) -} - -// DeepCopy_api_AWSElasticBlockStoreVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_AWSElasticBlockStoreVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AWSElasticBlockStoreVolumeSource) - out := out.(*AWSElasticBlockStoreVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_Affinity is an autogenerated deepcopy function. -func DeepCopy_api_Affinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Affinity) - out := out.(*Affinity) - *out = *in - if in.NodeAffinity != nil { - in, out := &in.NodeAffinity, &out.NodeAffinity - *out = new(NodeAffinity) - if err := DeepCopy_api_NodeAffinity(*in, *out, c); err != nil { - return err - } - } - if in.PodAffinity != nil { - in, out := &in.PodAffinity, &out.PodAffinity - *out = new(PodAffinity) - if err := DeepCopy_api_PodAffinity(*in, *out, c); err != nil { - return err - } - } - if in.PodAntiAffinity != nil { - in, out := &in.PodAntiAffinity, &out.PodAntiAffinity - *out = new(PodAntiAffinity) - if err := DeepCopy_api_PodAntiAffinity(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_AttachedVolume is an autogenerated deepcopy function. -func DeepCopy_api_AttachedVolume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AttachedVolume) - out := out.(*AttachedVolume) - *out = *in - return nil - } -} - -// DeepCopy_api_AvoidPods is an autogenerated deepcopy function. -func DeepCopy_api_AvoidPods(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AvoidPods) - out := out.(*AvoidPods) - *out = *in - if in.PreferAvoidPods != nil { - in, out := &in.PreferAvoidPods, &out.PreferAvoidPods - *out = make([]PreferAvoidPodsEntry, len(*in)) - for i := range *in { - if err := DeepCopy_api_PreferAvoidPodsEntry(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_AzureDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_AzureDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AzureDiskVolumeSource) - out := out.(*AzureDiskVolumeSource) - *out = *in - if in.CachingMode != nil { - in, out := &in.CachingMode, &out.CachingMode - *out = new(AzureDataDiskCachingMode) - **out = **in - } - if in.FSType != nil { - in, out := &in.FSType, &out.FSType - *out = new(string) - **out = **in - } - if in.ReadOnly != nil { - in, out := &in.ReadOnly, &out.ReadOnly - *out = new(bool) - **out = **in - } - if in.Kind != nil { - in, out := &in.Kind, &out.Kind - *out = new(AzureDataDiskKind) - **out = **in - } - return nil - } -} - -// DeepCopy_api_AzureFileVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_AzureFileVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AzureFileVolumeSource) - out := out.(*AzureFileVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_Binding is an autogenerated deepcopy function. -func DeepCopy_api_Binding(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Binding) - out := out.(*Binding) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - return nil - } -} - -// DeepCopy_api_Capabilities is an autogenerated deepcopy function. -func DeepCopy_api_Capabilities(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Capabilities) - out := out.(*Capabilities) - *out = *in - if in.Add != nil { - in, out := &in.Add, &out.Add - *out = make([]Capability, len(*in)) - copy(*out, *in) - } - if in.Drop != nil { - in, out := &in.Drop, &out.Drop - *out = make([]Capability, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_CephFSVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_CephFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CephFSVolumeSource) - out := out.(*CephFSVolumeSource) - *out = *in - if in.Monitors != nil { - in, out := &in.Monitors, &out.Monitors - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_api_CinderVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_CinderVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CinderVolumeSource) - out := out.(*CinderVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_ComponentCondition is an autogenerated deepcopy function. -func DeepCopy_api_ComponentCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentCondition) - out := out.(*ComponentCondition) - *out = *in - return nil - } -} - -// DeepCopy_api_ComponentStatus is an autogenerated deepcopy function. -func DeepCopy_api_ComponentStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentStatus) - out := out.(*ComponentStatus) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ComponentCondition, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ComponentStatusList is an autogenerated deepcopy function. -func DeepCopy_api_ComponentStatusList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentStatusList) - out := out.(*ComponentStatusList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ComponentStatus, len(*in)) - for i := range *in { - if err := DeepCopy_api_ComponentStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ConfigMap is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMap(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMap) - out := out.(*ConfigMap) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - return nil - } -} - -// DeepCopy_api_ConfigMapEnvSource is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapEnvSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapEnvSource) - out := out.(*ConfigMapEnvSource) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_ConfigMapKeySelector is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapKeySelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapKeySelector) - out := out.(*ConfigMapKeySelector) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_ConfigMapList is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapList) - out := out.(*ConfigMapList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ConfigMap, len(*in)) - for i := range *in { - if err := DeepCopy_api_ConfigMap(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ConfigMapProjection is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapProjection) - out := out.(*ConfigMapProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_ConfigMapVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapVolumeSource) - out := out.(*ConfigMapVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_Container is an autogenerated deepcopy function. -func DeepCopy_api_Container(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Container) - out := out.(*Container) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Args != nil { - in, out := &in.Args, &out.Args - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]ContainerPort, len(*in)) - copy(*out, *in) - } - if in.EnvFrom != nil { - in, out := &in.EnvFrom, &out.EnvFrom - *out = make([]EnvFromSource, len(*in)) - for i := range *in { - if err := DeepCopy_api_EnvFromSource(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Env != nil { - in, out := &in.Env, &out.Env - *out = make([]EnvVar, len(*in)) - for i := range *in { - if err := DeepCopy_api_EnvVar(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if err := DeepCopy_api_ResourceRequirements(&in.Resources, &out.Resources, c); err != nil { - return err - } - if in.VolumeMounts != nil { - in, out := &in.VolumeMounts, &out.VolumeMounts - *out = make([]VolumeMount, len(*in)) - copy(*out, *in) - } - if in.LivenessProbe != nil { - in, out := &in.LivenessProbe, &out.LivenessProbe - *out = new(Probe) - if err := DeepCopy_api_Probe(*in, *out, c); err != nil { - return err - } - } - if in.ReadinessProbe != nil { - in, out := &in.ReadinessProbe, &out.ReadinessProbe - *out = new(Probe) - if err := DeepCopy_api_Probe(*in, *out, c); err != nil { - return err - } - } - if in.Lifecycle != nil { - in, out := &in.Lifecycle, &out.Lifecycle - *out = new(Lifecycle) - if err := DeepCopy_api_Lifecycle(*in, *out, c); err != nil { - return err - } - } - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext - *out = new(SecurityContext) - if err := DeepCopy_api_SecurityContext(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_ContainerImage is an autogenerated deepcopy function. -func DeepCopy_api_ContainerImage(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerImage) - out := out.(*ContainerImage) - *out = *in - if in.Names != nil { - in, out := &in.Names, &out.Names - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ContainerPort is an autogenerated deepcopy function. -func DeepCopy_api_ContainerPort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerPort) - out := out.(*ContainerPort) - *out = *in - return nil - } -} - -// DeepCopy_api_ContainerState is an autogenerated deepcopy function. -func DeepCopy_api_ContainerState(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerState) - out := out.(*ContainerState) - *out = *in - if in.Waiting != nil { - in, out := &in.Waiting, &out.Waiting - *out = new(ContainerStateWaiting) - **out = **in - } - if in.Running != nil { - in, out := &in.Running, &out.Running - *out = new(ContainerStateRunning) - if err := DeepCopy_api_ContainerStateRunning(*in, *out, c); err != nil { - return err - } - } - if in.Terminated != nil { - in, out := &in.Terminated, &out.Terminated - *out = new(ContainerStateTerminated) - if err := DeepCopy_api_ContainerStateTerminated(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_ContainerStateRunning is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStateRunning(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateRunning) - out := out.(*ContainerStateRunning) - *out = *in - out.StartedAt = in.StartedAt.DeepCopy() - return nil - } -} - -// DeepCopy_api_ContainerStateTerminated is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStateTerminated(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateTerminated) - out := out.(*ContainerStateTerminated) - *out = *in - out.StartedAt = in.StartedAt.DeepCopy() - out.FinishedAt = in.FinishedAt.DeepCopy() - return nil - } -} - -// DeepCopy_api_ContainerStateWaiting is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStateWaiting(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateWaiting) - out := out.(*ContainerStateWaiting) - *out = *in - return nil - } -} - -// DeepCopy_api_ContainerStatus is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStatus) - out := out.(*ContainerStatus) - *out = *in - if err := DeepCopy_api_ContainerState(&in.State, &out.State, c); err != nil { - return err - } - if err := DeepCopy_api_ContainerState(&in.LastTerminationState, &out.LastTerminationState, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_DaemonEndpoint is an autogenerated deepcopy function. -func DeepCopy_api_DaemonEndpoint(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DaemonEndpoint) - out := out.(*DaemonEndpoint) - *out = *in - return nil - } -} - -// DeepCopy_api_DeleteOptions is an autogenerated deepcopy function. -func DeepCopy_api_DeleteOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeleteOptions) - out := out.(*DeleteOptions) - *out = *in - if in.GracePeriodSeconds != nil { - in, out := &in.GracePeriodSeconds, &out.GracePeriodSeconds - *out = new(int64) - **out = **in - } - if in.Preconditions != nil { - in, out := &in.Preconditions, &out.Preconditions - *out = new(Preconditions) - if err := DeepCopy_api_Preconditions(*in, *out, c); err != nil { - return err - } - } - if in.OrphanDependents != nil { - in, out := &in.OrphanDependents, &out.OrphanDependents - *out = new(bool) - **out = **in - } - if in.PropagationPolicy != nil { - in, out := &in.PropagationPolicy, &out.PropagationPolicy - *out = new(DeletionPropagation) - **out = **in - } - return nil - } -} - -// DeepCopy_api_DownwardAPIProjection is an autogenerated deepcopy function. -func DeepCopy_api_DownwardAPIProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIProjection) - out := out.(*DownwardAPIProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DownwardAPIVolumeFile, len(*in)) - for i := range *in { - if err := DeepCopy_api_DownwardAPIVolumeFile(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_DownwardAPIVolumeFile is an autogenerated deepcopy function. -func DeepCopy_api_DownwardAPIVolumeFile(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIVolumeFile) - out := out.(*DownwardAPIVolumeFile) - *out = *in - if in.FieldRef != nil { - in, out := &in.FieldRef, &out.FieldRef - *out = new(ObjectFieldSelector) - **out = **in - } - if in.ResourceFieldRef != nil { - in, out := &in.ResourceFieldRef, &out.ResourceFieldRef - *out = new(ResourceFieldSelector) - if err := DeepCopy_api_ResourceFieldSelector(*in, *out, c); err != nil { - return err - } - } - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_api_DownwardAPIVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_DownwardAPIVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIVolumeSource) - out := out.(*DownwardAPIVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DownwardAPIVolumeFile, len(*in)) - for i := range *in { - if err := DeepCopy_api_DownwardAPIVolumeFile(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_api_EmptyDirVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_EmptyDirVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EmptyDirVolumeSource) - out := out.(*EmptyDirVolumeSource) - *out = *in - out.SizeLimit = in.SizeLimit.DeepCopy() - return nil - } -} - -// DeepCopy_api_EndpointAddress is an autogenerated deepcopy function. -func DeepCopy_api_EndpointAddress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointAddress) - out := out.(*EndpointAddress) - *out = *in - if in.NodeName != nil { - in, out := &in.NodeName, &out.NodeName - *out = new(string) - **out = **in - } - if in.TargetRef != nil { - in, out := &in.TargetRef, &out.TargetRef - *out = new(ObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_api_EndpointPort is an autogenerated deepcopy function. -func DeepCopy_api_EndpointPort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointPort) - out := out.(*EndpointPort) - *out = *in - return nil - } -} - -// DeepCopy_api_EndpointSubset is an autogenerated deepcopy function. -func DeepCopy_api_EndpointSubset(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointSubset) - out := out.(*EndpointSubset) - *out = *in - if in.Addresses != nil { - in, out := &in.Addresses, &out.Addresses - *out = make([]EndpointAddress, len(*in)) - for i := range *in { - if err := DeepCopy_api_EndpointAddress(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.NotReadyAddresses != nil { - in, out := &in.NotReadyAddresses, &out.NotReadyAddresses - *out = make([]EndpointAddress, len(*in)) - for i := range *in { - if err := DeepCopy_api_EndpointAddress(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]EndpointPort, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_Endpoints is an autogenerated deepcopy function. -func DeepCopy_api_Endpoints(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Endpoints) - out := out.(*Endpoints) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Subsets != nil { - in, out := &in.Subsets, &out.Subsets - *out = make([]EndpointSubset, len(*in)) - for i := range *in { - if err := DeepCopy_api_EndpointSubset(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_EndpointsList is an autogenerated deepcopy function. -func DeepCopy_api_EndpointsList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointsList) - out := out.(*EndpointsList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Endpoints, len(*in)) - for i := range *in { - if err := DeepCopy_api_Endpoints(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_EnvFromSource is an autogenerated deepcopy function. -func DeepCopy_api_EnvFromSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvFromSource) - out := out.(*EnvFromSource) - *out = *in - if in.ConfigMapRef != nil { - in, out := &in.ConfigMapRef, &out.ConfigMapRef - *out = new(ConfigMapEnvSource) - if err := DeepCopy_api_ConfigMapEnvSource(*in, *out, c); err != nil { - return err - } - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(SecretEnvSource) - if err := DeepCopy_api_SecretEnvSource(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_EnvVar is an autogenerated deepcopy function. -func DeepCopy_api_EnvVar(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvVar) - out := out.(*EnvVar) - *out = *in - if in.ValueFrom != nil { - in, out := &in.ValueFrom, &out.ValueFrom - *out = new(EnvVarSource) - if err := DeepCopy_api_EnvVarSource(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_EnvVarSource is an autogenerated deepcopy function. -func DeepCopy_api_EnvVarSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvVarSource) - out := out.(*EnvVarSource) - *out = *in - if in.FieldRef != nil { - in, out := &in.FieldRef, &out.FieldRef - *out = new(ObjectFieldSelector) - **out = **in - } - if in.ResourceFieldRef != nil { - in, out := &in.ResourceFieldRef, &out.ResourceFieldRef - *out = new(ResourceFieldSelector) - if err := DeepCopy_api_ResourceFieldSelector(*in, *out, c); err != nil { - return err - } - } - if in.ConfigMapKeyRef != nil { - in, out := &in.ConfigMapKeyRef, &out.ConfigMapKeyRef - *out = new(ConfigMapKeySelector) - if err := DeepCopy_api_ConfigMapKeySelector(*in, *out, c); err != nil { - return err - } - } - if in.SecretKeyRef != nil { - in, out := &in.SecretKeyRef, &out.SecretKeyRef - *out = new(SecretKeySelector) - if err := DeepCopy_api_SecretKeySelector(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_Event is an autogenerated deepcopy function. -func DeepCopy_api_Event(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Event) - out := out.(*Event) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - out.FirstTimestamp = in.FirstTimestamp.DeepCopy() - out.LastTimestamp = in.LastTimestamp.DeepCopy() - return nil - } -} - -// DeepCopy_api_EventList is an autogenerated deepcopy function. -func DeepCopy_api_EventList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EventList) - out := out.(*EventList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Event, len(*in)) - for i := range *in { - if err := DeepCopy_api_Event(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_EventSource is an autogenerated deepcopy function. -func DeepCopy_api_EventSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EventSource) - out := out.(*EventSource) - *out = *in - return nil - } -} - -// DeepCopy_api_ExecAction is an autogenerated deepcopy function. -func DeepCopy_api_ExecAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ExecAction) - out := out.(*ExecAction) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_FCVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_FCVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FCVolumeSource) - out := out.(*FCVolumeSource) - *out = *in - if in.TargetWWNs != nil { - in, out := &in.TargetWWNs, &out.TargetWWNs - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_api_FlexVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_FlexVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FlexVolumeSource) - out := out.(*FlexVolumeSource) - *out = *in - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - if in.Options != nil { - in, out := &in.Options, &out.Options - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - return nil - } -} - -// DeepCopy_api_FlockerVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_FlockerVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FlockerVolumeSource) - out := out.(*FlockerVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_GCEPersistentDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_GCEPersistentDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GCEPersistentDiskVolumeSource) - out := out.(*GCEPersistentDiskVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_GitRepoVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_GitRepoVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GitRepoVolumeSource) - out := out.(*GitRepoVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_GlusterfsVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_GlusterfsVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GlusterfsVolumeSource) - out := out.(*GlusterfsVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_HTTPGetAction is an autogenerated deepcopy function. -func DeepCopy_api_HTTPGetAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPGetAction) - out := out.(*HTTPGetAction) - *out = *in - if in.HTTPHeaders != nil { - in, out := &in.HTTPHeaders, &out.HTTPHeaders - *out = make([]HTTPHeader, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_HTTPHeader is an autogenerated deepcopy function. -func DeepCopy_api_HTTPHeader(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPHeader) - out := out.(*HTTPHeader) - *out = *in - return nil - } -} - -// DeepCopy_api_Handler is an autogenerated deepcopy function. -func DeepCopy_api_Handler(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Handler) - out := out.(*Handler) - *out = *in - if in.Exec != nil { - in, out := &in.Exec, &out.Exec - *out = new(ExecAction) - if err := DeepCopy_api_ExecAction(*in, *out, c); err != nil { - return err - } - } - if in.HTTPGet != nil { - in, out := &in.HTTPGet, &out.HTTPGet - *out = new(HTTPGetAction) - if err := DeepCopy_api_HTTPGetAction(*in, *out, c); err != nil { - return err - } - } - if in.TCPSocket != nil { - in, out := &in.TCPSocket, &out.TCPSocket - *out = new(TCPSocketAction) - **out = **in - } - return nil - } -} - -// DeepCopy_api_HostAlias is an autogenerated deepcopy function. -func DeepCopy_api_HostAlias(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HostAlias) - out := out.(*HostAlias) - *out = *in - if in.Hostnames != nil { - in, out := &in.Hostnames, &out.Hostnames - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_HostPathVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_HostPathVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HostPathVolumeSource) - out := out.(*HostPathVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_ISCSIVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ISCSIVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ISCSIVolumeSource) - out := out.(*ISCSIVolumeSource) - *out = *in - if in.Portals != nil { - in, out := &in.Portals, &out.Portals - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_api_KeyToPath is an autogenerated deepcopy function. -func DeepCopy_api_KeyToPath(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*KeyToPath) - out := out.(*KeyToPath) - *out = *in - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_api_Lifecycle is an autogenerated deepcopy function. -func DeepCopy_api_Lifecycle(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Lifecycle) - out := out.(*Lifecycle) - *out = *in - if in.PostStart != nil { - in, out := &in.PostStart, &out.PostStart - *out = new(Handler) - if err := DeepCopy_api_Handler(*in, *out, c); err != nil { - return err - } - } - if in.PreStop != nil { - in, out := &in.PreStop, &out.PreStop - *out = new(Handler) - if err := DeepCopy_api_Handler(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_LimitRange is an autogenerated deepcopy function. -func DeepCopy_api_LimitRange(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRange) - out := out.(*LimitRange) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_LimitRangeSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_LimitRangeItem is an autogenerated deepcopy function. -func DeepCopy_api_LimitRangeItem(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeItem) - out := out.(*LimitRangeItem) - *out = *in - if in.Max != nil { - in, out := &in.Max, &out.Max - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Min != nil { - in, out := &in.Min, &out.Min - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Default != nil { - in, out := &in.Default, &out.Default - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.DefaultRequest != nil { - in, out := &in.DefaultRequest, &out.DefaultRequest - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.MaxLimitRequestRatio != nil { - in, out := &in.MaxLimitRequestRatio, &out.MaxLimitRequestRatio - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_api_LimitRangeList is an autogenerated deepcopy function. -func DeepCopy_api_LimitRangeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeList) - out := out.(*LimitRangeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]LimitRange, len(*in)) - for i := range *in { - if err := DeepCopy_api_LimitRange(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_LimitRangeSpec is an autogenerated deepcopy function. -func DeepCopy_api_LimitRangeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeSpec) - out := out.(*LimitRangeSpec) - *out = *in - if in.Limits != nil { - in, out := &in.Limits, &out.Limits - *out = make([]LimitRangeItem, len(*in)) - for i := range *in { - if err := DeepCopy_api_LimitRangeItem(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_List is an autogenerated deepcopy function. -func DeepCopy_api_List(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*List) - out := out.(*List) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]runtime.Object, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*runtime.Object) - } - } - } - return nil - } -} - -// DeepCopy_api_ListOptions is an autogenerated deepcopy function. -func DeepCopy_api_ListOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ListOptions) - out := out.(*ListOptions) - *out = *in - // in.LabelSelector is kind 'Interface' - if in.LabelSelector != nil { - if newVal, err := c.DeepCopy(&in.LabelSelector); err != nil { - return err - } else { - out.LabelSelector = *newVal.(*labels.Selector) - } - } - // in.FieldSelector is kind 'Interface' - if in.FieldSelector != nil { - if newVal, err := c.DeepCopy(&in.FieldSelector); err != nil { - return err - } else { - out.FieldSelector = *newVal.(*fields.Selector) - } - } - if in.TimeoutSeconds != nil { - in, out := &in.TimeoutSeconds, &out.TimeoutSeconds - *out = new(int64) - **out = **in - } - return nil - } -} - -// DeepCopy_api_LoadBalancerIngress is an autogenerated deepcopy function. -func DeepCopy_api_LoadBalancerIngress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LoadBalancerIngress) - out := out.(*LoadBalancerIngress) - *out = *in - return nil - } -} - -// DeepCopy_api_LoadBalancerStatus is an autogenerated deepcopy function. -func DeepCopy_api_LoadBalancerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LoadBalancerStatus) - out := out.(*LoadBalancerStatus) - *out = *in - if in.Ingress != nil { - in, out := &in.Ingress, &out.Ingress - *out = make([]LoadBalancerIngress, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_LocalObjectReference is an autogenerated deepcopy function. -func DeepCopy_api_LocalObjectReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LocalObjectReference) - out := out.(*LocalObjectReference) - *out = *in - return nil - } -} - -// 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 { - { - in := in.(*NFSVolumeSource) - out := out.(*NFSVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_Namespace is an autogenerated deepcopy function. -func DeepCopy_api_Namespace(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Namespace) - out := out.(*Namespace) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_NamespaceSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_NamespaceList is an autogenerated deepcopy function. -func DeepCopy_api_NamespaceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceList) - out := out.(*NamespaceList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Namespace, len(*in)) - for i := range *in { - if err := DeepCopy_api_Namespace(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_NamespaceSpec is an autogenerated deepcopy function. -func DeepCopy_api_NamespaceSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceSpec) - out := out.(*NamespaceSpec) - *out = *in - if in.Finalizers != nil { - in, out := &in.Finalizers, &out.Finalizers - *out = make([]FinalizerName, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_NamespaceStatus is an autogenerated deepcopy function. -func DeepCopy_api_NamespaceStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceStatus) - out := out.(*NamespaceStatus) - *out = *in - return nil - } -} - -// DeepCopy_api_Node is an autogenerated deepcopy function. -func DeepCopy_api_Node(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Node) - out := out.(*Node) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_NodeSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_NodeStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_NodeAddress is an autogenerated deepcopy function. -func DeepCopy_api_NodeAddress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeAddress) - out := out.(*NodeAddress) - *out = *in - return nil - } -} - -// DeepCopy_api_NodeAffinity is an autogenerated deepcopy function. -func DeepCopy_api_NodeAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeAffinity) - out := out.(*NodeAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = new(NodeSelector) - if err := DeepCopy_api_NodeSelector(*in, *out, c); err != nil { - return err - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]PreferredSchedulingTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_PreferredSchedulingTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_NodeCondition is an autogenerated deepcopy function. -func DeepCopy_api_NodeCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeCondition) - out := out.(*NodeCondition) - *out = *in - out.LastHeartbeatTime = in.LastHeartbeatTime.DeepCopy() - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_api_NodeDaemonEndpoints is an autogenerated deepcopy function. -func DeepCopy_api_NodeDaemonEndpoints(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeDaemonEndpoints) - out := out.(*NodeDaemonEndpoints) - *out = *in - return nil - } -} - -// DeepCopy_api_NodeList is an autogenerated deepcopy function. -func DeepCopy_api_NodeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeList) - out := out.(*NodeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Node, len(*in)) - for i := range *in { - if err := DeepCopy_api_Node(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_NodeProxyOptions is an autogenerated deepcopy function. -func DeepCopy_api_NodeProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeProxyOptions) - out := out.(*NodeProxyOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_NodeResources is an autogenerated deepcopy function. -func DeepCopy_api_NodeResources(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeResources) - out := out.(*NodeResources) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_api_NodeSelector is an autogenerated deepcopy function. -func DeepCopy_api_NodeSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelector) - out := out.(*NodeSelector) - *out = *in - if in.NodeSelectorTerms != nil { - in, out := &in.NodeSelectorTerms, &out.NodeSelectorTerms - *out = make([]NodeSelectorTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_NodeSelectorTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_NodeSelectorRequirement is an autogenerated deepcopy function. -func DeepCopy_api_NodeSelectorRequirement(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelectorRequirement) - out := out.(*NodeSelectorRequirement) - *out = *in - if in.Values != nil { - in, out := &in.Values, &out.Values - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_NodeSelectorTerm is an autogenerated deepcopy function. -func DeepCopy_api_NodeSelectorTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelectorTerm) - out := out.(*NodeSelectorTerm) - *out = *in - if in.MatchExpressions != nil { - in, out := &in.MatchExpressions, &out.MatchExpressions - *out = make([]NodeSelectorRequirement, len(*in)) - for i := range *in { - if err := DeepCopy_api_NodeSelectorRequirement(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_NodeSpec is an autogenerated deepcopy function. -func DeepCopy_api_NodeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSpec) - out := out.(*NodeSpec) - *out = *in - if in.Taints != nil { - in, out := &in.Taints, &out.Taints - *out = make([]Taint, len(*in)) - for i := range *in { - if err := DeepCopy_api_Taint(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_NodeStatus is an autogenerated deepcopy function. -func DeepCopy_api_NodeStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeStatus) - out := out.(*NodeStatus) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Allocatable != nil { - in, out := &in.Allocatable, &out.Allocatable - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]NodeCondition, len(*in)) - for i := range *in { - if err := DeepCopy_api_NodeCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Addresses != nil { - in, out := &in.Addresses, &out.Addresses - *out = make([]NodeAddress, len(*in)) - copy(*out, *in) - } - if in.Images != nil { - in, out := &in.Images, &out.Images - *out = make([]ContainerImage, len(*in)) - for i := range *in { - if err := DeepCopy_api_ContainerImage(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.VolumesInUse != nil { - in, out := &in.VolumesInUse, &out.VolumesInUse - *out = make([]UniqueVolumeName, len(*in)) - copy(*out, *in) - } - if in.VolumesAttached != nil { - in, out := &in.VolumesAttached, &out.VolumesAttached - *out = make([]AttachedVolume, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_NodeSystemInfo is an autogenerated deepcopy function. -func DeepCopy_api_NodeSystemInfo(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSystemInfo) - out := out.(*NodeSystemInfo) - *out = *in - return nil - } -} - -// DeepCopy_api_ObjectFieldSelector is an autogenerated deepcopy function. -func DeepCopy_api_ObjectFieldSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectFieldSelector) - out := out.(*ObjectFieldSelector) - *out = *in - return nil - } -} - -// DeepCopy_api_ObjectMeta is an autogenerated deepcopy function. -func DeepCopy_api_ObjectMeta(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectMeta) - out := out.(*ObjectMeta) - *out = *in - out.CreationTimestamp = in.CreationTimestamp.DeepCopy() - if in.DeletionTimestamp != nil { - in, out := &in.DeletionTimestamp, &out.DeletionTimestamp - *out = new(v1.Time) - **out = (*in).DeepCopy() - } - if in.DeletionGracePeriodSeconds != nil { - in, out := &in.DeletionGracePeriodSeconds, &out.DeletionGracePeriodSeconds - *out = new(int64) - **out = **in - } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.Annotations != nil { - in, out := &in.Annotations, &out.Annotations - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.OwnerReferences != nil { - in, out := &in.OwnerReferences, &out.OwnerReferences - *out = make([]v1.OwnerReference, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*v1.OwnerReference) - } - } - } - if in.Initializers != nil { - in, out := &in.Initializers, &out.Initializers - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.Initializers) - } - } - if in.Finalizers != nil { - in, out := &in.Finalizers, &out.Finalizers - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ObjectReference is an autogenerated deepcopy function. -func DeepCopy_api_ObjectReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectReference) - out := out.(*ObjectReference) - *out = *in - return nil - } -} - -// DeepCopy_api_PersistentVolume is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolume) - out := out.(*PersistentVolume) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PersistentVolumeSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeClaim is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaim(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaim) - out := out.(*PersistentVolumeClaim) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PersistentVolumeClaimSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_PersistentVolumeClaimStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeClaimList is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimList) - out := out.(*PersistentVolumeClaimList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PersistentVolumeClaim, len(*in)) - for i := range *in { - if err := DeepCopy_api_PersistentVolumeClaim(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeClaimSpec is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimSpec) - out := out.(*PersistentVolumeClaimSpec) - *out = *in - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - if err := DeepCopy_api_ResourceRequirements(&in.Resources, &out.Resources, c); err != nil { - return err - } - if in.StorageClassName != nil { - in, out := &in.StorageClassName, &out.StorageClassName - *out = new(string) - **out = **in - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeClaimStatus is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimStatus) - out := out.(*PersistentVolumeClaimStatus) - *out = *in - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeClaimVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimVolumeSource) - out := out.(*PersistentVolumeClaimVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_PersistentVolumeList is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeList) - out := out.(*PersistentVolumeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PersistentVolume, len(*in)) - for i := range *in { - if err := DeepCopy_api_PersistentVolume(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeSource) - out := out.(*PersistentVolumeSource) - *out = *in - if in.GCEPersistentDisk != nil { - in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk - *out = new(GCEPersistentDiskVolumeSource) - **out = **in - } - if in.AWSElasticBlockStore != nil { - in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore - *out = new(AWSElasticBlockStoreVolumeSource) - **out = **in - } - if in.HostPath != nil { - in, out := &in.HostPath, &out.HostPath - *out = new(HostPathVolumeSource) - **out = **in - } - if in.Glusterfs != nil { - in, out := &in.Glusterfs, &out.Glusterfs - *out = new(GlusterfsVolumeSource) - **out = **in - } - if in.NFS != nil { - in, out := &in.NFS, &out.NFS - *out = new(NFSVolumeSource) - **out = **in - } - if in.RBD != nil { - in, out := &in.RBD, &out.RBD - *out = new(RBDVolumeSource) - if err := DeepCopy_api_RBDVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Quobyte != nil { - in, out := &in.Quobyte, &out.Quobyte - *out = new(QuobyteVolumeSource) - **out = **in - } - if in.ISCSI != nil { - in, out := &in.ISCSI, &out.ISCSI - *out = new(ISCSIVolumeSource) - if err := DeepCopy_api_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.FlexVolume != nil { - in, out := &in.FlexVolume, &out.FlexVolume - *out = new(FlexVolumeSource) - if err := DeepCopy_api_FlexVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Cinder != nil { - in, out := &in.Cinder, &out.Cinder - *out = new(CinderVolumeSource) - **out = **in - } - if in.CephFS != nil { - in, out := &in.CephFS, &out.CephFS - *out = new(CephFSVolumeSource) - if err := DeepCopy_api_CephFSVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.FC != nil { - in, out := &in.FC, &out.FC - *out = new(FCVolumeSource) - if err := DeepCopy_api_FCVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Flocker != nil { - in, out := &in.Flocker, &out.Flocker - *out = new(FlockerVolumeSource) - **out = **in - } - if in.AzureFile != nil { - in, out := &in.AzureFile, &out.AzureFile - *out = new(AzureFileVolumeSource) - **out = **in - } - if in.VsphereVolume != nil { - in, out := &in.VsphereVolume, &out.VsphereVolume - *out = new(VsphereVirtualDiskVolumeSource) - **out = **in - } - if in.AzureDisk != nil { - in, out := &in.AzureDisk, &out.AzureDisk - *out = new(AzureDiskVolumeSource) - if err := DeepCopy_api_AzureDiskVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.PhotonPersistentDisk != nil { - in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk - *out = new(PhotonPersistentDiskVolumeSource) - **out = **in - } - if in.PortworxVolume != nil { - in, out := &in.PortworxVolume, &out.PortworxVolume - *out = new(PortworxVolumeSource) - **out = **in - } - if in.ScaleIO != nil { - in, out := &in.ScaleIO, &out.ScaleIO - *out = new(ScaleIOVolumeSource) - if err := DeepCopy_api_ScaleIOVolumeSource(*in, *out, c); err != nil { - 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 - } -} - -// DeepCopy_api_PersistentVolumeSpec is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeSpec) - out := out.(*PersistentVolumeSpec) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if err := DeepCopy_api_PersistentVolumeSource(&in.PersistentVolumeSource, &out.PersistentVolumeSource, c); err != nil { - return err - } - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.ClaimRef != nil { - in, out := &in.ClaimRef, &out.ClaimRef - *out = new(ObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeStatus is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeStatus) - out := out.(*PersistentVolumeStatus) - *out = *in - return nil - } -} - -// DeepCopy_api_PhotonPersistentDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PhotonPersistentDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PhotonPersistentDiskVolumeSource) - out := out.(*PhotonPersistentDiskVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_Pod is an autogenerated deepcopy function. -func DeepCopy_api_Pod(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Pod) - out := out.(*Pod) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PodSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_PodStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PodAffinity is an autogenerated deepcopy function. -func DeepCopy_api_PodAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAffinity) - out := out.(*PodAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = make([]PodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]WeightedPodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_WeightedPodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodAffinityTerm is an autogenerated deepcopy function. -func DeepCopy_api_PodAffinityTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAffinityTerm) - out := out.(*PodAffinityTerm) - *out = *in - if in.LabelSelector != nil { - in, out := &in.LabelSelector, &out.LabelSelector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - if in.Namespaces != nil { - in, out := &in.Namespaces, &out.Namespaces - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_PodAntiAffinity is an autogenerated deepcopy function. -func DeepCopy_api_PodAntiAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAntiAffinity) - out := out.(*PodAntiAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = make([]PodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]WeightedPodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_WeightedPodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodAttachOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodAttachOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAttachOptions) - out := out.(*PodAttachOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_PodCondition is an autogenerated deepcopy function. -func DeepCopy_api_PodCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodCondition) - out := out.(*PodCondition) - *out = *in - out.LastProbeTime = in.LastProbeTime.DeepCopy() - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_api_PodExecOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodExecOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodExecOptions) - out := out.(*PodExecOptions) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_PodList is an autogenerated deepcopy function. -func DeepCopy_api_PodList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodList) - out := out.(*PodList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Pod, len(*in)) - for i := range *in { - if err := DeepCopy_api_Pod(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodLogOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodLogOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodLogOptions) - out := out.(*PodLogOptions) - *out = *in - if in.SinceSeconds != nil { - in, out := &in.SinceSeconds, &out.SinceSeconds - *out = new(int64) - **out = **in - } - if in.SinceTime != nil { - in, out := &in.SinceTime, &out.SinceTime - *out = new(v1.Time) - **out = (*in).DeepCopy() - } - if in.TailLines != nil { - in, out := &in.TailLines, &out.TailLines - *out = new(int64) - **out = **in - } - if in.LimitBytes != nil { - in, out := &in.LimitBytes, &out.LimitBytes - *out = new(int64) - **out = **in - } - return nil - } -} - -// DeepCopy_api_PodPortForwardOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodPortForwardOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodPortForwardOptions) - out := out.(*PodPortForwardOptions) - *out = *in - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]int32, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_PodProxyOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodProxyOptions) - out := out.(*PodProxyOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_PodSecurityContext is an autogenerated deepcopy function. -func DeepCopy_api_PodSecurityContext(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSecurityContext) - out := out.(*PodSecurityContext) - *out = *in - if in.SELinuxOptions != nil { - in, out := &in.SELinuxOptions, &out.SELinuxOptions - *out = new(SELinuxOptions) - **out = **in - } - if in.RunAsUser != nil { - in, out := &in.RunAsUser, &out.RunAsUser - *out = new(types.UnixUserID) - **out = **in - } - if in.RunAsNonRoot != nil { - in, out := &in.RunAsNonRoot, &out.RunAsNonRoot - *out = new(bool) - **out = **in - } - if in.SupplementalGroups != nil { - in, out := &in.SupplementalGroups, &out.SupplementalGroups - *out = make([]types.UnixGroupID, len(*in)) - copy(*out, *in) - } - if in.FSGroup != nil { - in, out := &in.FSGroup, &out.FSGroup - *out = new(types.UnixGroupID) - **out = **in - } - return nil - } -} - -// DeepCopy_api_PodSignature is an autogenerated deepcopy function. -func DeepCopy_api_PodSignature(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSignature) - out := out.(*PodSignature) - *out = *in - if in.PodController != nil { - in, out := &in.PodController, &out.PodController - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.OwnerReference) - } - } - return nil - } -} - -// DeepCopy_api_PodSpec is an autogenerated deepcopy function. -func DeepCopy_api_PodSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSpec) - out := out.(*PodSpec) - *out = *in - if in.Volumes != nil { - in, out := &in.Volumes, &out.Volumes - *out = make([]Volume, len(*in)) - for i := range *in { - if err := DeepCopy_api_Volume(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.InitContainers != nil { - in, out := &in.InitContainers, &out.InitContainers - *out = make([]Container, len(*in)) - for i := range *in { - if err := DeepCopy_api_Container(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Containers != nil { - in, out := &in.Containers, &out.Containers - *out = make([]Container, len(*in)) - for i := range *in { - if err := DeepCopy_api_Container(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.TerminationGracePeriodSeconds != nil { - in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds - *out = new(int64) - **out = **in - } - if in.ActiveDeadlineSeconds != nil { - in, out := &in.ActiveDeadlineSeconds, &out.ActiveDeadlineSeconds - *out = new(int64) - **out = **in - } - if in.NodeSelector != nil { - in, out := &in.NodeSelector, &out.NodeSelector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.AutomountServiceAccountToken != nil { - in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken - *out = new(bool) - **out = **in - } - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext - *out = new(PodSecurityContext) - if err := DeepCopy_api_PodSecurityContext(*in, *out, c); err != nil { - return err - } - } - if in.ImagePullSecrets != nil { - in, out := &in.ImagePullSecrets, &out.ImagePullSecrets - *out = make([]LocalObjectReference, len(*in)) - copy(*out, *in) - } - if in.Affinity != nil { - in, out := &in.Affinity, &out.Affinity - *out = new(Affinity) - if err := DeepCopy_api_Affinity(*in, *out, c); err != nil { - return err - } - } - if in.Tolerations != nil { - in, out := &in.Tolerations, &out.Tolerations - *out = make([]Toleration, len(*in)) - for i := range *in { - if err := DeepCopy_api_Toleration(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.HostAliases != nil { - in, out := &in.HostAliases, &out.HostAliases - *out = make([]HostAlias, len(*in)) - for i := range *in { - if err := DeepCopy_api_HostAlias(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodStatus is an autogenerated deepcopy function. -func DeepCopy_api_PodStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodStatus) - out := out.(*PodStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]PodCondition, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.StartTime != nil { - in, out := &in.StartTime, &out.StartTime - *out = new(v1.Time) - **out = (*in).DeepCopy() - } - if in.InitContainerStatuses != nil { - in, out := &in.InitContainerStatuses, &out.InitContainerStatuses - *out = make([]ContainerStatus, len(*in)) - for i := range *in { - if err := DeepCopy_api_ContainerStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.ContainerStatuses != nil { - in, out := &in.ContainerStatuses, &out.ContainerStatuses - *out = make([]ContainerStatus, len(*in)) - for i := range *in { - if err := DeepCopy_api_ContainerStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodStatusResult is an autogenerated deepcopy function. -func DeepCopy_api_PodStatusResult(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodStatusResult) - out := out.(*PodStatusResult) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PodStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PodTemplate is an autogenerated deepcopy function. -func DeepCopy_api_PodTemplate(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplate) - out := out.(*PodTemplate) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PodTemplateSpec(&in.Template, &out.Template, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PodTemplateList is an autogenerated deepcopy function. -func DeepCopy_api_PodTemplateList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplateList) - out := out.(*PodTemplateList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PodTemplate, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodTemplate(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodTemplateSpec is an autogenerated deepcopy function. -func DeepCopy_api_PodTemplateSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplateSpec) - out := out.(*PodTemplateSpec) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PodSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PortworxVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PortworxVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PortworxVolumeSource) - out := out.(*PortworxVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_Preconditions is an autogenerated deepcopy function. -func DeepCopy_api_Preconditions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Preconditions) - out := out.(*Preconditions) - *out = *in - if in.UID != nil { - in, out := &in.UID, &out.UID - *out = new(types.UID) - **out = **in - } - return nil - } -} - -// DeepCopy_api_PreferAvoidPodsEntry is an autogenerated deepcopy function. -func DeepCopy_api_PreferAvoidPodsEntry(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PreferAvoidPodsEntry) - out := out.(*PreferAvoidPodsEntry) - *out = *in - if err := DeepCopy_api_PodSignature(&in.PodSignature, &out.PodSignature, c); err != nil { - return err - } - out.EvictionTime = in.EvictionTime.DeepCopy() - return nil - } -} - -// DeepCopy_api_PreferredSchedulingTerm is an autogenerated deepcopy function. -func DeepCopy_api_PreferredSchedulingTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PreferredSchedulingTerm) - out := out.(*PreferredSchedulingTerm) - *out = *in - if err := DeepCopy_api_NodeSelectorTerm(&in.Preference, &out.Preference, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_Probe is an autogenerated deepcopy function. -func DeepCopy_api_Probe(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Probe) - out := out.(*Probe) - *out = *in - if err := DeepCopy_api_Handler(&in.Handler, &out.Handler, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_ProjectedVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ProjectedVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ProjectedVolumeSource) - out := out.(*ProjectedVolumeSource) - *out = *in - if in.Sources != nil { - in, out := &in.Sources, &out.Sources - *out = make([]VolumeProjection, len(*in)) - for i := range *in { - if err := DeepCopy_api_VolumeProjection(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_api_QuobyteVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_QuobyteVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*QuobyteVolumeSource) - out := out.(*QuobyteVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_RBDVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_RBDVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RBDVolumeSource) - out := out.(*RBDVolumeSource) - *out = *in - if in.CephMonitors != nil { - in, out := &in.CephMonitors, &out.CephMonitors - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_api_RangeAllocation is an autogenerated deepcopy function. -func DeepCopy_api_RangeAllocation(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RangeAllocation) - out := out.(*RangeAllocation) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make([]byte, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ReplicationController is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationController(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationController) - out := out.(*ReplicationController) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_ReplicationControllerSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_ReplicationControllerStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_ReplicationControllerCondition is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerCondition) - out := out.(*ReplicationControllerCondition) - *out = *in - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_api_ReplicationControllerList is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerList) - out := out.(*ReplicationControllerList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ReplicationController, len(*in)) - for i := range *in { - if err := DeepCopy_api_ReplicationController(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ReplicationControllerSpec is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerSpec) - out := out.(*ReplicationControllerSpec) - *out = *in - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.Template != nil { - in, out := &in.Template, &out.Template - *out = new(PodTemplateSpec) - if err := DeepCopy_api_PodTemplateSpec(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_ReplicationControllerStatus is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerStatus) - out := out.(*ReplicationControllerStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ReplicationControllerCondition, len(*in)) - for i := range *in { - if err := DeepCopy_api_ReplicationControllerCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ResourceFieldSelector is an autogenerated deepcopy function. -func DeepCopy_api_ResourceFieldSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceFieldSelector) - out := out.(*ResourceFieldSelector) - *out = *in - out.Divisor = in.Divisor.DeepCopy() - return nil - } -} - -// DeepCopy_api_ResourceQuota is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuota(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuota) - out := out.(*ResourceQuota) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_ResourceQuotaSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_ResourceQuotaStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_ResourceQuotaList is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuotaList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaList) - out := out.(*ResourceQuotaList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ResourceQuota, len(*in)) - for i := range *in { - if err := DeepCopy_api_ResourceQuota(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ResourceQuotaSpec is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuotaSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaSpec) - out := out.(*ResourceQuotaSpec) - *out = *in - if in.Hard != nil { - in, out := &in.Hard, &out.Hard - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Scopes != nil { - in, out := &in.Scopes, &out.Scopes - *out = make([]ResourceQuotaScope, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ResourceQuotaStatus is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuotaStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaStatus) - out := out.(*ResourceQuotaStatus) - *out = *in - if in.Hard != nil { - in, out := &in.Hard, &out.Hard - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Used != nil { - in, out := &in.Used, &out.Used - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_api_ResourceRequirements is an autogenerated deepcopy function. -func DeepCopy_api_ResourceRequirements(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceRequirements) - out := out.(*ResourceRequirements) - *out = *in - if in.Limits != nil { - in, out := &in.Limits, &out.Limits - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Requests != nil { - in, out := &in.Requests, &out.Requests - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_api_SELinuxOptions is an autogenerated deepcopy function. -func DeepCopy_api_SELinuxOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SELinuxOptions) - out := out.(*SELinuxOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_ScaleIOVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ScaleIOVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ScaleIOVolumeSource) - out := out.(*ScaleIOVolumeSource) - *out = *in - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef - *out = new(LocalObjectReference) - **out = **in - } - return nil - } -} - -// DeepCopy_api_Secret is an autogenerated deepcopy function. -func DeepCopy_api_Secret(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Secret) - out := out.(*Secret) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make(map[string][]byte) - for key, val := range *in { - if newVal, err := c.DeepCopy(&val); err != nil { - return err - } else { - (*out)[key] = *newVal.(*[]byte) - } - } - } - return nil - } -} - -// DeepCopy_api_SecretEnvSource is an autogenerated deepcopy function. -func DeepCopy_api_SecretEnvSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretEnvSource) - out := out.(*SecretEnvSource) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_SecretKeySelector is an autogenerated deepcopy function. -func DeepCopy_api_SecretKeySelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretKeySelector) - out := out.(*SecretKeySelector) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_SecretList is an autogenerated deepcopy function. -func DeepCopy_api_SecretList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretList) - out := out.(*SecretList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Secret, len(*in)) - for i := range *in { - if err := DeepCopy_api_Secret(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_SecretProjection is an autogenerated deepcopy function. -func DeepCopy_api_SecretProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretProjection) - out := out.(*SecretProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_SecretVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_SecretVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretVolumeSource) - out := out.(*SecretVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode - *out = new(int32) - **out = **in - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_SecurityContext is an autogenerated deepcopy function. -func DeepCopy_api_SecurityContext(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecurityContext) - out := out.(*SecurityContext) - *out = *in - if in.Capabilities != nil { - in, out := &in.Capabilities, &out.Capabilities - *out = new(Capabilities) - if err := DeepCopy_api_Capabilities(*in, *out, c); err != nil { - return err - } - } - if in.Privileged != nil { - in, out := &in.Privileged, &out.Privileged - *out = new(bool) - **out = **in - } - if in.SELinuxOptions != nil { - in, out := &in.SELinuxOptions, &out.SELinuxOptions - *out = new(SELinuxOptions) - **out = **in - } - if in.RunAsUser != nil { - in, out := &in.RunAsUser, &out.RunAsUser - *out = new(types.UnixUserID) - **out = **in - } - if in.RunAsNonRoot != nil { - in, out := &in.RunAsNonRoot, &out.RunAsNonRoot - *out = new(bool) - **out = **in - } - if in.ReadOnlyRootFilesystem != nil { - in, out := &in.ReadOnlyRootFilesystem, &out.ReadOnlyRootFilesystem - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_SerializedReference is an autogenerated deepcopy function. -func DeepCopy_api_SerializedReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SerializedReference) - out := out.(*SerializedReference) - *out = *in - return nil - } -} - -// DeepCopy_api_Service is an autogenerated deepcopy function. -func DeepCopy_api_Service(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Service) - out := out.(*Service) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_ServiceSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_ServiceStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_ServiceAccount is an autogenerated deepcopy function. -func DeepCopy_api_ServiceAccount(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceAccount) - out := out.(*ServiceAccount) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Secrets != nil { - in, out := &in.Secrets, &out.Secrets - *out = make([]ObjectReference, len(*in)) - copy(*out, *in) - } - if in.ImagePullSecrets != nil { - in, out := &in.ImagePullSecrets, &out.ImagePullSecrets - *out = make([]LocalObjectReference, len(*in)) - copy(*out, *in) - } - if in.AutomountServiceAccountToken != nil { - in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_ServiceAccountList is an autogenerated deepcopy function. -func DeepCopy_api_ServiceAccountList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceAccountList) - out := out.(*ServiceAccountList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ServiceAccount, len(*in)) - for i := range *in { - if err := DeepCopy_api_ServiceAccount(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ServiceList is an autogenerated deepcopy function. -func DeepCopy_api_ServiceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceList) - out := out.(*ServiceList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Service, len(*in)) - for i := range *in { - if err := DeepCopy_api_Service(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ServicePort is an autogenerated deepcopy function. -func DeepCopy_api_ServicePort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServicePort) - out := out.(*ServicePort) - *out = *in - return nil - } -} - -// DeepCopy_api_ServiceProxyOptions is an autogenerated deepcopy function. -func DeepCopy_api_ServiceProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceProxyOptions) - out := out.(*ServiceProxyOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_ServiceSpec is an autogenerated deepcopy function. -func DeepCopy_api_ServiceSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceSpec) - out := out.(*ServiceSpec) - *out = *in - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]ServicePort, len(*in)) - copy(*out, *in) - } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.ExternalIPs != nil { - in, out := &in.ExternalIPs, &out.ExternalIPs - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.LoadBalancerSourceRanges != nil { - in, out := &in.LoadBalancerSourceRanges, &out.LoadBalancerSourceRanges - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ServiceStatus is an autogenerated deepcopy function. -func DeepCopy_api_ServiceStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceStatus) - out := out.(*ServiceStatus) - *out = *in - if err := DeepCopy_api_LoadBalancerStatus(&in.LoadBalancer, &out.LoadBalancer, c); err != nil { - return err - } - return nil - } -} - -// 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 { - { - in := in.(*Sysctl) - out := out.(*Sysctl) - *out = *in - return nil - } -} - -// DeepCopy_api_TCPSocketAction is an autogenerated deepcopy function. -func DeepCopy_api_TCPSocketAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*TCPSocketAction) - out := out.(*TCPSocketAction) - *out = *in - return nil - } -} - -// DeepCopy_api_Taint is an autogenerated deepcopy function. -func DeepCopy_api_Taint(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Taint) - out := out.(*Taint) - *out = *in - out.TimeAdded = in.TimeAdded.DeepCopy() - return nil - } -} - -// DeepCopy_api_Toleration is an autogenerated deepcopy function. -func DeepCopy_api_Toleration(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Toleration) - out := out.(*Toleration) - *out = *in - if in.TolerationSeconds != nil { - in, out := &in.TolerationSeconds, &out.TolerationSeconds - *out = new(int64) - **out = **in - } - return nil - } -} - -// DeepCopy_api_Volume is an autogenerated deepcopy function. -func DeepCopy_api_Volume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Volume) - out := out.(*Volume) - *out = *in - if err := DeepCopy_api_VolumeSource(&in.VolumeSource, &out.VolumeSource, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_VolumeMount is an autogenerated deepcopy function. -func DeepCopy_api_VolumeMount(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeMount) - out := out.(*VolumeMount) - *out = *in - return nil - } -} - -// DeepCopy_api_VolumeProjection is an autogenerated deepcopy function. -func DeepCopy_api_VolumeProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeProjection) - out := out.(*VolumeProjection) - *out = *in - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = new(SecretProjection) - if err := DeepCopy_api_SecretProjection(*in, *out, c); err != nil { - return err - } - } - if in.DownwardAPI != nil { - in, out := &in.DownwardAPI, &out.DownwardAPI - *out = new(DownwardAPIProjection) - if err := DeepCopy_api_DownwardAPIProjection(*in, *out, c); err != nil { - return err - } - } - if in.ConfigMap != nil { - in, out := &in.ConfigMap, &out.ConfigMap - *out = new(ConfigMapProjection) - if err := DeepCopy_api_ConfigMapProjection(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_api_VolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_VolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeSource) - out := out.(*VolumeSource) - *out = *in - if in.HostPath != nil { - in, out := &in.HostPath, &out.HostPath - *out = new(HostPathVolumeSource) - **out = **in - } - if in.EmptyDir != nil { - in, out := &in.EmptyDir, &out.EmptyDir - *out = new(EmptyDirVolumeSource) - if err := DeepCopy_api_EmptyDirVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.GCEPersistentDisk != nil { - in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk - *out = new(GCEPersistentDiskVolumeSource) - **out = **in - } - if in.AWSElasticBlockStore != nil { - in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore - *out = new(AWSElasticBlockStoreVolumeSource) - **out = **in - } - if in.GitRepo != nil { - in, out := &in.GitRepo, &out.GitRepo - *out = new(GitRepoVolumeSource) - **out = **in - } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = new(SecretVolumeSource) - if err := DeepCopy_api_SecretVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.NFS != nil { - in, out := &in.NFS, &out.NFS - *out = new(NFSVolumeSource) - **out = **in - } - if in.ISCSI != nil { - in, out := &in.ISCSI, &out.ISCSI - *out = new(ISCSIVolumeSource) - if err := DeepCopy_api_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Glusterfs != nil { - in, out := &in.Glusterfs, &out.Glusterfs - *out = new(GlusterfsVolumeSource) - **out = **in - } - if in.PersistentVolumeClaim != nil { - in, out := &in.PersistentVolumeClaim, &out.PersistentVolumeClaim - *out = new(PersistentVolumeClaimVolumeSource) - **out = **in - } - if in.RBD != nil { - in, out := &in.RBD, &out.RBD - *out = new(RBDVolumeSource) - if err := DeepCopy_api_RBDVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Quobyte != nil { - in, out := &in.Quobyte, &out.Quobyte - *out = new(QuobyteVolumeSource) - **out = **in - } - if in.FlexVolume != nil { - in, out := &in.FlexVolume, &out.FlexVolume - *out = new(FlexVolumeSource) - if err := DeepCopy_api_FlexVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Cinder != nil { - in, out := &in.Cinder, &out.Cinder - *out = new(CinderVolumeSource) - **out = **in - } - if in.CephFS != nil { - in, out := &in.CephFS, &out.CephFS - *out = new(CephFSVolumeSource) - if err := DeepCopy_api_CephFSVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.Flocker != nil { - in, out := &in.Flocker, &out.Flocker - *out = new(FlockerVolumeSource) - **out = **in - } - if in.DownwardAPI != nil { - in, out := &in.DownwardAPI, &out.DownwardAPI - *out = new(DownwardAPIVolumeSource) - if err := DeepCopy_api_DownwardAPIVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.FC != nil { - in, out := &in.FC, &out.FC - *out = new(FCVolumeSource) - if err := DeepCopy_api_FCVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.AzureFile != nil { - in, out := &in.AzureFile, &out.AzureFile - *out = new(AzureFileVolumeSource) - **out = **in - } - if in.ConfigMap != nil { - in, out := &in.ConfigMap, &out.ConfigMap - *out = new(ConfigMapVolumeSource) - if err := DeepCopy_api_ConfigMapVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.VsphereVolume != nil { - in, out := &in.VsphereVolume, &out.VsphereVolume - *out = new(VsphereVirtualDiskVolumeSource) - **out = **in - } - if in.AzureDisk != nil { - in, out := &in.AzureDisk, &out.AzureDisk - *out = new(AzureDiskVolumeSource) - if err := DeepCopy_api_AzureDiskVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.PhotonPersistentDisk != nil { - in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk - *out = new(PhotonPersistentDiskVolumeSource) - **out = **in - } - if in.Projected != nil { - in, out := &in.Projected, &out.Projected - *out = new(ProjectedVolumeSource) - if err := DeepCopy_api_ProjectedVolumeSource(*in, *out, c); err != nil { - return err - } - } - if in.PortworxVolume != nil { - in, out := &in.PortworxVolume, &out.PortworxVolume - *out = new(PortworxVolumeSource) - **out = **in - } - if in.ScaleIO != nil { - in, out := &in.ScaleIO, &out.ScaleIO - *out = new(ScaleIOVolumeSource) - if err := DeepCopy_api_ScaleIOVolumeSource(*in, *out, c); err != nil { - 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 - } -} - -// DeepCopy_api_VsphereVirtualDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_VsphereVirtualDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VsphereVirtualDiskVolumeSource) - out := out.(*VsphereVirtualDiskVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_WeightedPodAffinityTerm is an autogenerated deepcopy function. -func DeepCopy_api_WeightedPodAffinityTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*WeightedPodAffinityTerm) - out := out.(*WeightedPodAffinityTerm) - *out = *in - if err := DeepCopy_api_PodAffinityTerm(&in.PodAffinityTerm, &out.PodAffinityTerm, c); err != nil { - return err - } - return nil - } -} diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/doc.go b/vendor/k8s.io/client-go/pkg/apis/extensions/doc.go deleted file mode 100644 index 87edee41c..000000000 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/doc.go +++ /dev/null @@ -1,17 +0,0 @@ -/* -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 extensions diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/helpers.go b/vendor/k8s.io/client-go/pkg/apis/extensions/helpers.go deleted file mode 100644 index 27d3e23ad..000000000 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/helpers.go +++ /dev/null @@ -1,37 +0,0 @@ -/* -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 extensions - -import ( - "strings" -) - -// SysctlsFromPodSecurityPolicyAnnotation parses an annotation value of the key -// SysctlsSecurityPolocyAnnotationKey into a slice of sysctls. An empty slice -// is returned if annotation is the empty string. -func SysctlsFromPodSecurityPolicyAnnotation(annotation string) ([]string, error) { - if len(annotation) == 0 { - return []string{}, nil - } - - return strings.Split(annotation, ","), nil -} - -// PodAnnotationsFromSysctls creates an annotation value for a slice of Sysctls. -func PodAnnotationsFromSysctls(sysctls []string) string { - return strings.Join(sysctls, ",") -} diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/register.go b/vendor/k8s.io/client-go/pkg/apis/extensions/register.go deleted file mode 100644 index 5983636c2..000000000 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/register.go +++ /dev/null @@ -1,70 +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 extensions - -import ( - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/runtime/schema" -) - -// GroupName is the group name use in this package -const GroupName = "extensions" - -// 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 -) - -// Adds the list of known types to api.Scheme. -func addKnownTypes(scheme *runtime.Scheme) error { - // TODO this gets cleaned up when the types are fixed - scheme.AddKnownTypes(SchemeGroupVersion, - &Deployment{}, - &DeploymentList{}, - &DeploymentRollback{}, - &ReplicationControllerDummy{}, - &Scale{}, - &ThirdPartyResource{}, - &ThirdPartyResourceList{}, - &DaemonSetList{}, - &DaemonSet{}, - &ThirdPartyResourceData{}, - &ThirdPartyResourceDataList{}, - &Ingress{}, - &IngressList{}, - &ReplicaSet{}, - &ReplicaSetList{}, - &PodSecurityPolicy{}, - &PodSecurityPolicyList{}, - &NetworkPolicy{}, - &NetworkPolicyList{}, - ) - return nil -} diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/types.go b/vendor/k8s.io/client-go/pkg/apis/extensions/types.go deleted file mode 100644 index 161158dcb..000000000 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/types.go +++ /dev/null @@ -1,1152 +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. -*/ - -/* -This file (together with pkg/apis/extensions/v1beta1/types.go) contain the experimental -types in kubernetes. These API objects are experimental, meaning that the -APIs may be broken at any time by the kubernetes team. - -DISCLAIMER: The implementation of the experimental API group itself is -a temporary one meant as a stopgap solution until kubernetes has proper -support for multiple API groups. The transition may require changes -beyond registration differences. In other words, experimental API group -support is experimental. -*/ - -package extensions - -import ( - "k8s.io/apimachinery/pkg/api/resource" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/types" - "k8s.io/apimachinery/pkg/util/intstr" - "k8s.io/client-go/pkg/api" -) - -const ( - // SysctlsPodSecurityPolicyAnnotationKey represents the key of a whitelist of - // allowed safe and unsafe sysctls in a pod spec. It's a comma-separated list of plain sysctl - // names or sysctl patterns (which end in *). The string "*" matches all sysctls. - SysctlsPodSecurityPolicyAnnotationKey string = "security.alpha.kubernetes.io/sysctls" -) - -// describes the attributes of a scale subresource -type ScaleSpec struct { - // desired number of instances for the scaled object. - // +optional - Replicas int32 -} - -// represents the current status of a scale subresource. -type ScaleStatus struct { - // actual number of observed instances of the scaled object. - Replicas int32 - - // label query over pods that should match the replicas count. - // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors - // +optional - Selector *metav1.LabelSelector -} - -// +genclient=true -// +noMethods=true - -// represents a scaling request for a resource. -type Scale struct { - metav1.TypeMeta - // 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: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. - // +optional - Spec ScaleSpec - - // 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 -} - -// Dummy definition -type ReplicationControllerDummy struct { - metav1.TypeMeta -} - -// Alpha-level support for Custom Metrics in HPA (as annotations). -type CustomMetricTarget struct { - // Custom Metric name. - Name string - // Custom Metric value (average). - TargetValue resource.Quantity -} - -type CustomMetricTargetList struct { - Items []CustomMetricTarget -} - -type CustomMetricCurrentStatus struct { - // Custom Metric name. - Name string - // Custom Metric value (average). - CurrentValue resource.Quantity -} - -type CustomMetricCurrentStatusList struct { - Items []CustomMetricCurrentStatus -} - -// +genclient=true -// +nonNamespaced=true - -// A ThirdPartyResource is a generic representation of a resource, it is used by add-ons and plugins to add new resource -// types to the API. It consists of one or more Versions of the api. -type ThirdPartyResource struct { - metav1.TypeMeta - - // Standard object metadata - // +optional - metav1.ObjectMeta - - // Description is the description of this object. - // +optional - Description string - - // Versions are versions for this third party object - Versions []APIVersion -} - -type ThirdPartyResourceList struct { - metav1.TypeMeta - - // Standard list metadata. - // +optional - metav1.ListMeta - - // Items is the list of horizontal pod autoscalers. - Items []ThirdPartyResource -} - -// An APIVersion represents a single concrete version of an object model. -// TODO: we should consider merge this struct with GroupVersion in metav1.go -type APIVersion struct { - // Name of this version (e.g. 'v1'). - Name string -} - -// An internal object, used for versioned storage in etcd. Not exposed to the end user. -type ThirdPartyResourceData struct { - metav1.TypeMeta - // Standard object metadata. - // +optional - metav1.ObjectMeta - - // Data is the raw JSON data for this data. - // +optional - Data []byte -} - -// +genclient=true - -type Deployment struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Specification of the desired behavior of the Deployment. - // +optional - Spec DeploymentSpec - - // Most recently observed status of the Deployment. - // +optional - Status DeploymentStatus -} - -type DeploymentSpec struct { - // Number of desired pods. This is a pointer to distinguish between explicit - // zero and not specified. Defaults to 1. - // +optional - Replicas int32 - - // Label selector for pods. Existing ReplicaSets whose pods are - // selected by this will be the ones affected by this deployment. - // +optional - Selector *metav1.LabelSelector - - // Template describes the pods that will be created. - Template api.PodTemplateSpec - - // The deployment strategy to use to replace existing pods with new ones. - // +optional - Strategy DeploymentStrategy - - // Minimum number of seconds for which a newly created 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) - // +optional - MinReadySeconds int32 - - // The number of old ReplicaSets to retain to allow rollback. - // This is a pointer to distinguish between explicit zero and not specified. - // +optional - RevisionHistoryLimit *int32 - - // Indicates that the deployment is paused and will not be processed by the - // deployment controller. - // +optional - Paused bool - - // The config this deployment is rolling back to. Will be cleared after rollback is done. - // +optional - RollbackTo *RollbackConfig - - // The maximum time in seconds for a deployment to make progress before it - // is considered to be failed. The deployment controller will continue to - // process failed deployments and a condition with a ProgressDeadlineExceeded - // reason will be surfaced in the deployment status. Once autoRollback is - // implemented, the deployment controller will automatically rollback failed - // deployments. Note that progress will not be estimated during the time a - // deployment is paused. This is not set by default. - ProgressDeadlineSeconds *int32 -} - -// DeploymentRollback stores the information required to rollback a deployment. -type DeploymentRollback struct { - metav1.TypeMeta - // Required: This must match the Name of a deployment. - Name string - // The annotations to be updated to a deployment - // +optional - UpdatedAnnotations map[string]string - // The config of this deployment rollback. - RollbackTo RollbackConfig -} - -type RollbackConfig struct { - // The revision to rollback to. If set to 0, rollback to the last revision. - // +optional - Revision int64 -} - -const ( - // DefaultDeploymentUniqueLabelKey is the default key of the selector that is added - // to existing RCs (and label key that is added to its pods) to prevent the existing RCs - // to select new pods (and old pods being select by new RC). - DefaultDeploymentUniqueLabelKey string = "pod-template-hash" -) - -type DeploymentStrategy struct { - // Type of deployment. Can be "Recreate" or "RollingUpdate". Default is RollingUpdate. - // +optional - Type DeploymentStrategyType - - // Rolling update config params. Present only if DeploymentStrategyType = - // RollingUpdate. - //--- - // TODO: Update this to follow our convention for oneOf, whatever we decide it - // to be. - // +optional - RollingUpdate *RollingUpdateDeployment -} - -type DeploymentStrategyType string - -const ( - // Kill all existing pods before creating new ones. - RecreateDeploymentStrategyType DeploymentStrategyType = "Recreate" - - // Replace the old RCs by new one using rolling update i.e gradually scale down the old RCs and scale up the new one. - RollingUpdateDeploymentStrategyType DeploymentStrategyType = "RollingUpdate" -) - -// Spec to control the desired behavior of rolling update. -type RollingUpdateDeployment struct { - // The maximum number of pods that can be unavailable during the update. - // Value can be an absolute number (ex: 5) or a percentage of total pods at the start of update (ex: 10%). - // Absolute number is calculated from percentage by rounding down. - // This can not be 0 if MaxSurge is 0. - // By default, a fixed value of 1 is used. - // Example: when this is set to 30%, the old RC can be scaled down by 30% - // immediately when the rolling update starts. Once new pods are ready, old RC - // can be scaled down further, followed by scaling up the new RC, ensuring - // that at least 70% of original number of pods are available at all times - // during the update. - // +optional - MaxUnavailable intstr.IntOrString - - // The maximum number of pods that can be scheduled above the original number of - // pods. - // Value can be an absolute number (ex: 5) or a percentage of total pods at - // the start of the update (ex: 10%). This can not be 0 if MaxUnavailable is 0. - // Absolute number is calculated from percentage by rounding up. - // By default, a value of 1 is used. - // Example: when this is set to 30%, the new RC can be scaled up by 30% - // immediately when the rolling update starts. Once old pods have been killed, - // new RC can be scaled up further, ensuring that total number of pods running - // at any time during the update is atmost 130% of original pods. - // +optional - MaxSurge intstr.IntOrString -} - -type DeploymentStatus struct { - // The generation observed by the deployment controller. - // +optional - ObservedGeneration int64 - - // Total number of non-terminated pods targeted by this deployment (their labels match the selector). - // +optional - Replicas int32 - - // Total number of non-terminated pods targeted by this deployment that have the desired template spec. - // +optional - UpdatedReplicas int32 - - // Total number of ready pods targeted by this deployment. - // +optional - ReadyReplicas int32 - - // Total number of available pods (ready for at least minReadySeconds) targeted by this deployment. - // +optional - AvailableReplicas int32 - - // Total number of unavailable pods targeted by this deployment. - // +optional - UnavailableReplicas int32 - - // 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 - -// These are valid conditions of a deployment. -const ( - // Available means the deployment is available, ie. at least the minimum available - // replicas required are up and running for at least minReadySeconds. - DeploymentAvailable DeploymentConditionType = "Available" - // Progressing means the deployment is progressing. Progress for a deployment is - // considered when a new replica set is created or adopted, and when new pods scale - // up or old pods scale down. Progress is not estimated for paused deployments or - // when progressDeadlineSeconds is not specified. - DeploymentProgressing DeploymentConditionType = "Progressing" - // ReplicaFailure is added in a deployment when one of its pods fails to be created - // or deleted. - DeploymentReplicaFailure DeploymentConditionType = "ReplicaFailure" -) - -// DeploymentCondition describes the state of a deployment at a certain point. -type DeploymentCondition struct { - // Type of deployment condition. - Type DeploymentConditionType - // Status of the condition, one of True, False, Unknown. - Status api.ConditionStatus - // The last time this condition was updated. - LastUpdateTime metav1.Time - // Last time the condition transitioned from one status to another. - LastTransitionTime metav1.Time - // The reason for the condition's last transition. - Reason string - // A human readable message indicating details about the transition. - Message string -} - -type DeploymentList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - // Items is the list of deployments. - Items []Deployment -} - -type DaemonSetUpdateStrategy struct { - // Type of daemon set update. Can be "RollingUpdate" or "OnDelete". - // Default is OnDelete. - // +optional - Type DaemonSetUpdateStrategyType - - // 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 Deployment `strategy.rollingUpdate`. - // See https://github.com/kubernetes/kubernetes/issues/35345 - // +optional - RollingUpdate *RollingUpdateDaemonSet -} - -type DaemonSetUpdateStrategyType string - -const ( - // Replace the old daemons by new ones using rolling update i.e replace them on each node one after the other. - RollingUpdateDaemonSetStrategyType DaemonSetUpdateStrategyType = "RollingUpdate" - - // Replace the old daemons only when it's killed - OnDeleteDaemonSetStrategyType DaemonSetUpdateStrategyType = "OnDelete" -) - -// Spec to control the desired behavior of daemon set rolling update. -type RollingUpdateDaemonSet struct { - // The maximum number of DaemonSet pods that can be unavailable during the - // update. Value can be an absolute number (ex: 5) or a percentage of total - // number of DaemonSet pods at the start of the update (ex: 10%). Absolute - // number is calculated from percentage by rounding up. - // This cannot be 0. - // Default value is 1. - // Example: when this is set to 30%, at most 30% of the total number of nodes - // that should be running the daemon pod (i.e. status.desiredNumberScheduled) - // can have their pods stopped for an update at any given - // time. The update starts by stopping at most 30% of those DaemonSet pods - // and then brings up new DaemonSet pods in their place. Once the new pods - // are available, it then proceeds onto other DaemonSet pods, thus ensuring - // that at least 70% of original number of DaemonSet pods are available at - // all times during the update. - // +optional - MaxUnavailable intstr.IntOrString -} - -// DaemonSetSpec is the specification of a daemon set. -type DaemonSetSpec struct { - // 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 - // +optional - Selector *metav1.LabelSelector - - // 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 - Template api.PodTemplateSpec - - // An update strategy to replace existing DaemonSet pods with new pods. - // +optional - UpdateStrategy DaemonSetUpdateStrategy - - // 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). - // +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. -type DaemonSetStatus struct { - // The number of nodes that are running at least 1 - // daemon pod and are supposed to run the daemon pod. - CurrentNumberScheduled int32 - - // The number of nodes that are running the daemon pod, but are - // not supposed to run the daemon pod. - NumberMisscheduled int32 - - // The total number of nodes that should be running the daemon - // pod (including nodes correctly running the daemon pod). - DesiredNumberScheduled int32 - - // The number of nodes that should be running the daemon pod and have one - // or more of the daemon pod running and ready. - NumberReady int32 - - // The most recent generation observed by the daemon set controller. - // +optional - ObservedGeneration int64 - - // The total number of nodes that are running updated daemon pod - // +optional - UpdatedNumberScheduled int32 - - // 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) - // +optional - NumberAvailable int32 - - // 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) - // +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 - -// DaemonSet represents the configuration of a daemon set. -type DaemonSet struct { - metav1.TypeMeta - // Standard object's 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://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status - // +optional - Spec DaemonSetSpec - - // 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 - // +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. - DaemonSetTemplateGenerationKey string = "pod-template-generation" -) - -// DaemonSetList is a collection of daemon sets. -type DaemonSetList struct { - metav1.TypeMeta - // Standard list metadata. - // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata - // +optional - metav1.ListMeta - - // A list of daemon sets. - Items []DaemonSet -} - -type ThirdPartyResourceDataList struct { - metav1.TypeMeta - // Standard list 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 - Items []ThirdPartyResourceData -} - -// +genclient=true - -// 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. -type Ingress struct { - metav1.TypeMeta - // Standard object's 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://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://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status - // +optional - Status IngressStatus -} - -// IngressList is a collection of Ingress. -type IngressList struct { - metav1.TypeMeta - // Standard object's metadata. - // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata - // +optional - metav1.ListMeta - - // Items is the list of Ingress. - Items []Ingress -} - -// IngressSpec describes the Ingress the user wishes to exist. -type IngressSpec struct { - // A default backend capable of servicing requests that don't match any - // rule. At least one of 'backend' or 'rules' must be specified. This field - // is optional to allow the loadbalancer controller or defaulting logic to - // specify a global default. - // +optional - Backend *IngressBackend - - // TLS configuration. Currently the Ingress only supports a single TLS - // port, 443. If multiple members of this list specify different hosts, they - // will be multiplexed on the same port according to the hostname specified - // through the SNI TLS extension, if the ingress controller fulfilling the - // ingress supports SNI. - // +optional - TLS []IngressTLS - - // A list of host rules used to configure the Ingress. If unspecified, or - // no rule matches, all traffic is sent to the default backend. - // +optional - Rules []IngressRule - // TODO: Add the ability to specify load-balancer IP through claims -} - -// IngressTLS describes the transport layer security associated with an Ingress. -type IngressTLS struct { - // Hosts are a list of hosts included in the TLS certificate. The values in - // this list must match the name/s used in the tlsSecret. Defaults to the - // wildcard host setting for the loadbalancer controller fulfilling this - // Ingress, if left unspecified. - // +optional - Hosts []string - // SecretName is the name of the secret used to terminate SSL traffic on 443. - // Field is left optional to allow SSL routing based on SNI hostname alone. - // If the SNI host in a listener conflicts with the "Host" header field used - // by an IngressRule, the SNI host is used for termination and value of the - // Host header is used for routing. - // +optional - SecretName string - // TODO: Consider specifying different modes of termination, protocols etc. -} - -// IngressStatus describe the current state of the Ingress. -type IngressStatus struct { - // LoadBalancer contains the current status of the load-balancer. - // +optional - LoadBalancer api.LoadBalancerStatus -} - -// IngressRule represents the rules mapping the paths under a specified host to -// the related backend services. Incoming requests are first evaluated for a host -// match, then routed to the backend associated with the matching IngressRuleValue. -type IngressRule struct { - // Host is the fully qualified domain name of a network host, as defined - // by RFC 3986. Note the following deviations from the "host" part of the - // URI as defined in the RFC: - // 1. IPs are not allowed. Currently an IngressRuleValue can only apply to the - // IP in the Spec of the parent Ingress. - // 2. The `:` delimiter is not respected because ports are not allowed. - // Currently the port of an Ingress is implicitly :80 for http and - // :443 for https. - // Both these may change in the future. - // Incoming requests are matched against the host before the IngressRuleValue. - // If the host is unspecified, the Ingress routes all traffic based on the - // specified IngressRuleValue. - // +optional - Host string - // IngressRuleValue represents a rule to route requests for this IngressRule. - // If unspecified, the rule defaults to a http catch-all. Whether that sends - // just traffic matching the host to the default backend or all traffic to the - // default backend, is left to the controller fulfilling the Ingress. Http is - // currently the only supported IngressRuleValue. - // +optional - IngressRuleValue -} - -// IngressRuleValue represents a rule to apply against incoming requests. If the -// rule is satisfied, the request is routed to the specified backend. Currently -// mixing different types of rules in a single Ingress is disallowed, so exactly -// one of the following must be set. -type IngressRuleValue struct { - //TODO: - // 1. Consider renaming this resource and the associated rules so they - // aren't tied to Ingress. They can be used to route intra-cluster traffic. - // 2. Consider adding fields for ingress-type specific global options - // usable by a loadbalancer, like http keep-alive. - - // +optional - HTTP *HTTPIngressRuleValue -} - -// HTTPIngressRuleValue is a list of http selectors pointing to backends. -// In the example: http:///? -> backend where -// where parts of the url correspond to RFC 3986, this resource will be used -// to match against everything after the last '/' and before the first '?' -// or '#'. -type HTTPIngressRuleValue struct { - // A collection of paths that map requests to backends. - Paths []HTTPIngressPath - // TODO: Consider adding fields for ingress-type specific global - // options usable by a loadbalancer, like http keep-alive. -} - -// HTTPIngressPath associates a path regex with a backend. Incoming urls matching -// the path are forwarded to the backend. -type HTTPIngressPath struct { - // Path is an extended POSIX regex as defined by IEEE Std 1003.1, - // (i.e this follows the egrep/unix syntax, not the perl syntax) - // matched against the path of an incoming request. Currently it can - // contain characters disallowed from the conventional "path" - // part of a URL as defined by RFC 3986. Paths must begin with - // a '/'. If unspecified, the path defaults to a catch all sending - // traffic to the backend. - // +optional - Path string - - // Backend defines the referenced service endpoint to which the traffic - // will be forwarded to. - Backend IngressBackend -} - -// IngressBackend describes all endpoints for a given service and port. -type IngressBackend struct { - // Specifies the name of the referenced service. - ServiceName string - - // Specifies the port of the referenced service. - ServicePort intstr.IntOrString -} - -// +genclient=true - -// ReplicaSet represents the configuration of a replica set. -type ReplicaSet struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the desired behavior of this ReplicaSet. - // +optional - Spec ReplicaSetSpec - - // Status is the current status of this ReplicaSet. This data may be - // out of date by some window of time. - // +optional - Status ReplicaSetStatus -} - -// ReplicaSetList is a collection of ReplicaSets. -type ReplicaSetList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []ReplicaSet -} - -// ReplicaSetSpec is the specification of a ReplicaSet. -// As the internal representation of a ReplicaSet, it must have -// a Template set. -type ReplicaSetSpec struct { - // Replicas is the number of desired replicas. - Replicas int32 - - // Minimum number of seconds for which a newly created 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) - // +optional - MinReadySeconds int32 - - // Selector is a label query over pods that should match the replica count. - // 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 - // +optional - Selector *metav1.LabelSelector - - // Template is the object that describes the pod that will be created if - // insufficient replicas are detected. - // +optional - Template api.PodTemplateSpec -} - -// ReplicaSetStatus represents the current status of a ReplicaSet. -type ReplicaSetStatus struct { - // Replicas is the number of actual replicas. - Replicas int32 - - // The number of pods that have labels matching the labels of the pod template of the replicaset. - // +optional - FullyLabeledReplicas int32 - - // The number of ready replicas for this replica set. - // +optional - ReadyReplicas int32 - - // The number of available replicas (ready for at least minReadySeconds) for this replica set. - // +optional - AvailableReplicas int32 - - // ObservedGeneration is the most recent generation observed by the controller. - // +optional - ObservedGeneration int64 - - // Represents the latest available observations of a replica set's current state. - // +optional - Conditions []ReplicaSetCondition -} - -type ReplicaSetConditionType string - -// These are valid conditions of a replica set. -const ( - // ReplicaSetReplicaFailure is added in a replica set when one of its pods fails to be created - // due to insufficient quota, limit ranges, pod security policy, node selectors, etc. or deleted - // due to kubelet being down or finalizers are failing. - ReplicaSetReplicaFailure ReplicaSetConditionType = "ReplicaFailure" -) - -// ReplicaSetCondition describes the state of a replica set at a certain point. -type ReplicaSetCondition struct { - // Type of replica set condition. - Type ReplicaSetConditionType - // Status of the condition, one of True, False, Unknown. - Status api.ConditionStatus - // The last time the condition transitioned from one status to another. - // +optional - LastTransitionTime metav1.Time - // The reason for the condition's last transition. - // +optional - Reason string - // A human readable message indicating details about the transition. - // +optional - Message string -} - -// +genclient=true -// +nonNamespaced=true - -// PodSecurityPolicy governs the ability to make requests that affect the SecurityContext -// that will be applied to a pod and container. -type PodSecurityPolicy struct { - metav1.TypeMeta - // +optional - metav1.ObjectMeta - - // Spec defines the policy enforced. - // +optional - Spec PodSecurityPolicySpec -} - -// PodSecurityPolicySpec defines the policy enforced. -type PodSecurityPolicySpec struct { - // Privileged determines if a pod can request to be run as privileged. - // +optional - Privileged bool - // DefaultAddCapabilities is the default set of capabilities that will be added to the container - // unless the pod spec specifically drops the capability. You may not list a capability in both - // DefaultAddCapabilities and RequiredDropCapabilities. - // +optional - DefaultAddCapabilities []api.Capability - // RequiredDropCapabilities are the capabilities that will be dropped from the container. These - // are required to be dropped and cannot be added. - // +optional - RequiredDropCapabilities []api.Capability - // AllowedCapabilities is a list of capabilities that can be requested to add to the container. - // Capabilities in this field may be added at the pod author's discretion. - // You must not list a capability in both AllowedCapabilities and RequiredDropCapabilities. - // +optional - AllowedCapabilities []api.Capability - // Volumes is a white list of allowed volume plugins. Empty indicates that all plugins - // may be used. - // +optional - Volumes []FSType - // HostNetwork determines if the policy allows the use of HostNetwork in the pod spec. - // +optional - HostNetwork bool - // HostPorts determines which host port ranges are allowed to be exposed. - // +optional - HostPorts []HostPortRange - // HostPID determines if the policy allows the use of HostPID in the pod spec. - // +optional - HostPID bool - // HostIPC determines if the policy allows the use of HostIPC in the pod spec. - // +optional - HostIPC bool - // SELinux is the strategy that will dictate the allowable labels that may be set. - SELinux SELinuxStrategyOptions - // RunAsUser is the strategy that will dictate the allowable RunAsUser values that may be set. - RunAsUser RunAsUserStrategyOptions - // SupplementalGroups is the strategy that will dictate what supplemental groups are used by the SecurityContext. - SupplementalGroups SupplementalGroupsStrategyOptions - // FSGroup is the strategy that will dictate what fs group is used by the SecurityContext. - FSGroup FSGroupStrategyOptions - // 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. - // +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 -// for pods to use. It requires both the start and end to be defined. -type HostPortRange struct { - // Min is the start of the range, inclusive. - Min int - // Max is the end of the range, inclusive. - Max int -} - -// FSType gives strong typing to different file systems that are used by volumes. -type FSType string - -var ( - AzureFile FSType = "azureFile" - Flocker FSType = "flocker" - FlexVolume FSType = "flexVolume" - HostPath FSType = "hostPath" - EmptyDir FSType = "emptyDir" - GCEPersistentDisk FSType = "gcePersistentDisk" - AWSElasticBlockStore FSType = "awsElasticBlockStore" - GitRepo FSType = "gitRepo" - Secret FSType = "secret" - NFS FSType = "nfs" - ISCSI FSType = "iscsi" - Glusterfs FSType = "glusterfs" - PersistentVolumeClaim FSType = "persistentVolumeClaim" - RBD FSType = "rbd" - Cinder FSType = "cinder" - CephFS FSType = "cephFS" - DownwardAPI FSType = "downwardAPI" - FC FSType = "fc" - ConfigMap FSType = "configMap" - VsphereVolume FSType = "vsphereVolume" - Quobyte FSType = "quobyte" - AzureDisk FSType = "azureDisk" - PhotonPersistentDisk FSType = "photonPersistentDisk" - StorageOS FSType = "storageos" - Projected FSType = "projected" - PortworxVolume FSType = "portworxVolume" - ScaleIO FSType = "scaleIO" - All FSType = "*" -) - -// SELinuxStrategyOptions defines the strategy type and any options used to create the strategy. -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://git.k8s.io/community/contributors/design-proposals/security_context.md - // +optional - SELinuxOptions *api.SELinuxOptions -} - -// SELinuxStrategy denotes strategy types for generating SELinux options for a -// Security. -type SELinuxStrategy string - -const ( - // container must have SELinux labels of X applied. - SELinuxStrategyMustRunAs SELinuxStrategy = "MustRunAs" - // container may make requests for any SELinux context labels. - SELinuxStrategyRunAsAny SELinuxStrategy = "RunAsAny" -) - -// RunAsUserStrategyOptions defines the strategy type and any options used to create the strategy. -type RunAsUserStrategyOptions struct { - // Rule is the strategy that will dictate the allowable RunAsUser values that may be set. - Rule RunAsUserStrategy - // Ranges are the allowed ranges of uids that may be used. - // +optional - Ranges []UserIDRange -} - -// UserIDRange provides a min/max of an allowed range of UserIDs. -type UserIDRange struct { - // Min is the start of the range, inclusive. - Min types.UnixUserID - // Max is the end of the range, inclusive. - Max types.UnixUserID -} - -// GroupIDRange provides a min/max of an allowed range of GroupIDs. -type GroupIDRange struct { - // Min is the start of the range, inclusive. - Min types.UnixGroupID - // Max is the end of the range, inclusive. - Max types.UnixGroupID -} - -// RunAsUserStrategy denotes strategy types for generating RunAsUser values for a -// SecurityContext. -type RunAsUserStrategy string - -const ( - // container must run as a particular uid. - RunAsUserStrategyMustRunAs RunAsUserStrategy = "MustRunAs" - // container must run as a non-root uid - RunAsUserStrategyMustRunAsNonRoot RunAsUserStrategy = "MustRunAsNonRoot" - // container may make requests for any uid. - RunAsUserStrategyRunAsAny RunAsUserStrategy = "RunAsAny" -) - -// FSGroupStrategyOptions defines the strategy type and options used to create the strategy. -type FSGroupStrategyOptions struct { - // Rule is the strategy that will dictate what FSGroup is used in the SecurityContext. - // +optional - Rule FSGroupStrategyType - // Ranges are the allowed ranges of fs groups. If you would like to force a single - // fs group then supply a single range with the same start and end. - // +optional - Ranges []GroupIDRange -} - -// FSGroupStrategyType denotes strategy types for generating FSGroup values for a -// SecurityContext -type FSGroupStrategyType string - -const ( - // container must have FSGroup of X applied. - FSGroupStrategyMustRunAs FSGroupStrategyType = "MustRunAs" - // container may make requests for any FSGroup labels. - FSGroupStrategyRunAsAny FSGroupStrategyType = "RunAsAny" -) - -// SupplementalGroupsStrategyOptions defines the strategy type and options used to create the strategy. -type SupplementalGroupsStrategyOptions struct { - // Rule is the strategy that will dictate what supplemental groups is used in the SecurityContext. - // +optional - Rule SupplementalGroupsStrategyType - // Ranges are the allowed ranges of supplemental groups. If you would like to force a single - // supplemental group then supply a single range with the same start and end. - // +optional - Ranges []GroupIDRange -} - -// SupplementalGroupsStrategyType denotes strategy types for determining valid supplemental -// groups for a SecurityContext. -type SupplementalGroupsStrategyType string - -const ( - // container must run as a particular gid. - SupplementalGroupsStrategyMustRunAs SupplementalGroupsStrategyType = "MustRunAs" - // container may make requests for any gid. - SupplementalGroupsStrategyRunAsAny SupplementalGroupsStrategyType = "RunAsAny" -) - -// PodSecurityPolicyList is a list of PodSecurityPolicy objects. -type PodSecurityPolicyList struct { - metav1.TypeMeta - // +optional - metav1.ListMeta - - Items []PodSecurityPolicy -} - -// +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 -} - -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 - // 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 -} - -// This NetworkPolicyIngressRule matches traffic if and only if the traffic matches 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 -} - -type NetworkPolicyPort struct { - // Optional. The protocol (TCP or UDP) which traffic must match. - // If not specified, this field defaults to TCP. - // +optional - Protocol *api.Protocol - - // If specified, 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. - // If present, only traffic on the specified protocol AND port - // will be matched. - // +optional - Port *intstr.IntOrString -} - -type NetworkPolicyPeer struct { - // Exactly one of the following must be specified. - - // 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/extensions/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/extensions/zz_generated.deepcopy.go deleted file mode 100644 index 48243b9d1..000000000 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/zz_generated.deepcopy.go +++ /dev/null @@ -1,1151 +0,0 @@ -// +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 extensions - -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_extensions_APIVersion, InType: reflect.TypeOf(&APIVersion{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_CustomMetricCurrentStatus, InType: reflect.TypeOf(&CustomMetricCurrentStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_CustomMetricCurrentStatusList, InType: reflect.TypeOf(&CustomMetricCurrentStatusList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_CustomMetricTarget, InType: reflect.TypeOf(&CustomMetricTarget{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_CustomMetricTargetList, InType: reflect.TypeOf(&CustomMetricTargetList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DaemonSet, InType: reflect.TypeOf(&DaemonSet{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DaemonSetList, InType: reflect.TypeOf(&DaemonSetList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DaemonSetSpec, InType: reflect.TypeOf(&DaemonSetSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DaemonSetStatus, InType: reflect.TypeOf(&DaemonSetStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DaemonSetUpdateStrategy, InType: reflect.TypeOf(&DaemonSetUpdateStrategy{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_Deployment, InType: reflect.TypeOf(&Deployment{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DeploymentCondition, InType: reflect.TypeOf(&DeploymentCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DeploymentList, InType: reflect.TypeOf(&DeploymentList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DeploymentRollback, InType: reflect.TypeOf(&DeploymentRollback{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DeploymentSpec, InType: reflect.TypeOf(&DeploymentSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DeploymentStatus, InType: reflect.TypeOf(&DeploymentStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_DeploymentStrategy, InType: reflect.TypeOf(&DeploymentStrategy{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_FSGroupStrategyOptions, InType: reflect.TypeOf(&FSGroupStrategyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_GroupIDRange, InType: reflect.TypeOf(&GroupIDRange{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_HTTPIngressPath, InType: reflect.TypeOf(&HTTPIngressPath{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_HTTPIngressRuleValue, InType: reflect.TypeOf(&HTTPIngressRuleValue{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_HostPortRange, InType: reflect.TypeOf(&HostPortRange{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_Ingress, InType: reflect.TypeOf(&Ingress{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_IngressBackend, InType: reflect.TypeOf(&IngressBackend{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_IngressList, InType: reflect.TypeOf(&IngressList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_IngressRule, InType: reflect.TypeOf(&IngressRule{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_IngressRuleValue, InType: reflect.TypeOf(&IngressRuleValue{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_IngressSpec, InType: reflect.TypeOf(&IngressSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_IngressStatus, InType: reflect.TypeOf(&IngressStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_IngressTLS, InType: reflect.TypeOf(&IngressTLS{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_NetworkPolicy, InType: reflect.TypeOf(&NetworkPolicy{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_NetworkPolicyIngressRule, InType: reflect.TypeOf(&NetworkPolicyIngressRule{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_NetworkPolicyList, InType: reflect.TypeOf(&NetworkPolicyList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_NetworkPolicyPeer, InType: reflect.TypeOf(&NetworkPolicyPeer{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_NetworkPolicyPort, InType: reflect.TypeOf(&NetworkPolicyPort{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_NetworkPolicySpec, InType: reflect.TypeOf(&NetworkPolicySpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_PodSecurityPolicy, InType: reflect.TypeOf(&PodSecurityPolicy{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_PodSecurityPolicyList, InType: reflect.TypeOf(&PodSecurityPolicyList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_PodSecurityPolicySpec, InType: reflect.TypeOf(&PodSecurityPolicySpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ReplicaSet, InType: reflect.TypeOf(&ReplicaSet{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ReplicaSetCondition, InType: reflect.TypeOf(&ReplicaSetCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ReplicaSetList, InType: reflect.TypeOf(&ReplicaSetList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ReplicaSetSpec, InType: reflect.TypeOf(&ReplicaSetSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ReplicaSetStatus, InType: reflect.TypeOf(&ReplicaSetStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ReplicationControllerDummy, InType: reflect.TypeOf(&ReplicationControllerDummy{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_RollbackConfig, InType: reflect.TypeOf(&RollbackConfig{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_RollingUpdateDaemonSet, InType: reflect.TypeOf(&RollingUpdateDaemonSet{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_RollingUpdateDeployment, InType: reflect.TypeOf(&RollingUpdateDeployment{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_RunAsUserStrategyOptions, InType: reflect.TypeOf(&RunAsUserStrategyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_SELinuxStrategyOptions, InType: reflect.TypeOf(&SELinuxStrategyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_Scale, InType: reflect.TypeOf(&Scale{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ScaleSpec, InType: reflect.TypeOf(&ScaleSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ScaleStatus, InType: reflect.TypeOf(&ScaleStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_SupplementalGroupsStrategyOptions, InType: reflect.TypeOf(&SupplementalGroupsStrategyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ThirdPartyResource, InType: reflect.TypeOf(&ThirdPartyResource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ThirdPartyResourceData, InType: reflect.TypeOf(&ThirdPartyResourceData{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ThirdPartyResourceDataList, InType: reflect.TypeOf(&ThirdPartyResourceDataList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_ThirdPartyResourceList, InType: reflect.TypeOf(&ThirdPartyResourceList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_extensions_UserIDRange, InType: reflect.TypeOf(&UserIDRange{})}, - ) -} - -// DeepCopy_extensions_APIVersion is an autogenerated deepcopy function. -func DeepCopy_extensions_APIVersion(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*APIVersion) - out := out.(*APIVersion) - *out = *in - return nil - } -} - -// DeepCopy_extensions_CustomMetricCurrentStatus is an autogenerated deepcopy function. -func DeepCopy_extensions_CustomMetricCurrentStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CustomMetricCurrentStatus) - out := out.(*CustomMetricCurrentStatus) - *out = *in - out.CurrentValue = in.CurrentValue.DeepCopy() - return nil - } -} - -// DeepCopy_extensions_CustomMetricCurrentStatusList is an autogenerated deepcopy function. -func DeepCopy_extensions_CustomMetricCurrentStatusList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CustomMetricCurrentStatusList) - out := out.(*CustomMetricCurrentStatusList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]CustomMetricCurrentStatus, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_CustomMetricCurrentStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_CustomMetricTarget is an autogenerated deepcopy function. -func DeepCopy_extensions_CustomMetricTarget(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CustomMetricTarget) - out := out.(*CustomMetricTarget) - *out = *in - out.TargetValue = in.TargetValue.DeepCopy() - return nil - } -} - -// DeepCopy_extensions_CustomMetricTargetList is an autogenerated deepcopy function. -func DeepCopy_extensions_CustomMetricTargetList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CustomMetricTargetList) - out := out.(*CustomMetricTargetList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]CustomMetricTarget, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_CustomMetricTarget(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_DaemonSet is an autogenerated deepcopy function. -func DeepCopy_extensions_DaemonSet(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DaemonSet) - out := out.(*DaemonSet) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - 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 - } -} - -// DeepCopy_extensions_DaemonSetList is an autogenerated deepcopy function. -func DeepCopy_extensions_DaemonSetList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DaemonSetList) - out := out.(*DaemonSetList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DaemonSet, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_DaemonSet(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_DaemonSetSpec is an autogenerated deepcopy function. -func DeepCopy_extensions_DaemonSetSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DaemonSetSpec) - out := out.(*DaemonSetSpec) - *out = *in - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - if err := api.DeepCopy_api_PodTemplateSpec(&in.Template, &out.Template, c); err != nil { - return err - } - 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 - } -} - -// DeepCopy_extensions_DaemonSetStatus is an autogenerated deepcopy function. -func DeepCopy_extensions_DaemonSetStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - 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 - } -} - -// DeepCopy_extensions_DaemonSetUpdateStrategy is an autogenerated deepcopy function. -func DeepCopy_extensions_DaemonSetUpdateStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DaemonSetUpdateStrategy) - out := out.(*DaemonSetUpdateStrategy) - *out = *in - if in.RollingUpdate != nil { - in, out := &in.RollingUpdate, &out.RollingUpdate - *out = new(RollingUpdateDaemonSet) - **out = **in - } - return nil - } -} - -// DeepCopy_extensions_Deployment is an autogenerated deepcopy function. -func DeepCopy_extensions_Deployment(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Deployment) - out := out.(*Deployment) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_extensions_DeploymentSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_extensions_DeploymentStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_DeploymentCondition is an autogenerated deepcopy function. -func DeepCopy_extensions_DeploymentCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeploymentCondition) - out := out.(*DeploymentCondition) - *out = *in - out.LastUpdateTime = in.LastUpdateTime.DeepCopy() - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_extensions_DeploymentList is an autogenerated deepcopy function. -func DeepCopy_extensions_DeploymentList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeploymentList) - out := out.(*DeploymentList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Deployment, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_Deployment(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_DeploymentRollback is an autogenerated deepcopy function. -func DeepCopy_extensions_DeploymentRollback(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeploymentRollback) - out := out.(*DeploymentRollback) - *out = *in - if in.UpdatedAnnotations != nil { - in, out := &in.UpdatedAnnotations, &out.UpdatedAnnotations - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - return nil - } -} - -// DeepCopy_extensions_DeploymentSpec is an autogenerated deepcopy function. -func DeepCopy_extensions_DeploymentSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeploymentSpec) - out := out.(*DeploymentSpec) - *out = *in - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - if err := api.DeepCopy_api_PodTemplateSpec(&in.Template, &out.Template, c); err != nil { - return err - } - if err := DeepCopy_extensions_DeploymentStrategy(&in.Strategy, &out.Strategy, c); err != nil { - return err - } - if in.RevisionHistoryLimit != nil { - in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit - *out = new(int32) - **out = **in - } - if in.RollbackTo != nil { - in, out := &in.RollbackTo, &out.RollbackTo - *out = new(RollbackConfig) - **out = **in - } - if in.ProgressDeadlineSeconds != nil { - in, out := &in.ProgressDeadlineSeconds, &out.ProgressDeadlineSeconds - *out = new(int32) - **out = **in - } - return nil - } -} - -// DeepCopy_extensions_DeploymentStatus is an autogenerated deepcopy function. -func DeepCopy_extensions_DeploymentStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeploymentStatus) - out := out.(*DeploymentStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]DeploymentCondition, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_DeploymentCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.CollisionCount != nil { - in, out := &in.CollisionCount, &out.CollisionCount - *out = new(int64) - **out = **in - } - return nil - } -} - -// DeepCopy_extensions_DeploymentStrategy is an autogenerated deepcopy function. -func DeepCopy_extensions_DeploymentStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeploymentStrategy) - out := out.(*DeploymentStrategy) - *out = *in - if in.RollingUpdate != nil { - in, out := &in.RollingUpdate, &out.RollingUpdate - *out = new(RollingUpdateDeployment) - **out = **in - } - return nil - } -} - -// DeepCopy_extensions_FSGroupStrategyOptions is an autogenerated deepcopy function. -func DeepCopy_extensions_FSGroupStrategyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FSGroupStrategyOptions) - out := out.(*FSGroupStrategyOptions) - *out = *in - if in.Ranges != nil { - in, out := &in.Ranges, &out.Ranges - *out = make([]GroupIDRange, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_extensions_GroupIDRange is an autogenerated deepcopy function. -func DeepCopy_extensions_GroupIDRange(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GroupIDRange) - out := out.(*GroupIDRange) - *out = *in - return nil - } -} - -// DeepCopy_extensions_HTTPIngressPath is an autogenerated deepcopy function. -func DeepCopy_extensions_HTTPIngressPath(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPIngressPath) - out := out.(*HTTPIngressPath) - *out = *in - return nil - } -} - -// DeepCopy_extensions_HTTPIngressRuleValue is an autogenerated deepcopy function. -func DeepCopy_extensions_HTTPIngressRuleValue(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPIngressRuleValue) - out := out.(*HTTPIngressRuleValue) - *out = *in - if in.Paths != nil { - in, out := &in.Paths, &out.Paths - *out = make([]HTTPIngressPath, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_extensions_HostPortRange is an autogenerated deepcopy function. -func DeepCopy_extensions_HostPortRange(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HostPortRange) - out := out.(*HostPortRange) - *out = *in - return nil - } -} - -// DeepCopy_extensions_Ingress is an autogenerated deepcopy function. -func DeepCopy_extensions_Ingress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Ingress) - out := out.(*Ingress) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_extensions_IngressSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_extensions_IngressStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_IngressBackend is an autogenerated deepcopy function. -func DeepCopy_extensions_IngressBackend(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*IngressBackend) - out := out.(*IngressBackend) - *out = *in - return nil - } -} - -// DeepCopy_extensions_IngressList is an autogenerated deepcopy function. -func DeepCopy_extensions_IngressList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*IngressList) - out := out.(*IngressList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Ingress, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_Ingress(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_IngressRule is an autogenerated deepcopy function. -func DeepCopy_extensions_IngressRule(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*IngressRule) - out := out.(*IngressRule) - *out = *in - if err := DeepCopy_extensions_IngressRuleValue(&in.IngressRuleValue, &out.IngressRuleValue, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_IngressRuleValue is an autogenerated deepcopy function. -func DeepCopy_extensions_IngressRuleValue(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*IngressRuleValue) - out := out.(*IngressRuleValue) - *out = *in - if in.HTTP != nil { - in, out := &in.HTTP, &out.HTTP - *out = new(HTTPIngressRuleValue) - if err := DeepCopy_extensions_HTTPIngressRuleValue(*in, *out, c); err != nil { - return err - } - } - return nil - } -} - -// DeepCopy_extensions_IngressSpec is an autogenerated deepcopy function. -func DeepCopy_extensions_IngressSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*IngressSpec) - out := out.(*IngressSpec) - *out = *in - if in.Backend != nil { - in, out := &in.Backend, &out.Backend - *out = new(IngressBackend) - **out = **in - } - if in.TLS != nil { - in, out := &in.TLS, &out.TLS - *out = make([]IngressTLS, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_IngressTLS(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Rules != nil { - in, out := &in.Rules, &out.Rules - *out = make([]IngressRule, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_IngressRule(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_IngressStatus is an autogenerated deepcopy function. -func DeepCopy_extensions_IngressStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*IngressStatus) - out := out.(*IngressStatus) - *out = *in - if err := api.DeepCopy_api_LoadBalancerStatus(&in.LoadBalancer, &out.LoadBalancer, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_IngressTLS is an autogenerated deepcopy function. -func DeepCopy_extensions_IngressTLS(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*IngressTLS) - out := out.(*IngressTLS) - *out = *in - if in.Hosts != nil { - in, out := &in.Hosts, &out.Hosts - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_extensions_NetworkPolicy is an autogenerated deepcopy function. -func DeepCopy_extensions_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_extensions_NetworkPolicySpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_NetworkPolicyIngressRule is an autogenerated deepcopy function. -func DeepCopy_extensions_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_extensions_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_extensions_NetworkPolicyPeer(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_NetworkPolicyList is an autogenerated deepcopy function. -func DeepCopy_extensions_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_extensions_NetworkPolicy(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_NetworkPolicyPeer is an autogenerated deepcopy function. -func DeepCopy_extensions_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_extensions_NetworkPolicyPort is an autogenerated deepcopy function. -func DeepCopy_extensions_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_extensions_NetworkPolicySpec is an autogenerated deepcopy function. -func DeepCopy_extensions_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_extensions_NetworkPolicyIngressRule(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_PodSecurityPolicy is an autogenerated deepcopy function. -func DeepCopy_extensions_PodSecurityPolicy(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSecurityPolicy) - out := out.(*PodSecurityPolicy) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_extensions_PodSecurityPolicySpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_PodSecurityPolicyList is an autogenerated deepcopy function. -func DeepCopy_extensions_PodSecurityPolicyList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSecurityPolicyList) - out := out.(*PodSecurityPolicyList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PodSecurityPolicy, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_PodSecurityPolicy(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_PodSecurityPolicySpec is an autogenerated deepcopy function. -func DeepCopy_extensions_PodSecurityPolicySpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSecurityPolicySpec) - out := out.(*PodSecurityPolicySpec) - *out = *in - if in.DefaultAddCapabilities != nil { - in, out := &in.DefaultAddCapabilities, &out.DefaultAddCapabilities - *out = make([]api.Capability, len(*in)) - copy(*out, *in) - } - if in.RequiredDropCapabilities != nil { - in, out := &in.RequiredDropCapabilities, &out.RequiredDropCapabilities - *out = make([]api.Capability, len(*in)) - copy(*out, *in) - } - if in.AllowedCapabilities != nil { - in, out := &in.AllowedCapabilities, &out.AllowedCapabilities - *out = make([]api.Capability, len(*in)) - copy(*out, *in) - } - if in.Volumes != nil { - in, out := &in.Volumes, &out.Volumes - *out = make([]FSType, len(*in)) - copy(*out, *in) - } - if in.HostPorts != nil { - in, out := &in.HostPorts, &out.HostPorts - *out = make([]HostPortRange, len(*in)) - copy(*out, *in) - } - if err := DeepCopy_extensions_SELinuxStrategyOptions(&in.SELinux, &out.SELinux, c); err != nil { - return err - } - if err := DeepCopy_extensions_RunAsUserStrategyOptions(&in.RunAsUser, &out.RunAsUser, c); err != nil { - return err - } - if err := DeepCopy_extensions_SupplementalGroupsStrategyOptions(&in.SupplementalGroups, &out.SupplementalGroups, c); err != nil { - return err - } - 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 - } -} - -// DeepCopy_extensions_ReplicaSet is an autogenerated deepcopy function. -func DeepCopy_extensions_ReplicaSet(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicaSet) - out := out.(*ReplicaSet) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_extensions_ReplicaSetSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_extensions_ReplicaSetStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_ReplicaSetCondition is an autogenerated deepcopy function. -func DeepCopy_extensions_ReplicaSetCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicaSetCondition) - out := out.(*ReplicaSetCondition) - *out = *in - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_extensions_ReplicaSetList is an autogenerated deepcopy function. -func DeepCopy_extensions_ReplicaSetList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicaSetList) - out := out.(*ReplicaSetList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ReplicaSet, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_ReplicaSet(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_ReplicaSetSpec is an autogenerated deepcopy function. -func DeepCopy_extensions_ReplicaSetSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicaSetSpec) - out := out.(*ReplicaSetSpec) - *out = *in - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - if err := api.DeepCopy_api_PodTemplateSpec(&in.Template, &out.Template, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_ReplicaSetStatus is an autogenerated deepcopy function. -func DeepCopy_extensions_ReplicaSetStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicaSetStatus) - out := out.(*ReplicaSetStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ReplicaSetCondition, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_ReplicaSetCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_ReplicationControllerDummy is an autogenerated deepcopy function. -func DeepCopy_extensions_ReplicationControllerDummy(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerDummy) - out := out.(*ReplicationControllerDummy) - *out = *in - return nil - } -} - -// DeepCopy_extensions_RollbackConfig is an autogenerated deepcopy function. -func DeepCopy_extensions_RollbackConfig(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RollbackConfig) - out := out.(*RollbackConfig) - *out = *in - return nil - } -} - -// DeepCopy_extensions_RollingUpdateDaemonSet is an autogenerated deepcopy function. -func DeepCopy_extensions_RollingUpdateDaemonSet(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RollingUpdateDaemonSet) - out := out.(*RollingUpdateDaemonSet) - *out = *in - return nil - } -} - -// DeepCopy_extensions_RollingUpdateDeployment is an autogenerated deepcopy function. -func DeepCopy_extensions_RollingUpdateDeployment(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RollingUpdateDeployment) - out := out.(*RollingUpdateDeployment) - *out = *in - return nil - } -} - -// DeepCopy_extensions_RunAsUserStrategyOptions is an autogenerated deepcopy function. -func DeepCopy_extensions_RunAsUserStrategyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RunAsUserStrategyOptions) - out := out.(*RunAsUserStrategyOptions) - *out = *in - if in.Ranges != nil { - in, out := &in.Ranges, &out.Ranges - *out = make([]UserIDRange, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_extensions_SELinuxStrategyOptions is an autogenerated deepcopy function. -func DeepCopy_extensions_SELinuxStrategyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SELinuxStrategyOptions) - out := out.(*SELinuxStrategyOptions) - *out = *in - if in.SELinuxOptions != nil { - in, out := &in.SELinuxOptions, &out.SELinuxOptions - *out = new(api.SELinuxOptions) - **out = **in - } - return nil - } -} - -// DeepCopy_extensions_Scale is an autogenerated deepcopy function. -func DeepCopy_extensions_Scale(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Scale) - out := out.(*Scale) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_extensions_ScaleStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_extensions_ScaleSpec is an autogenerated deepcopy function. -func DeepCopy_extensions_ScaleSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ScaleSpec) - out := out.(*ScaleSpec) - *out = *in - return nil - } -} - -// DeepCopy_extensions_ScaleStatus is an autogenerated deepcopy function. -func DeepCopy_extensions_ScaleStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ScaleStatus) - out := out.(*ScaleStatus) - *out = *in - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - return nil - } -} - -// DeepCopy_extensions_SupplementalGroupsStrategyOptions is an autogenerated deepcopy function. -func DeepCopy_extensions_SupplementalGroupsStrategyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SupplementalGroupsStrategyOptions) - out := out.(*SupplementalGroupsStrategyOptions) - *out = *in - if in.Ranges != nil { - in, out := &in.Ranges, &out.Ranges - *out = make([]GroupIDRange, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_extensions_ThirdPartyResource is an autogenerated deepcopy function. -func DeepCopy_extensions_ThirdPartyResource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ThirdPartyResource) - out := out.(*ThirdPartyResource) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Versions != nil { - in, out := &in.Versions, &out.Versions - *out = make([]APIVersion, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_extensions_ThirdPartyResourceData is an autogenerated deepcopy function. -func DeepCopy_extensions_ThirdPartyResourceData(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ThirdPartyResourceData) - out := out.(*ThirdPartyResourceData) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make([]byte, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_extensions_ThirdPartyResourceDataList is an autogenerated deepcopy function. -func DeepCopy_extensions_ThirdPartyResourceDataList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ThirdPartyResourceDataList) - out := out.(*ThirdPartyResourceDataList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ThirdPartyResourceData, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_ThirdPartyResourceData(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_ThirdPartyResourceList is an autogenerated deepcopy function. -func DeepCopy_extensions_ThirdPartyResourceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ThirdPartyResourceList) - out := out.(*ThirdPartyResourceList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ThirdPartyResource, len(*in)) - for i := range *in { - if err := DeepCopy_extensions_ThirdPartyResource(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_extensions_UserIDRange is an autogenerated deepcopy function. -func DeepCopy_extensions_UserIDRange(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*UserIDRange) - out := out.(*UserIDRange) - *out = *in - return nil - } -} diff --git a/vendor/k8s.io/client-go/pkg/util/doc.go b/vendor/k8s.io/client-go/pkg/util/doc.go deleted file mode 100644 index 1747db550..000000000 --- a/vendor/k8s.io/client-go/pkg/util/doc.go +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2014 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 util implements various utility functions used in both testing and implementation -// of Kubernetes. Package util may not depend on any other package in the Kubernetes -// package tree. -package util diff --git a/vendor/k8s.io/client-go/pkg/util/parsers/parsers.go b/vendor/k8s.io/client-go/pkg/util/parsers/parsers.go deleted file mode 100644 index 4e70cc682..000000000 --- a/vendor/k8s.io/client-go/pkg/util/parsers/parsers.go +++ /dev/null @@ -1,54 +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 parsers - -import ( - "fmt" - - dockerref "github.com/docker/distribution/reference" -) - -const ( - DefaultImageTag = "latest" -) - -// ParseImageName parses a docker image string into three parts: repo, tag and digest. -// If both tag and digest are empty, a default image tag will be returned. -func ParseImageName(image string) (string, string, string, error) { - named, err := dockerref.ParseNamed(image) - if err != nil { - return "", "", "", fmt.Errorf("couldn't parse image name: %v", err) - } - - repoToPull := named.Name() - var tag, digest string - - tagged, ok := named.(dockerref.Tagged) - if ok { - tag = tagged.Tag() - } - - digested, ok := named.(dockerref.Digested) - if ok { - digest = digested.Digest().String() - } - // If no tag was specified, use the default "latest". - if len(tag) == 0 && len(digest) == 0 { - tag = DefaultImageTag - } - return repoToPull, tag, digest, nil -} diff --git a/vendor/k8s.io/client-go/pkg/util/template.go b/vendor/k8s.io/client-go/pkg/util/template.go deleted file mode 100644 index d09d7dc86..000000000 --- a/vendor/k8s.io/client-go/pkg/util/template.go +++ /dev/null @@ -1,48 +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 util - -import ( - "bytes" - "go/doc" - "io" - "strings" - "text/template" -) - -func wrap(indent string, s string) string { - var buf bytes.Buffer - doc.ToText(&buf, s, indent, indent+" ", 80-len(indent)) - return buf.String() -} - -// ExecuteTemplate executes templateText with data and output written to w. -func ExecuteTemplate(w io.Writer, templateText string, data interface{}) error { - t := template.New("top") - t.Funcs(template.FuncMap{ - "trim": strings.TrimSpace, - "wrap": wrap, - }) - template.Must(t.Parse(templateText)) - return t.Execute(w, data) -} - -func ExecuteTemplateToString(templateText string, data interface{}) (string, error) { - b := bytes.Buffer{} - err := ExecuteTemplate(&b, templateText, data) - return b.String(), err -} diff --git a/vendor/k8s.io/client-go/pkg/util/umask_windows.go b/vendor/k8s.io/client-go/pkg/util/umask_windows.go deleted file mode 100644 index 7a1ba1538..000000000 --- a/vendor/k8s.io/client-go/pkg/util/umask_windows.go +++ /dev/null @@ -1,27 +0,0 @@ -// +build windows - -/* -Copyright 2014 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 util - -import ( - "errors" -) - -func Umask(mask int) (int, error) { - return 0, errors.New("platform and architecture is not supported") -} diff --git a/vendor/k8s.io/client-go/pkg/util/util.go b/vendor/k8s.io/client-go/pkg/util/util.go deleted file mode 100644 index 356b295a3..000000000 --- a/vendor/k8s.io/client-go/pkg/util/util.go +++ /dev/null @@ -1,131 +0,0 @@ -/* -Copyright 2014 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 util - -import ( - "fmt" - "os" - "reflect" - "regexp" -) - -// Takes a list of strings and compiles them into a list of regular expressions -func CompileRegexps(regexpStrings []string) ([]*regexp.Regexp, error) { - regexps := []*regexp.Regexp{} - for _, regexpStr := range regexpStrings { - r, err := regexp.Compile(regexpStr) - if err != nil { - return []*regexp.Regexp{}, err - } - regexps = append(regexps, r) - } - return regexps, nil -} - -// Detects if using systemd as the init system -// Please note that simply reading /proc/1/cmdline can be misleading because -// some installation of various init programs can automatically make /sbin/init -// a symlink or even a renamed version of their main program. -// TODO(dchen1107): realiably detects the init system using on the system: -// systemd, upstart, initd, etc. -func UsingSystemdInitSystem() bool { - if _, err := os.Stat("/run/systemd/system"); err == nil { - return true - } - - return false -} - -// Tests whether all pointer fields in a struct are nil. This is useful when, -// for example, an API struct is handled by plugins which need to distinguish -// "no plugin accepted this spec" from "this spec is empty". -// -// This function is only valid for structs and pointers to structs. Any other -// type will cause a panic. Passing a typed nil pointer will return true. -func AllPtrFieldsNil(obj interface{}) bool { - v := reflect.ValueOf(obj) - if !v.IsValid() { - panic(fmt.Sprintf("reflect.ValueOf() produced a non-valid Value for %#v", obj)) - } - if v.Kind() == reflect.Ptr { - if v.IsNil() { - return true - } - v = v.Elem() - } - for i := 0; i < v.NumField(); i++ { - if v.Field(i).Kind() == reflect.Ptr && !v.Field(i).IsNil() { - return false - } - } - return true -} - -func FileExists(filename string) (bool, error) { - if _, err := os.Stat(filename); os.IsNotExist(err) { - return false, nil - } else if err != nil { - return false, err - } - return true, nil -} - -// ReadDirNoStat returns a string of files/directories contained -// in dirname without calling lstat on them. -func ReadDirNoStat(dirname string) ([]string, error) { - if dirname == "" { - dirname = "." - } - - f, err := os.Open(dirname) - if err != nil { - return nil, err - } - defer f.Close() - - return f.Readdirnames(-1) -} - -// IntPtr returns a pointer to an int -func IntPtr(i int) *int { - o := i - return &o -} - -// Int32Ptr returns a pointer to an int32 -func Int32Ptr(i int32) *int32 { - o := i - return &o -} - -// IntPtrDerefOr dereference the int ptr and returns it i not nil, -// else returns def. -func IntPtrDerefOr(ptr *int, def int) int { - if ptr != nil { - return *ptr - } - return def -} - -// Int32PtrDerefOr dereference the int32 ptr and returns it i not nil, -// else returns def. -func Int32PtrDerefOr(ptr *int32, def int32) int32 { - if ptr != nil { - return *ptr - } - return def -} diff --git a/vendor/k8s.io/client-go/pkg/version/doc.go b/vendor/k8s.io/client-go/pkg/version/doc.go index 4bf139ce8..30399fb02 100644 --- a/vendor/k8s.io/client-go/pkg/version/doc.go +++ b/vendor/k8s.io/client-go/pkg/version/doc.go @@ -16,4 +16,5 @@ limitations under the License. // Package version supplies version information collected at build time to // kubernetes components. +// +k8s:openapi-gen=true package version // import "k8s.io/client-go/pkg/version" diff --git a/vendor/k8s.io/client-go/rest/config.go b/vendor/k8s.io/client-go/rest/config.go index b45114865..dca7333dd 100644 --- a/vendor/k8s.io/client-go/rest/config.go +++ b/vendor/k8s.io/client-go/rest/config.go @@ -29,10 +29,10 @@ import ( "github.com/golang/glog" + "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/client-go/pkg/api/v1" "k8s.io/client-go/pkg/version" clientcmdapi "k8s.io/client-go/tools/clientcmd/api" certutil "k8s.io/client-go/util/cert" @@ -126,6 +126,7 @@ type ImpersonationConfig struct { Extra map[string][]string } +// +k8s:deepcopy-gen=true // TLSClientConfig contains settings to enable transport layer security type TLSClientConfig struct { // Server should be accessed without verifying the TLS certificate. For testing only. diff --git a/vendor/k8s.io/client-go/rest/request.go b/vendor/k8s.io/client-go/rest/request.go index cfb4511ba..2d676cec0 100644 --- a/vendor/k8s.io/client-go/rest/request.go +++ b/vendor/k8s.io/client-go/rest/request.go @@ -35,25 +35,17 @@ import ( "github.com/golang/glog" "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/fields" - "k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/serializer/streaming" "k8s.io/apimachinery/pkg/util/net" - "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/watch" - "k8s.io/client-go/pkg/api/v1" restclientwatch "k8s.io/client-go/rest/watch" "k8s.io/client-go/tools/metrics" "k8s.io/client-go/util/flowcontrol" ) var ( - // specialParams lists parameters that are handled specially and which users of Request - // are therefore not allowed to set manually. - specialParams = sets.NewString("timeout") - // longThrottleLatency defines threshold for logging requests. All requests being // throttle for more than longThrottleLatency will be logged. longThrottleLatency = 50 * time.Millisecond @@ -269,7 +261,7 @@ func (r *Request) AbsPath(segments ...string) *Request { } // RequestURI overwrites existing path and parameters with the value of the provided server relative -// URI. Some parameters (those in specialParameters) cannot be overwritten. +// URI. func (r *Request) RequestURI(uri string) *Request { if r.err != nil { return r @@ -291,143 +283,6 @@ func (r *Request) RequestURI(uri string) *Request { return r } -const ( - // A constant that clients can use to refer in a field selector to the object name field. - // Will be automatically emitted as the correct name for the API version. - nodeUnschedulable = "spec.unschedulable" - objectNameField = "metadata.name" - podHost = "spec.nodeName" - podStatus = "status.phase" - secretType = "type" - - eventReason = "reason" - eventSource = "source" - eventType = "type" - eventInvolvedKind = "involvedObject.kind" - eventInvolvedNamespace = "involvedObject.namespace" - eventInvolvedName = "involvedObject.name" - eventInvolvedUID = "involvedObject.uid" - eventInvolvedAPIVersion = "involvedObject.apiVersion" - eventInvolvedResourceVersion = "involvedObject.resourceVersion" - eventInvolvedFieldPath = "involvedObject.fieldPath" -) - -type clientFieldNameToAPIVersionFieldName map[string]string - -func (c clientFieldNameToAPIVersionFieldName) filterField(field, value string) (newField, newValue string, err error) { - newFieldName, ok := c[field] - if !ok { - return "", "", fmt.Errorf("%v - %v - no field mapping defined", field, value) - } - return newFieldName, value, nil -} - -type resourceTypeToFieldMapping map[string]clientFieldNameToAPIVersionFieldName - -func (r resourceTypeToFieldMapping) filterField(resourceType, field, value string) (newField, newValue string, err error) { - fMapping, ok := r[resourceType] - if !ok { - return "", "", fmt.Errorf("%v - %v - %v - no field mapping defined", resourceType, field, value) - } - return fMapping.filterField(field, value) -} - -type versionToResourceToFieldMapping map[schema.GroupVersion]resourceTypeToFieldMapping - -// filterField transforms the given field/value selector for the given groupVersion and resource -func (v versionToResourceToFieldMapping) filterField(groupVersion *schema.GroupVersion, resourceType, field, value string) (newField, newValue string, err error) { - rMapping, ok := v[*groupVersion] - if !ok { - // no groupVersion overrides registered, default to identity mapping - return field, value, nil - } - newField, newValue, err = rMapping.filterField(resourceType, field, value) - if err != nil { - // no groupVersionResource overrides registered, default to identity mapping - return field, value, nil - } - return newField, newValue, nil -} - -var fieldMappings = versionToResourceToFieldMapping{ - v1.SchemeGroupVersion: resourceTypeToFieldMapping{ - "nodes": clientFieldNameToAPIVersionFieldName{ - objectNameField: objectNameField, - nodeUnschedulable: nodeUnschedulable, - }, - "pods": clientFieldNameToAPIVersionFieldName{ - objectNameField: objectNameField, - podHost: podHost, - podStatus: podStatus, - }, - "secrets": clientFieldNameToAPIVersionFieldName{ - secretType: secretType, - }, - "serviceAccounts": clientFieldNameToAPIVersionFieldName{ - objectNameField: objectNameField, - }, - "endpoints": clientFieldNameToAPIVersionFieldName{ - objectNameField: objectNameField, - }, - "events": clientFieldNameToAPIVersionFieldName{ - objectNameField: objectNameField, - eventReason: eventReason, - eventSource: eventSource, - eventType: eventType, - eventInvolvedKind: eventInvolvedKind, - eventInvolvedNamespace: eventInvolvedNamespace, - eventInvolvedName: eventInvolvedName, - eventInvolvedUID: eventInvolvedUID, - eventInvolvedAPIVersion: eventInvolvedAPIVersion, - eventInvolvedResourceVersion: eventInvolvedResourceVersion, - eventInvolvedFieldPath: eventInvolvedFieldPath, - }, - }, -} - -// FieldsSelectorParam adds the given selector as a query parameter with the name paramName. -func (r *Request) FieldsSelectorParam(s fields.Selector) *Request { - if r.err != nil { - return r - } - if s == nil { - return r - } - if s.Empty() { - return r - } - s2, err := s.Transform(func(field, value string) (newField, newValue string, err error) { - return fieldMappings.filterField(r.content.GroupVersion, r.resource, field, value) - }) - if err != nil { - r.err = err - return r - } - return r.setParam(metav1.FieldSelectorQueryParam(r.content.GroupVersion.String()), s2.String()) -} - -// LabelsSelectorParam adds the given selector as a query parameter -func (r *Request) LabelsSelectorParam(s labels.Selector) *Request { - if r.err != nil { - return r - } - if s == nil { - return r - } - if s.Empty() { - return r - } - return r.setParam(metav1.LabelSelectorQueryParam(r.content.GroupVersion.String()), s.String()) -} - -// UintParam creates a query parameter with the given value. -func (r *Request) UintParam(paramName string, u uint64) *Request { - if r.err != nil { - return r - } - return r.setParam(paramName, strconv.FormatUint(u, 10)) -} - // Param creates a query parameter with the given string value. func (r *Request) Param(paramName, s string) *Request { if r.err != nil { @@ -439,6 +294,8 @@ func (r *Request) Param(paramName, s string) *Request { // VersionedParams will take the provided object, serialize it to a map[string][]string using the // implicit RESTClient API version and the default parameter codec, and then add those as parameters // to the request. Use this to provide versioned query parameters from client libraries. +// VersionedParams will not write query parameters that have omitempty set and are empty. If a +// parameter has already been set it is appended to (Params and VersionedParams are additive). func (r *Request) VersionedParams(obj runtime.Object, codec runtime.ParameterCodec) *Request { if r.err != nil { return r @@ -449,52 +306,15 @@ func (r *Request) VersionedParams(obj runtime.Object, codec runtime.ParameterCod return r } for k, v := range params { - for _, value := range v { - // TODO: Move it to setParam method, once we get rid of - // FieldSelectorParam & LabelSelectorParam methods. - if k == metav1.LabelSelectorQueryParam(r.content.GroupVersion.String()) && value == "" { - // Don't set an empty selector for backward compatibility. - // Since there is no way to get the difference between empty - // and unspecified string, we don't set it to avoid having - // labelSelector= param in every request. - continue - } - if k == metav1.FieldSelectorQueryParam(r.content.GroupVersion.String()) { - if len(value) == 0 { - // Don't set an empty selector for backward compatibility. - // Since there is no way to get the difference between empty - // and unspecified string, we don't set it to avoid having - // fieldSelector= param in every request. - continue - } - // TODO: Filtering should be handled somewhere else. - selector, err := fields.ParseSelector(value) - if err != nil { - r.err = fmt.Errorf("unparsable field selector: %v", err) - return r - } - filteredSelector, err := selector.Transform( - func(field, value string) (newField, newValue string, err error) { - return fieldMappings.filterField(r.content.GroupVersion, r.resource, field, value) - }) - if err != nil { - r.err = fmt.Errorf("untransformable field selector: %v", err) - return r - } - value = filteredSelector.String() - } - - r.setParam(k, value) + if r.params == nil { + r.params = make(url.Values) } + r.params[k] = append(r.params[k], v...) } return r } func (r *Request) setParam(paramName, value string) *Request { - if specialParams.Has(paramName) { - r.err = fmt.Errorf("must set %v through the corresponding function, not directly.", paramName) - return r - } if r.params == nil { r.params = make(url.Values) } diff --git a/vendor/k8s.io/client-go/rest/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/rest/zz_generated.deepcopy.go new file mode 100644 index 000000000..c750da3e4 --- /dev/null +++ b/vendor/k8s.io/client-go/rest/zz_generated.deepcopy.go @@ -0,0 +1,67 @@ +// +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 rest + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + reflect "reflect" +) + +// Deprecated: GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. +func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { + return []conversion.GeneratedDeepCopyFunc{ + {Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*TLSClientConfig).DeepCopyInto(out.(*TLSClientConfig)) + return nil + }, InType: reflect.TypeOf(&TLSClientConfig{})}, + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TLSClientConfig) DeepCopyInto(out *TLSClientConfig) { + *out = *in + if in.CertData != nil { + in, out := &in.CertData, &out.CertData + *out = make([]byte, len(*in)) + copy(*out, *in) + } + if in.KeyData != nil { + in, out := &in.KeyData, &out.KeyData + *out = make([]byte, len(*in)) + copy(*out, *in) + } + if in.CAData != nil { + in, out := &in.CAData, &out.CAData + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new TLSClientConfig. +func (x *TLSClientConfig) DeepCopy() *TLSClientConfig { + if x == nil { + return nil + } + out := new(TLSClientConfig) + x.DeepCopyInto(out) + return out +} diff --git a/vendor/k8s.io/client-go/pkg/api/v1/doc.go b/vendor/k8s.io/client-go/tools/clientcmd/api/doc.go similarity index 91% rename from vendor/k8s.io/client-go/pkg/api/v1/doc.go rename to vendor/k8s.io/client-go/tools/clientcmd/api/doc.go index 0fdd87f75..93a891e95 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/doc.go +++ b/vendor/k8s.io/client-go/tools/clientcmd/api/doc.go @@ -14,5 +14,5 @@ See the License for the specific language governing permissions and limitations under the License. */ -// Package v1 is the v1 version of the API. -package v1 +// +k8s:deepcopy-gen=package,register +package api diff --git a/vendor/k8s.io/client-go/tools/clientcmd/api/types.go b/vendor/k8s.io/client-go/tools/clientcmd/api/types.go index 76090c6f5..407dec83a 100644 --- a/vendor/k8s.io/client-go/tools/clientcmd/api/types.go +++ b/vendor/k8s.io/client-go/tools/clientcmd/api/types.go @@ -25,6 +25,7 @@ import ( // Config holds the information needed to build connect to remote kubernetes clusters as a given user // IMPORTANT if you add fields to this struct, please update IsConfigEmpty() +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type Config struct { // Legacy field from pkg/api/types.go TypeMeta. // TODO(jlowdermilk): remove this after eliminating downstream dependencies. diff --git a/vendor/k8s.io/client-go/tools/clientcmd/api/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/tools/clientcmd/api/zz_generated.deepcopy.go new file mode 100644 index 000000000..4262f6087 --- /dev/null +++ b/vendor/k8s.io/client-go/tools/clientcmd/api/zz_generated.deepcopy.go @@ -0,0 +1,308 @@ +// +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 api + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +// Deprecated: register deep-copy functions. +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// Deprecated: 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: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AuthInfo).DeepCopyInto(out.(*AuthInfo)) + return nil + }, InType: reflect.TypeOf(&AuthInfo{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AuthProviderConfig).DeepCopyInto(out.(*AuthProviderConfig)) + return nil + }, InType: reflect.TypeOf(&AuthProviderConfig{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Cluster).DeepCopyInto(out.(*Cluster)) + return nil + }, InType: reflect.TypeOf(&Cluster{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Config).DeepCopyInto(out.(*Config)) + return nil + }, InType: reflect.TypeOf(&Config{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Context).DeepCopyInto(out.(*Context)) + return nil + }, InType: reflect.TypeOf(&Context{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Preferences).DeepCopyInto(out.(*Preferences)) + return nil + }, InType: reflect.TypeOf(&Preferences{})}, + ) +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthInfo) DeepCopyInto(out *AuthInfo) { + *out = *in + if in.ClientCertificateData != nil { + in, out := &in.ClientCertificateData, &out.ClientCertificateData + *out = make([]byte, len(*in)) + copy(*out, *in) + } + if in.ClientKeyData != nil { + in, out := &in.ClientKeyData, &out.ClientKeyData + *out = make([]byte, len(*in)) + copy(*out, *in) + } + if in.ImpersonateGroups != nil { + in, out := &in.ImpersonateGroups, &out.ImpersonateGroups + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.ImpersonateUserExtra != nil { + in, out := &in.ImpersonateUserExtra, &out.ImpersonateUserExtra + *out = make(map[string][]string, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = make([]string, len(val)) + copy((*out)[key], val) + } + } + } + if in.AuthProvider != nil { + in, out := &in.AuthProvider, &out.AuthProvider + if *in == nil { + *out = nil + } else { + *out = new(AuthProviderConfig) + (*in).DeepCopyInto(*out) + } + } + if in.Extensions != nil { + in, out := &in.Extensions, &out.Extensions + *out = make(map[string]runtime.Object, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = val.DeepCopyObject() + } + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new AuthInfo. +func (x *AuthInfo) DeepCopy() *AuthInfo { + if x == nil { + return nil + } + out := new(AuthInfo) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthProviderConfig) DeepCopyInto(out *AuthProviderConfig) { + *out = *in + if in.Config != nil { + in, out := &in.Config, &out.Config + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new AuthProviderConfig. +func (x *AuthProviderConfig) DeepCopy() *AuthProviderConfig { + if x == nil { + return nil + } + out := new(AuthProviderConfig) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Cluster) DeepCopyInto(out *Cluster) { + *out = *in + if in.CertificateAuthorityData != nil { + in, out := &in.CertificateAuthorityData, &out.CertificateAuthorityData + *out = make([]byte, len(*in)) + copy(*out, *in) + } + if in.Extensions != nil { + in, out := &in.Extensions, &out.Extensions + *out = make(map[string]runtime.Object, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = val.DeepCopyObject() + } + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Cluster. +func (x *Cluster) DeepCopy() *Cluster { + if x == nil { + return nil + } + out := new(Cluster) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Config) DeepCopyInto(out *Config) { + *out = *in + in.Preferences.DeepCopyInto(&out.Preferences) + if in.Clusters != nil { + in, out := &in.Clusters, &out.Clusters + *out = make(map[string]*Cluster, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = new(Cluster) + val.DeepCopyInto((*out)[key]) + } + } + } + if in.AuthInfos != nil { + in, out := &in.AuthInfos, &out.AuthInfos + *out = make(map[string]*AuthInfo, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = new(AuthInfo) + val.DeepCopyInto((*out)[key]) + } + } + } + if in.Contexts != nil { + in, out := &in.Contexts, &out.Contexts + *out = make(map[string]*Context, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = new(Context) + val.DeepCopyInto((*out)[key]) + } + } + } + if in.Extensions != nil { + in, out := &in.Extensions, &out.Extensions + *out = make(map[string]runtime.Object, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = val.DeepCopyObject() + } + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Config. +func (x *Config) DeepCopy() *Config { + if x == nil { + return nil + } + out := new(Config) + x.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (x *Config) DeepCopyObject() runtime.Object { + if c := x.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Context) DeepCopyInto(out *Context) { + *out = *in + if in.Extensions != nil { + in, out := &in.Extensions, &out.Extensions + *out = make(map[string]runtime.Object, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = val.DeepCopyObject() + } + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Context. +func (x *Context) DeepCopy() *Context { + if x == nil { + return nil + } + out := new(Context) + x.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Preferences) DeepCopyInto(out *Preferences) { + *out = *in + if in.Extensions != nil { + in, out := &in.Extensions, &out.Extensions + *out = make(map[string]runtime.Object, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = val.DeepCopyObject() + } + } + } + return +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new Preferences. +func (x *Preferences) DeepCopy() *Preferences { + if x == nil { + return nil + } + out := new(Preferences) + x.DeepCopyInto(out) + return out +} diff --git a/vendor/k8s.io/client-go/tools/remotecommand/remotecommand.go b/vendor/k8s.io/client-go/tools/remotecommand/remotecommand.go index a90fab1fe..bcbe9fcd4 100644 --- a/vendor/k8s.io/client-go/tools/remotecommand/remotecommand.go +++ b/vendor/k8s.io/client-go/tools/remotecommand/remotecommand.go @@ -25,22 +25,21 @@ import ( "github.com/golang/glog" "k8s.io/apimachinery/pkg/util/httpstream" - "k8s.io/apimachinery/pkg/util/httpstream/spdy" "k8s.io/apimachinery/pkg/util/remotecommand" restclient "k8s.io/client-go/rest" "k8s.io/client-go/transport" + spdy "k8s.io/client-go/transport/spdy" ) // StreamOptions holds information pertaining to the current streaming session: supported stream // protocols, input/output streams, if the client is requesting a TTY, and a terminal size queue to // support terminal resizing. type StreamOptions struct { - SupportedProtocols []string - Stdin io.Reader - Stdout io.Writer - Stderr io.Writer - Tty bool - TerminalSizeQueue TerminalSizeQueue + Stdin io.Reader + Stdout io.Writer + Stderr io.Writer + Tty bool + TerminalSizeQueue TerminalSizeQueue } // Executor is an interface for transporting shell-style streams. @@ -52,95 +51,6 @@ type Executor interface { Stream(options StreamOptions) error } -// StreamExecutor supports the ability to dial an httpstream connection and the ability to -// run a command line stream protocol over that dialer. -type StreamExecutor interface { - Executor - httpstream.Dialer -} - -// streamExecutor handles transporting standard shell streams over an httpstream connection. -type streamExecutor struct { - upgrader httpstream.UpgradeRoundTripper - transport http.RoundTripper - - method string - url *url.URL -} - -// NewExecutor connects to the provided server and upgrades the connection to -// multiplexed bidirectional streams. The current implementation uses SPDY, -// but this could be replaced with HTTP/2 once it's available, or something else. -// TODO: the common code between this and portforward could be abstracted. -func NewExecutor(config *restclient.Config, method string, url *url.URL) (StreamExecutor, error) { - tlsConfig, err := restclient.TLSConfigFor(config) - if err != nil { - return nil, err - } - - upgradeRoundTripper := spdy.NewRoundTripper(tlsConfig, true) - wrapper, err := restclient.HTTPWrappersForConfig(config, upgradeRoundTripper) - if err != nil { - return nil, err - } - - return &streamExecutor{ - upgrader: upgradeRoundTripper, - transport: wrapper, - method: method, - url: url, - }, nil -} - -// NewStreamExecutor upgrades the request so that it supports multiplexed bidirectional -// streams. This method takes a stream upgrader and an optional function that is invoked -// to wrap the round tripper. This method may be used by clients that are lower level than -// Kubernetes clients or need to provide their own upgrade round tripper. -func NewStreamExecutor(upgrader httpstream.UpgradeRoundTripper, fn func(http.RoundTripper) http.RoundTripper, method string, url *url.URL) (StreamExecutor, error) { - rt := http.RoundTripper(upgrader) - if fn != nil { - rt = fn(rt) - } - return &streamExecutor{ - upgrader: upgrader, - transport: rt, - method: method, - url: url, - }, nil -} - -// Dial opens a connection to a remote server and attempts to negotiate a SPDY -// connection. Upon success, it returns the connection and the protocol -// selected by the server. -func (e *streamExecutor) Dial(protocols ...string) (httpstream.Connection, string, error) { - rt := transport.DebugWrappers(e.transport) - - // TODO the client probably shouldn't be created here, as it doesn't allow - // flexibility to allow callers to configure it. - client := &http.Client{Transport: rt} - - req, err := http.NewRequest(e.method, e.url.String(), nil) - if err != nil { - return nil, "", fmt.Errorf("error creating request: %v", err) - } - for i := range protocols { - req.Header.Add(httpstream.HeaderProtocolVersion, protocols[i]) - } - - resp, err := client.Do(req) - if err != nil { - return nil, "", fmt.Errorf("error sending request: %v", err) - } - defer resp.Body.Close() - - conn, err := e.upgrader.NewConnection(resp) - if err != nil { - return nil, "", err - } - - return conn, resp.Header.Get(httpstream.HeaderProtocolVersion), nil -} - type streamCreator interface { CreateStream(headers http.Header) (httpstream.Stream, error) } @@ -149,10 +59,60 @@ type streamProtocolHandler interface { stream(conn streamCreator) error } +// streamExecutor handles transporting standard shell streams over an httpstream connection. +type streamExecutor struct { + upgrader spdy.Upgrader + transport http.RoundTripper + + method string + url *url.URL + protocols []string +} + +// NewSPDYExecutor connects to the provided server and upgrades the connection to +// multiplexed bidirectional streams. +func NewSPDYExecutor(config *restclient.Config, method string, url *url.URL) (Executor, error) { + return NewSPDYExecutorForProtocols( + config, method, url, + remotecommand.StreamProtocolV4Name, + remotecommand.StreamProtocolV3Name, + remotecommand.StreamProtocolV2Name, + remotecommand.StreamProtocolV1Name, + ) +} + +// NewSPDYExecutorForProtocols connects to the provided server and upgrades the connection to +// multiplexed bidirectional streams using only the provided protocols. Exposed for testing, most +// callers should use NewSPDYExecutor. +func NewSPDYExecutorForProtocols(config *restclient.Config, method string, url *url.URL, protocols ...string) (Executor, error) { + wrapper, upgradeRoundTripper, err := spdy.RoundTripperFor(config) + if err != nil { + return nil, err + } + wrapper = transport.DebugWrappers(wrapper) + return &streamExecutor{ + upgrader: upgradeRoundTripper, + transport: wrapper, + method: method, + url: url, + protocols: protocols, + }, nil +} + // Stream opens a protocol streamer to the server and streams until a client closes // the connection or the server disconnects. func (e *streamExecutor) Stream(options StreamOptions) error { - conn, protocol, err := e.Dial(options.SupportedProtocols...) + req, err := http.NewRequest(e.method, e.url.String(), nil) + if err != nil { + return fmt.Errorf("error creating request: %v", err) + } + + conn, protocol, err := spdy.Negotiate( + e.upgrader, + &http.Client{Transport: e.transport}, + req, + e.protocols..., + ) if err != nil { return err } diff --git a/vendor/k8s.io/client-go/tools/remotecommand/v1.go b/vendor/k8s.io/client-go/tools/remotecommand/v1.go index 1db917c0b..92dad727f 100644 --- a/vendor/k8s.io/client-go/tools/remotecommand/v1.go +++ b/vendor/k8s.io/client-go/tools/remotecommand/v1.go @@ -23,8 +23,8 @@ import ( "net/http" "github.com/golang/glog" + "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/util/httpstream" - "k8s.io/client-go/pkg/api/v1" ) // streamProtocolV1 implements the first version of the streaming exec & attach diff --git a/vendor/k8s.io/client-go/tools/remotecommand/v2.go b/vendor/k8s.io/client-go/tools/remotecommand/v2.go index 95346a439..b74ae8de2 100644 --- a/vendor/k8s.io/client-go/tools/remotecommand/v2.go +++ b/vendor/k8s.io/client-go/tools/remotecommand/v2.go @@ -23,8 +23,8 @@ import ( "net/http" "sync" + "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/util/runtime" - "k8s.io/client-go/pkg/api/v1" ) // streamProtocolV2 implements version 2 of the streaming protocol for attach diff --git a/vendor/k8s.io/client-go/tools/remotecommand/v3.go b/vendor/k8s.io/client-go/tools/remotecommand/v3.go index 03b9e2a68..846dd24a5 100644 --- a/vendor/k8s.io/client-go/tools/remotecommand/v3.go +++ b/vendor/k8s.io/client-go/tools/remotecommand/v3.go @@ -22,8 +22,8 @@ import ( "net/http" "sync" + "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/util/runtime" - "k8s.io/client-go/pkg/api/v1" ) // streamProtocolV3 implements version 3 of the streaming protocol for attach diff --git a/vendor/k8s.io/client-go/transport/spdy/spdy.go b/vendor/k8s.io/client-go/transport/spdy/spdy.go new file mode 100644 index 000000000..e0eb468ba --- /dev/null +++ b/vendor/k8s.io/client-go/transport/spdy/spdy.go @@ -0,0 +1,94 @@ +/* +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 spdy + +import ( + "fmt" + "net/http" + "net/url" + + "k8s.io/apimachinery/pkg/util/httpstream" + "k8s.io/apimachinery/pkg/util/httpstream/spdy" + restclient "k8s.io/client-go/rest" +) + +// Upgrader validates a response from the server after a SPDY upgrade. +type Upgrader interface { + // NewConnection validates the response and creates a new Connection. + NewConnection(resp *http.Response) (httpstream.Connection, error) +} + +// RoundTripperFor returns a round tripper and upgrader to use with SPDY. +func RoundTripperFor(config *restclient.Config) (http.RoundTripper, Upgrader, error) { + tlsConfig, err := restclient.TLSConfigFor(config) + if err != nil { + return nil, nil, err + } + upgradeRoundTripper := spdy.NewRoundTripper(tlsConfig, true) + wrapper, err := restclient.HTTPWrappersForConfig(config, upgradeRoundTripper) + if err != nil { + return nil, nil, err + } + return wrapper, upgradeRoundTripper, nil +} + +// dialer implements the httpstream.Dialer interface. +type dialer struct { + client *http.Client + upgrader Upgrader + method string + url *url.URL +} + +var _ httpstream.Dialer = &dialer{} + +// NewDialer will create a dialer that connects to the provided URL and upgrades the connection to SPDY. +func NewDialer(upgrader Upgrader, client *http.Client, method string, url *url.URL) httpstream.Dialer { + return &dialer{ + client: client, + upgrader: upgrader, + method: method, + url: url, + } +} + +func (d *dialer) Dial(protocols ...string) (httpstream.Connection, string, error) { + req, err := http.NewRequest(d.method, d.url.String(), nil) + if err != nil { + return nil, "", fmt.Errorf("error creating request: %v", err) + } + return Negotiate(d.upgrader, d.client, req, protocols...) +} + +// Negotiate opens a connection to a remote server and attempts to negotiate +// a SPDY connection. Upon success, it returns the connection and the protocol selected by +// the server. The client transport must use the upgradeRoundTripper - see RoundTripperFor. +func Negotiate(upgrader Upgrader, client *http.Client, req *http.Request, protocols ...string) (httpstream.Connection, string, error) { + for i := range protocols { + req.Header.Add(httpstream.HeaderProtocolVersion, protocols[i]) + } + resp, err := client.Do(req) + if err != nil { + return nil, "", fmt.Errorf("error sending request: %v", err) + } + defer resp.Body.Close() + conn, err := upgrader.NewConnection(resp) + if err != nil { + return nil, "", err + } + return conn, resp.Header.Get(httpstream.HeaderProtocolVersion), nil +} diff --git a/vendor/k8s.io/kubernetes/README.md b/vendor/k8s.io/kubernetes/README.md index e859cd7a1..a86767b3c 100644 --- a/vendor/k8s.io/kubernetes/README.md +++ b/vendor/k8s.io/kubernetes/README.md @@ -79,7 +79,7 @@ That said, if you have questions, reach out to us [interactive tutorial]: http://kubernetes.io/docs/tutorials/kubernetes-basics [kubernetes.io]: http://kubernetes.io [Scalable Microservices with Kubernetes]: https://www.udacity.com/course/scalable-microservices-with-kubernetes--ud615 -[Submit Queue]: http://submit-queue.k8s.io/#/e2e +[Submit Queue]: http://submit-queue.k8s.io/#/ci [Submit Queue Widget]: http://submit-queue.k8s.io/health.svg?v=1 [troubleshooting guide]: https://kubernetes.io/docs/tasks/debug-application-cluster/troubleshooting/ 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 e1080a34a..0d4143819 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/annotation_key_constants.go +++ b/vendor/k8s.io/kubernetes/pkg/api/annotation_key_constants.go @@ -72,11 +72,6 @@ const ( // This annotation can be attached to node. ObjectTTLAnnotationKey string = "node.alpha.kubernetes.io/ttl" - // AffinityAnnotationKey represents the key of affinity data (json serialized) - // in the Annotations of a Pod. - // TODO: remove when alpha support for affinity is removed - AffinityAnnotationKey string = "scheduler.alpha.kubernetes.io/affinity" - // annotation key prefix used to identify non-convertible json paths. NonConvertibleAnnotationPrefix = "non-convertible.kubernetes.io" @@ -94,20 +89,4 @@ const ( // // Not all cloud providers support this annotation, though AWS & GCE do. AnnotationLoadBalancerSourceRangesKey = "service.beta.kubernetes.io/load-balancer-source-ranges" - - // AnnotationValueExternalTrafficLocal Value of annotation to specify local endpoints behavior. - AnnotationValueExternalTrafficLocal = "OnlyLocal" - // AnnotationValueExternalTrafficGlobal Value of annotation to specify global (legacy) behavior. - AnnotationValueExternalTrafficGlobal = "Global" - - // TODO: The beta annotations have been deprecated, remove them when we release k8s 1.8. - - // BetaAnnotationHealthCheckNodePort Annotation specifying the healthcheck nodePort for the service. - // If not specified, annotation is created by the service api backend with the allocated nodePort. - // Will use user-specified nodePort value if specified by the client. - BetaAnnotationHealthCheckNodePort = "service.beta.kubernetes.io/healthcheck-nodeport" - - // BetaAnnotationExternalTraffic An annotation that denotes if this Service desires to route - // external traffic to local endpoints only. This preserves Source IP and avoids a second hop. - BetaAnnotationExternalTraffic = "service.beta.kubernetes.io/external-traffic" ) diff --git a/vendor/k8s.io/kubernetes/pkg/api/register.go b/vendor/k8s.io/kubernetes/pkg/api/register.go index 5f261bdfb..39562e5a5 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/register.go +++ b/vendor/k8s.io/kubernetes/pkg/api/register.go @@ -85,6 +85,7 @@ func addKnownTypes(scheme *runtime.Scheme) error { &ServiceProxyOptions{}, &NodeList{}, &Node{}, + &NodeConfigSource{}, &NodeProxyOptions{}, &Endpoints{}, &EndpointsList{}, diff --git a/vendor/k8s.io/kubernetes/pkg/api/types.go b/vendor/k8s.io/kubernetes/pkg/api/types.go index 233f828f0..ce2b75023 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/types.go +++ b/vendor/k8s.io/kubernetes/pkg/api/types.go @@ -415,8 +415,9 @@ const ( AlphaStorageNodeAffinityAnnotation = "volume.alpha.kubernetes.io/node-affinity" ) -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type PersistentVolume struct { metav1.TypeMeta @@ -483,6 +484,8 @@ type PersistentVolumeStatus struct { Reason string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + type PersistentVolumeList struct { metav1.TypeMeta // +optional @@ -490,7 +493,8 @@ type PersistentVolumeList struct { Items []PersistentVolume } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // PersistentVolumeClaim is a user's request for and claim to a persistent volume type PersistentVolumeClaim struct { @@ -507,6 +511,8 @@ type PersistentVolumeClaim struct { Status PersistentVolumeClaimStatus } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + type PersistentVolumeClaimList struct { metav1.TypeMeta // +optional @@ -709,9 +715,11 @@ type ISCSIVolumeSource struct { // Fibre Channel volumes can only be mounted as read/write once. // Fibre Channel volumes support ownership management and SELinux relabeling. type FCVolumeSource struct { - // Required: FC target worldwide names (WWNs) + // Optional: FC target worldwide names (WWNs) + // +optional TargetWWNs []string - // Required: FC target lun number + // Optional: FC target lun number + // +optional Lun *int32 // Filesystem type to mount. // Must be a filesystem type supported by the host operating system. @@ -723,6 +731,10 @@ type FCVolumeSource struct { // the ReadOnly setting in VolumeMounts. // +optional ReadOnly bool + // Optional: FC volume World Wide Identifiers (WWIDs) + // Either WWIDs or TargetWWNs and Lun must be set, but not both simultaneously. + // +optional + WWIDs []string } // FlexVolume represents a generic volume resource that is @@ -1008,7 +1020,7 @@ type DownwardAPIVolumeSource struct { type DownwardAPIVolumeFile struct { // Required: Path is the relative path name of the file to be created. Must not be absolute or contain the '..' path. Must be utf-8 encoded. The first item of the relative path must not start with '..' Path string - // Required: Selects a field of the pod: only annotations, labels, name and namespace are supported. + // Required: Selects a field of the pod: only annotations, labels, name, namespace and uid are supported. // +optional FieldRef *ObjectFieldSelector // Selects a resource of the container: only resources limits and requests @@ -1103,7 +1115,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 @@ -1373,7 +1385,7 @@ type EnvVar struct { // Only one of its fields may be set. type EnvVarSource struct { // Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels, metadata.annotations, - // spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP. + // metadata.uid, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP. // +optional FieldRef *ObjectFieldSelector // Selects a resource of the container: only resources limits and requests @@ -1434,7 +1446,7 @@ type SecretKeySelector struct { // EnvFromSource represents the source of a set of ConfigMaps type EnvFromSource struct { - // An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. + // An optional identifier to prepend to each key in the ConfigMap. // +optional Prefix string // The ConfigMap to select from. @@ -1839,6 +1851,8 @@ const ( RestartPolicyNever RestartPolicy = "Never" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodList is a list of Pods. type PodList struct { metav1.TypeMeta @@ -1936,6 +1950,7 @@ type PodAffinity struct { // podAffinityTerm are intersected, i.e. all terms must be satisfied. // +optional // RequiredDuringSchedulingRequiredDuringExecution []PodAffinityTerm + // If the affinity requirements specified by this field are not met at // scheduling time, the pod will not be scheduled onto the node. // If the affinity requirements specified by this field cease to be met @@ -1970,6 +1985,7 @@ type PodAntiAffinity struct { // podAffinityTerm are intersected, i.e. all terms must be satisfied. // +optional // RequiredDuringSchedulingRequiredDuringExecution []PodAffinityTerm + // If the anti-affinity requirements specified by this field are not met at // scheduling time, the pod will not be scheduled onto the node. // If the anti-affinity requirements specified by this field cease to be met @@ -2065,8 +2081,8 @@ type PreferredSchedulingTerm struct { Preference NodeSelectorTerm } -// The node this Taint is attached to has the effect "effect" on -// any pod that that does not tolerate the Taint. +// The node this Taint is attached to has the "effect" on +// any pod that does not tolerate the Taint. type Taint struct { // Required. The taint key to be applied to a node. Key string @@ -2213,6 +2229,20 @@ type PodSpec struct { // file if specified. This is only valid for non-hostNetwork pods. // +optional HostAliases []HostAlias + // If specified, indicates the pod's priority. "SYSTEM" is a special keyword + // which indicates the highest priority. Any other name must be defined by + // creating a PriorityClass object with that name. + // If not specified, the pod priority will be default or zero if there is no + // default. + // +optional + PriorityClassName string + // The priority value. Various system components use this field to find the + // priority of the pod. When Priority Admission Controller is enabled, it + // prevents users from setting this field. The admission controller populates + // this field from PriorityClassName. + // The higher the value, the higher the priority. + // +optional + Priority *int32 } // HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the @@ -2263,7 +2293,7 @@ type PodSecurityContext struct { // PodSecurityContext, the value specified in SecurityContext takes precedence // for that container. // +optional - RunAsUser *types.UnixUserID + RunAsUser *int64 // Indicates that the container must run as a non-root user. // If true, the Kubelet will validate the image at runtime to ensure that it // does not run as UID 0 (root) and fail to start the container if it does. @@ -2276,7 +2306,7 @@ type PodSecurityContext struct { // to the container's primary GID. If unspecified, no groups will be added to // any container. // +optional - SupplementalGroups []types.UnixGroupID + SupplementalGroups []int64 // A special supplemental group that applies to all containers in a pod. // Some volume types allow the Kubelet to change the ownership of that volume // to be owned by the pod: @@ -2287,7 +2317,7 @@ type PodSecurityContext struct { // // If unset, the Kubelet will not modify the ownership and permissions of any volume. // +optional - FSGroup *types.UnixGroupID + FSGroup *int64 } // PodQOSClass defines the supported qos classes of Pods. @@ -2312,7 +2342,7 @@ type PodStatus struct { // A human readable message indicating details about why the pod is in this state. // +optional Message string - // A brief CamelCase message indicating details about why the pod is in this state. e.g. 'OutOfDisk' + // A brief CamelCase message indicating details about why the pod is in this state. e.g. 'Evicted' // +optional Reason string @@ -2342,6 +2372,8 @@ type PodStatus struct { ContainerStatuses []ContainerStatus } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded type PodStatusResult struct { metav1.TypeMeta @@ -2353,7 +2385,8 @@ type PodStatusResult struct { Status PodStatus } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Pod is a collection of containers, used as either input (create, update) or as output (list, get). type Pod struct { @@ -2382,7 +2415,8 @@ type PodTemplateSpec struct { Spec PodSpec } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // PodTemplate describes a template for creating copies of a predefined pod. type PodTemplate struct { @@ -2395,6 +2429,8 @@ type PodTemplate struct { Template PodTemplateSpec } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodTemplateList is a list of PodTemplates. type PodTemplateList struct { metav1.TypeMeta @@ -2487,7 +2523,8 @@ type ReplicationControllerCondition struct { Message string } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ReplicationController represents the configuration of a replication controller. type ReplicationController struct { @@ -2505,6 +2542,8 @@ type ReplicationController struct { Status ReplicationControllerStatus } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ReplicationControllerList is a collection of replication controllers. type ReplicationControllerList struct { metav1.TypeMeta @@ -2520,6 +2559,8 @@ const ( ClusterIPNone = "None" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ServiceList holds a list of services. type ServiceList struct { metav1.TypeMeta @@ -2689,6 +2730,18 @@ type ServiceSpec struct { // and ExternalTrafficPolicy is set to Local. // +optional HealthCheckNodePort int32 + + // publishNotReadyAddresses, when set to true, indicates that DNS implementations + // must publish the notReadyAddresses of subsets for the Endpoints associated with + // the Service. The default value is false. + // The primary use case for setting this field is to use a StatefulSet's Headless Service + // to propagate SRV records for its Pods without respect to their readiness for purpose + // of peer discovery. + // This field will replace the service.alpha.kubernetes.io/tolerate-unready-endpoints + // when that annotation is deprecated and all clients have been converted to use this + // field. + // +optional + PublishNotReadyAddresses bool } type ServicePort struct { @@ -2717,7 +2770,8 @@ type ServicePort struct { NodePort int32 } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // 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 @@ -2736,7 +2790,8 @@ type Service struct { Status ServiceStatus } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ServiceAccount binds together: // * a name, understood by users, and perhaps by peripheral systems, for an identity @@ -2762,6 +2817,8 @@ type ServiceAccount struct { AutomountServiceAccountToken *bool } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ServiceAccountList is a list of ServiceAccount objects type ServiceAccountList struct { metav1.TypeMeta @@ -2771,7 +2828,8 @@ type ServiceAccountList struct { Items []ServiceAccount } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Endpoints is a collection of endpoints that implement the actual service. Example: // Name: "mysvc", @@ -2841,6 +2899,8 @@ type EndpointPort struct { Protocol Protocol } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // EndpointsList is a list of endpoints. type EndpointsList struct { metav1.TypeMeta @@ -2873,6 +2933,19 @@ type NodeSpec struct { // If specified, the node's taints. // +optional Taints []Taint + + // If specified, the source to get node configuration from + // The DynamicKubeletConfig feature gate must be enabled for the Kubelet to use this field + // +optional + ConfigSource *NodeConfigSource +} + +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + +// NodeConfigSource specifies a source of node configuration. Exactly one subfield must be non-nil. +type NodeConfigSource struct { + metav1.TypeMeta + ConfigMapRef *ObjectReference } // DaemonEndpoint contains information about a single Daemon endpoint. @@ -2897,11 +2970,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. @@ -3110,8 +3183,9 @@ const ( // ResourceList is a set of (resource name, quantity) pairs. type ResourceList map[ResourceName]resource.Quantity -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Node is a worker node in Kubernetes // The name of the node according to etcd is in ObjectMeta.Name. @@ -3129,6 +3203,8 @@ type Node struct { Status NodeStatus } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // NodeList is a list of nodes. type NodeList struct { metav1.TypeMeta @@ -3170,8 +3246,9 @@ const ( NamespaceTerminating NamespacePhase = "Terminating" ) -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // A namespace provides a scope for Names. // Use of multiple namespaces is optional @@ -3189,6 +3266,8 @@ type Namespace struct { Status NamespaceStatus } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // NamespaceList is a list of Namespaces. type NamespaceList struct { metav1.TypeMeta @@ -3198,6 +3277,8 @@ type NamespaceList struct { Items []Namespace } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // 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 { @@ -3231,6 +3312,8 @@ const ( DeletePropagationForeground DeletionPropagation = "Foreground" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // DeleteOptions may be provided when deleting an API object // DEPRECATED: This type has been moved to meta/v1 and will be removed soon. type DeleteOptions struct { @@ -3262,6 +3345,8 @@ type DeleteOptions struct { PropagationPolicy *DeletionPropagation } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ListOptions is the query options to a standard REST list call, and has future support for // watch calls. // DEPRECATED: This type has been moved to meta/v1 and will be removed soon. @@ -3289,6 +3374,8 @@ type ListOptions struct { TimeoutSeconds *int64 } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodLogOptions is the query options for a Pod's logs REST call type PodLogOptions struct { metav1.TypeMeta @@ -3321,6 +3408,8 @@ type PodLogOptions struct { LimitBytes *int64 } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodAttachOptions is the query options to a Pod's remote attach call // TODO: merge w/ PodExecOptions below for stdin, stdout, etc type PodAttachOptions struct { @@ -3347,6 +3436,8 @@ type PodAttachOptions struct { Container string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodExecOptions is the query options to a Pod's remote exec call type PodExecOptions struct { metav1.TypeMeta @@ -3370,6 +3461,8 @@ type PodExecOptions struct { Command []string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodPortForwardOptions is the query options to a Pod's port forward call type PodPortForwardOptions struct { metav1.TypeMeta @@ -3379,6 +3472,8 @@ type PodPortForwardOptions struct { Ports []int32 } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // PodProxyOptions is the query options to a Pod's proxy call type PodProxyOptions struct { metav1.TypeMeta @@ -3387,6 +3482,8 @@ type PodProxyOptions struct { Path string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // NodeProxyOptions is the query options to a Node's proxy call type NodeProxyOptions struct { metav1.TypeMeta @@ -3395,6 +3492,8 @@ type NodeProxyOptions struct { Path string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ServiceProxyOptions is the query options to a Service's proxy call. type ServiceProxyOptions struct { metav1.TypeMeta @@ -3408,6 +3507,7 @@ type ServiceProxyOptions struct { } // ObjectReference contains enough information to let you inspect or modify the referred object. +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type ObjectReference struct { // +optional Kind string @@ -3440,6 +3540,8 @@ type LocalObjectReference struct { Name string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + type SerializedReference struct { metav1.TypeMeta // +optional @@ -3463,7 +3565,8 @@ const ( EventTypeWarning string = "Warning" ) -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Event is a report of an event somewhere in the cluster. // TODO: Decide whether to store these separately or with the object they apply to. @@ -3509,6 +3612,8 @@ type Event struct { Type string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // EventList is a list of events. type EventList struct { metav1.TypeMeta @@ -3518,6 +3623,8 @@ type EventList struct { Items []Event } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // List holds a list of objects, which may not be known by the server. type List struct { metav1.TypeMeta @@ -3567,7 +3674,8 @@ type LimitRangeSpec struct { Limits []LimitRangeItem } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // LimitRange sets resource usage limits for each kind of resource in a Namespace type LimitRange struct { @@ -3580,6 +3688,8 @@ type LimitRange struct { Spec LimitRangeSpec } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // LimitRangeList is a list of LimitRange items. type LimitRangeList struct { metav1.TypeMeta @@ -3657,7 +3767,8 @@ type ResourceQuotaStatus struct { Used ResourceList } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ResourceQuota sets aggregate quota restrictions enforced per namespace type ResourceQuota struct { @@ -3674,6 +3785,8 @@ type ResourceQuota struct { Status ResourceQuotaStatus } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ResourceQuotaList is a list of ResourceQuota items type ResourceQuotaList struct { metav1.TypeMeta @@ -3684,7 +3797,8 @@ type ResourceQuotaList struct { Items []ResourceQuota } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Secret holds secret data of a certain type. The total bytes of the values in // the Data field must be less than MaxSecretSize bytes. @@ -3787,8 +3901,14 @@ const ( TLSCertKey = "tls.crt" // TLSPrivateKeyKey is the key for the private key field in a TLS secret. TLSPrivateKeyKey = "tls.key" + // SecretTypeBootstrapToken is used during the automated bootstrap process (first + // implemented by kubeadm). It stores tokens that are used to sign well known + // ConfigMaps. They are used for authn. + SecretTypeBootstrapToken SecretType = "bootstrap.kubernetes.io/token" ) +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + type SecretList struct { metav1.TypeMeta // +optional @@ -3797,7 +3917,8 @@ type SecretList struct { Items []Secret } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ConfigMap holds configuration data for components or applications to consume. type ConfigMap struct { @@ -3811,6 +3932,8 @@ type ConfigMap struct { Data map[string]string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ConfigMapList is a resource containing a list of ConfigMap objects. type ConfigMapList struct { metav1.TypeMeta @@ -3838,7 +3961,7 @@ const ( // Enable TTY for remote command execution ExecTTYParam = "tty" // Command to run for remote command execution - ExecCommandParamm = "command" + ExecCommandParam = "command" // Name of header that specifies stream type StreamType = "streamType" @@ -3879,8 +4002,9 @@ type ComponentCondition struct { Error string } -// +genclient=true -// +nonNamespaced=true +// +genclient +// +genclient:nonNamespaced +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // ComponentStatus (and ComponentStatusList) holds the cluster validation info. type ComponentStatus struct { @@ -3892,6 +4016,8 @@ type ComponentStatus struct { Conditions []ComponentCondition } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + type ComponentStatusList struct { metav1.TypeMeta // +optional @@ -3924,7 +4050,7 @@ type SecurityContext struct { // May also be set in PodSecurityContext. If set in both SecurityContext and // PodSecurityContext, the value specified in SecurityContext takes precedence. // +optional - RunAsUser *types.UnixUserID + RunAsUser *int64 // Indicates that the container must run as a non-root user. // If true, the Kubelet will validate the image at runtime to ensure that it // does not run as UID 0 (root) and fail to start the container if it does. @@ -3937,6 +4063,11 @@ type SecurityContext struct { // files to, ensuring the persistent data can only be written to mounts. // +optional ReadOnlyRootFilesystem *bool + // AllowPrivilegeEscalation controls whether a process can gain more + // privileges than it's parent process. This bool directly controls if + // the no_new_privs flag will be set on the container process. + // +optional + AllowPrivilegeEscalation *bool } // SELinuxOptions are the labels to be applied to the container. @@ -3955,6 +4086,8 @@ type SELinuxOptions struct { Level string } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // RangeAllocation is an opaque API object (not exposed to end users) that can be persisted to record // the global allocation state of the cluster. The schema of Range and Data generic, in that Range // should be a string representation of the inputs to a range (for instance, for IP allocation it 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 b9b24716e..efba5e24a 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go @@ -23,8 +23,6 @@ package api import ( v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" - fields "k8s.io/apimachinery/pkg/fields" - labels "k8s.io/apimachinery/pkg/labels" runtime "k8s.io/apimachinery/pkg/runtime" types "k8s.io/apimachinery/pkg/types" reflect "reflect" @@ -36,3741 +34,6065 @@ func init() { // RegisterDeepCopies adds deep-copy functions to the given scheme. Public // to allow building arbitrary schemes. +// +// Deprecated: deepcopy registration will go away when static deepcopy is fully implemented. func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AWSElasticBlockStoreVolumeSource, InType: reflect.TypeOf(&AWSElasticBlockStoreVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Affinity, InType: reflect.TypeOf(&Affinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AttachedVolume, InType: reflect.TypeOf(&AttachedVolume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AvoidPods, InType: reflect.TypeOf(&AvoidPods{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AzureDiskVolumeSource, InType: reflect.TypeOf(&AzureDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_AzureFileVolumeSource, InType: reflect.TypeOf(&AzureFileVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Binding, InType: reflect.TypeOf(&Binding{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Capabilities, InType: reflect.TypeOf(&Capabilities{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_CephFSVolumeSource, InType: reflect.TypeOf(&CephFSVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_CinderVolumeSource, InType: reflect.TypeOf(&CinderVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ComponentCondition, InType: reflect.TypeOf(&ComponentCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ComponentStatus, InType: reflect.TypeOf(&ComponentStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ComponentStatusList, InType: reflect.TypeOf(&ComponentStatusList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMap, InType: reflect.TypeOf(&ConfigMap{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapEnvSource, InType: reflect.TypeOf(&ConfigMapEnvSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapKeySelector, InType: reflect.TypeOf(&ConfigMapKeySelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapList, InType: reflect.TypeOf(&ConfigMapList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapProjection, InType: reflect.TypeOf(&ConfigMapProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ConfigMapVolumeSource, InType: reflect.TypeOf(&ConfigMapVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Container, InType: reflect.TypeOf(&Container{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerImage, InType: reflect.TypeOf(&ContainerImage{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerPort, InType: reflect.TypeOf(&ContainerPort{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerState, InType: reflect.TypeOf(&ContainerState{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStateRunning, InType: reflect.TypeOf(&ContainerStateRunning{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStateTerminated, InType: reflect.TypeOf(&ContainerStateTerminated{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStateWaiting, InType: reflect.TypeOf(&ContainerStateWaiting{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ContainerStatus, InType: reflect.TypeOf(&ContainerStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DaemonEndpoint, InType: reflect.TypeOf(&DaemonEndpoint{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DeleteOptions, InType: reflect.TypeOf(&DeleteOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DownwardAPIProjection, InType: reflect.TypeOf(&DownwardAPIProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DownwardAPIVolumeFile, InType: reflect.TypeOf(&DownwardAPIVolumeFile{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_DownwardAPIVolumeSource, InType: reflect.TypeOf(&DownwardAPIVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EmptyDirVolumeSource, InType: reflect.TypeOf(&EmptyDirVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointAddress, InType: reflect.TypeOf(&EndpointAddress{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointPort, InType: reflect.TypeOf(&EndpointPort{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointSubset, InType: reflect.TypeOf(&EndpointSubset{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Endpoints, InType: reflect.TypeOf(&Endpoints{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EndpointsList, InType: reflect.TypeOf(&EndpointsList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EnvFromSource, InType: reflect.TypeOf(&EnvFromSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EnvVar, InType: reflect.TypeOf(&EnvVar{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EnvVarSource, InType: reflect.TypeOf(&EnvVarSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Event, InType: reflect.TypeOf(&Event{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EventList, InType: reflect.TypeOf(&EventList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_EventSource, InType: reflect.TypeOf(&EventSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ExecAction, InType: reflect.TypeOf(&ExecAction{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_FCVolumeSource, InType: reflect.TypeOf(&FCVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_FlexVolumeSource, InType: reflect.TypeOf(&FlexVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_FlockerVolumeSource, InType: reflect.TypeOf(&FlockerVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_GCEPersistentDiskVolumeSource, InType: reflect.TypeOf(&GCEPersistentDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_GitRepoVolumeSource, InType: reflect.TypeOf(&GitRepoVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_GlusterfsVolumeSource, InType: reflect.TypeOf(&GlusterfsVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HTTPGetAction, InType: reflect.TypeOf(&HTTPGetAction{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HTTPHeader, InType: reflect.TypeOf(&HTTPHeader{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Handler, InType: reflect.TypeOf(&Handler{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HostAlias, InType: reflect.TypeOf(&HostAlias{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_HostPathVolumeSource, InType: reflect.TypeOf(&HostPathVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ISCSIVolumeSource, InType: reflect.TypeOf(&ISCSIVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_KeyToPath, InType: reflect.TypeOf(&KeyToPath{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Lifecycle, InType: reflect.TypeOf(&Lifecycle{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRange, InType: reflect.TypeOf(&LimitRange{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRangeItem, InType: reflect.TypeOf(&LimitRangeItem{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRangeList, InType: reflect.TypeOf(&LimitRangeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LimitRangeSpec, InType: reflect.TypeOf(&LimitRangeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_List, InType: reflect.TypeOf(&List{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ListOptions, InType: reflect.TypeOf(&ListOptions{})}, - 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{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NamespaceSpec, InType: reflect.TypeOf(&NamespaceSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NamespaceStatus, InType: reflect.TypeOf(&NamespaceStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Node, InType: reflect.TypeOf(&Node{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeAddress, InType: reflect.TypeOf(&NodeAddress{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeAffinity, InType: reflect.TypeOf(&NodeAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeCondition, InType: reflect.TypeOf(&NodeCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeDaemonEndpoints, InType: reflect.TypeOf(&NodeDaemonEndpoints{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeList, InType: reflect.TypeOf(&NodeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeProxyOptions, InType: reflect.TypeOf(&NodeProxyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeResources, InType: reflect.TypeOf(&NodeResources{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSelector, InType: reflect.TypeOf(&NodeSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSelectorRequirement, InType: reflect.TypeOf(&NodeSelectorRequirement{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSelectorTerm, InType: reflect.TypeOf(&NodeSelectorTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSpec, InType: reflect.TypeOf(&NodeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeStatus, InType: reflect.TypeOf(&NodeStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NodeSystemInfo, InType: reflect.TypeOf(&NodeSystemInfo{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ObjectFieldSelector, InType: reflect.TypeOf(&ObjectFieldSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ObjectMeta, InType: reflect.TypeOf(&ObjectMeta{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ObjectReference, InType: reflect.TypeOf(&ObjectReference{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolume, InType: reflect.TypeOf(&PersistentVolume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaim, InType: reflect.TypeOf(&PersistentVolumeClaim{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimList, InType: reflect.TypeOf(&PersistentVolumeClaimList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimSpec, InType: reflect.TypeOf(&PersistentVolumeClaimSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimStatus, InType: reflect.TypeOf(&PersistentVolumeClaimStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeClaimVolumeSource, InType: reflect.TypeOf(&PersistentVolumeClaimVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeList, InType: reflect.TypeOf(&PersistentVolumeList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeSource, InType: reflect.TypeOf(&PersistentVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeSpec, InType: reflect.TypeOf(&PersistentVolumeSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PersistentVolumeStatus, InType: reflect.TypeOf(&PersistentVolumeStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PhotonPersistentDiskVolumeSource, InType: reflect.TypeOf(&PhotonPersistentDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Pod, InType: reflect.TypeOf(&Pod{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAffinity, InType: reflect.TypeOf(&PodAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAffinityTerm, InType: reflect.TypeOf(&PodAffinityTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAntiAffinity, InType: reflect.TypeOf(&PodAntiAffinity{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodAttachOptions, InType: reflect.TypeOf(&PodAttachOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodCondition, InType: reflect.TypeOf(&PodCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodExecOptions, InType: reflect.TypeOf(&PodExecOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodList, InType: reflect.TypeOf(&PodList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodLogOptions, InType: reflect.TypeOf(&PodLogOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodPortForwardOptions, InType: reflect.TypeOf(&PodPortForwardOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodProxyOptions, InType: reflect.TypeOf(&PodProxyOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodSecurityContext, InType: reflect.TypeOf(&PodSecurityContext{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodSignature, InType: reflect.TypeOf(&PodSignature{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodSpec, InType: reflect.TypeOf(&PodSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodStatus, InType: reflect.TypeOf(&PodStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodStatusResult, InType: reflect.TypeOf(&PodStatusResult{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodTemplate, InType: reflect.TypeOf(&PodTemplate{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodTemplateList, InType: reflect.TypeOf(&PodTemplateList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PodTemplateSpec, InType: reflect.TypeOf(&PodTemplateSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PortworxVolumeSource, InType: reflect.TypeOf(&PortworxVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Preconditions, InType: reflect.TypeOf(&Preconditions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PreferAvoidPodsEntry, InType: reflect.TypeOf(&PreferAvoidPodsEntry{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_PreferredSchedulingTerm, InType: reflect.TypeOf(&PreferredSchedulingTerm{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Probe, InType: reflect.TypeOf(&Probe{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ProjectedVolumeSource, InType: reflect.TypeOf(&ProjectedVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_QuobyteVolumeSource, InType: reflect.TypeOf(&QuobyteVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_RBDVolumeSource, InType: reflect.TypeOf(&RBDVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_RangeAllocation, InType: reflect.TypeOf(&RangeAllocation{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationController, InType: reflect.TypeOf(&ReplicationController{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerCondition, InType: reflect.TypeOf(&ReplicationControllerCondition{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerList, InType: reflect.TypeOf(&ReplicationControllerList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerSpec, InType: reflect.TypeOf(&ReplicationControllerSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ReplicationControllerStatus, InType: reflect.TypeOf(&ReplicationControllerStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceFieldSelector, InType: reflect.TypeOf(&ResourceFieldSelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuota, InType: reflect.TypeOf(&ResourceQuota{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuotaList, InType: reflect.TypeOf(&ResourceQuotaList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuotaSpec, InType: reflect.TypeOf(&ResourceQuotaSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceQuotaStatus, InType: reflect.TypeOf(&ResourceQuotaStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ResourceRequirements, InType: reflect.TypeOf(&ResourceRequirements{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SELinuxOptions, InType: reflect.TypeOf(&SELinuxOptions{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ScaleIOVolumeSource, InType: reflect.TypeOf(&ScaleIOVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Secret, InType: reflect.TypeOf(&Secret{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretEnvSource, InType: reflect.TypeOf(&SecretEnvSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretKeySelector, InType: reflect.TypeOf(&SecretKeySelector{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretList, InType: reflect.TypeOf(&SecretList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretProjection, InType: reflect.TypeOf(&SecretProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecretVolumeSource, InType: reflect.TypeOf(&SecretVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SecurityContext, InType: reflect.TypeOf(&SecurityContext{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_SerializedReference, InType: reflect.TypeOf(&SerializedReference{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Service, InType: reflect.TypeOf(&Service{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceAccount, InType: reflect.TypeOf(&ServiceAccount{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceAccountList, InType: reflect.TypeOf(&ServiceAccountList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceList, InType: reflect.TypeOf(&ServiceList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServicePort, InType: reflect.TypeOf(&ServicePort{})}, - 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{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Toleration, InType: reflect.TypeOf(&Toleration{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Volume, InType: reflect.TypeOf(&Volume{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VolumeMount, InType: reflect.TypeOf(&VolumeMount{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VolumeProjection, InType: reflect.TypeOf(&VolumeProjection{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VolumeSource, InType: reflect.TypeOf(&VolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_VsphereVirtualDiskVolumeSource, InType: reflect.TypeOf(&VsphereVirtualDiskVolumeSource{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_WeightedPodAffinityTerm, InType: reflect.TypeOf(&WeightedPodAffinityTerm{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AWSElasticBlockStoreVolumeSource).DeepCopyInto(out.(*AWSElasticBlockStoreVolumeSource)) + return nil + }, InType: reflect.TypeOf(&AWSElasticBlockStoreVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Affinity).DeepCopyInto(out.(*Affinity)) + return nil + }, InType: reflect.TypeOf(&Affinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AttachedVolume).DeepCopyInto(out.(*AttachedVolume)) + return nil + }, InType: reflect.TypeOf(&AttachedVolume{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AvoidPods).DeepCopyInto(out.(*AvoidPods)) + return nil + }, InType: reflect.TypeOf(&AvoidPods{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AzureDiskVolumeSource).DeepCopyInto(out.(*AzureDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&AzureDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*AzureFileVolumeSource).DeepCopyInto(out.(*AzureFileVolumeSource)) + return nil + }, InType: reflect.TypeOf(&AzureFileVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Binding).DeepCopyInto(out.(*Binding)) + return nil + }, InType: reflect.TypeOf(&Binding{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Capabilities).DeepCopyInto(out.(*Capabilities)) + return nil + }, InType: reflect.TypeOf(&Capabilities{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*CephFSVolumeSource).DeepCopyInto(out.(*CephFSVolumeSource)) + return nil + }, InType: reflect.TypeOf(&CephFSVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*CinderVolumeSource).DeepCopyInto(out.(*CinderVolumeSource)) + return nil + }, InType: reflect.TypeOf(&CinderVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ComponentCondition).DeepCopyInto(out.(*ComponentCondition)) + return nil + }, InType: reflect.TypeOf(&ComponentCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ComponentStatus).DeepCopyInto(out.(*ComponentStatus)) + return nil + }, InType: reflect.TypeOf(&ComponentStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ComponentStatusList).DeepCopyInto(out.(*ComponentStatusList)) + return nil + }, InType: reflect.TypeOf(&ComponentStatusList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMap).DeepCopyInto(out.(*ConfigMap)) + return nil + }, InType: reflect.TypeOf(&ConfigMap{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapEnvSource).DeepCopyInto(out.(*ConfigMapEnvSource)) + return nil + }, InType: reflect.TypeOf(&ConfigMapEnvSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapKeySelector).DeepCopyInto(out.(*ConfigMapKeySelector)) + return nil + }, InType: reflect.TypeOf(&ConfigMapKeySelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapList).DeepCopyInto(out.(*ConfigMapList)) + return nil + }, InType: reflect.TypeOf(&ConfigMapList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapProjection).DeepCopyInto(out.(*ConfigMapProjection)) + return nil + }, InType: reflect.TypeOf(&ConfigMapProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ConfigMapVolumeSource).DeepCopyInto(out.(*ConfigMapVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ConfigMapVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Container).DeepCopyInto(out.(*Container)) + return nil + }, InType: reflect.TypeOf(&Container{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerImage).DeepCopyInto(out.(*ContainerImage)) + return nil + }, InType: reflect.TypeOf(&ContainerImage{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerPort).DeepCopyInto(out.(*ContainerPort)) + return nil + }, InType: reflect.TypeOf(&ContainerPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerState).DeepCopyInto(out.(*ContainerState)) + return nil + }, InType: reflect.TypeOf(&ContainerState{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStateRunning).DeepCopyInto(out.(*ContainerStateRunning)) + return nil + }, InType: reflect.TypeOf(&ContainerStateRunning{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStateTerminated).DeepCopyInto(out.(*ContainerStateTerminated)) + return nil + }, InType: reflect.TypeOf(&ContainerStateTerminated{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStateWaiting).DeepCopyInto(out.(*ContainerStateWaiting)) + return nil + }, InType: reflect.TypeOf(&ContainerStateWaiting{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ContainerStatus).DeepCopyInto(out.(*ContainerStatus)) + return nil + }, InType: reflect.TypeOf(&ContainerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DaemonEndpoint).DeepCopyInto(out.(*DaemonEndpoint)) + return nil + }, InType: reflect.TypeOf(&DaemonEndpoint{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DeleteOptions).DeepCopyInto(out.(*DeleteOptions)) + return nil + }, InType: reflect.TypeOf(&DeleteOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DownwardAPIProjection).DeepCopyInto(out.(*DownwardAPIProjection)) + return nil + }, InType: reflect.TypeOf(&DownwardAPIProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DownwardAPIVolumeFile).DeepCopyInto(out.(*DownwardAPIVolumeFile)) + return nil + }, InType: reflect.TypeOf(&DownwardAPIVolumeFile{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*DownwardAPIVolumeSource).DeepCopyInto(out.(*DownwardAPIVolumeSource)) + return nil + }, InType: reflect.TypeOf(&DownwardAPIVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EmptyDirVolumeSource).DeepCopyInto(out.(*EmptyDirVolumeSource)) + return nil + }, InType: reflect.TypeOf(&EmptyDirVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointAddress).DeepCopyInto(out.(*EndpointAddress)) + return nil + }, InType: reflect.TypeOf(&EndpointAddress{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointPort).DeepCopyInto(out.(*EndpointPort)) + return nil + }, InType: reflect.TypeOf(&EndpointPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointSubset).DeepCopyInto(out.(*EndpointSubset)) + return nil + }, InType: reflect.TypeOf(&EndpointSubset{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Endpoints).DeepCopyInto(out.(*Endpoints)) + return nil + }, InType: reflect.TypeOf(&Endpoints{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EndpointsList).DeepCopyInto(out.(*EndpointsList)) + return nil + }, InType: reflect.TypeOf(&EndpointsList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EnvFromSource).DeepCopyInto(out.(*EnvFromSource)) + return nil + }, InType: reflect.TypeOf(&EnvFromSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EnvVar).DeepCopyInto(out.(*EnvVar)) + return nil + }, InType: reflect.TypeOf(&EnvVar{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EnvVarSource).DeepCopyInto(out.(*EnvVarSource)) + return nil + }, InType: reflect.TypeOf(&EnvVarSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Event).DeepCopyInto(out.(*Event)) + return nil + }, InType: reflect.TypeOf(&Event{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EventList).DeepCopyInto(out.(*EventList)) + return nil + }, InType: reflect.TypeOf(&EventList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*EventSource).DeepCopyInto(out.(*EventSource)) + return nil + }, InType: reflect.TypeOf(&EventSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ExecAction).DeepCopyInto(out.(*ExecAction)) + return nil + }, InType: reflect.TypeOf(&ExecAction{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*FCVolumeSource).DeepCopyInto(out.(*FCVolumeSource)) + return nil + }, InType: reflect.TypeOf(&FCVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*FlexVolumeSource).DeepCopyInto(out.(*FlexVolumeSource)) + return nil + }, InType: reflect.TypeOf(&FlexVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*FlockerVolumeSource).DeepCopyInto(out.(*FlockerVolumeSource)) + return nil + }, InType: reflect.TypeOf(&FlockerVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GCEPersistentDiskVolumeSource).DeepCopyInto(out.(*GCEPersistentDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&GCEPersistentDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GitRepoVolumeSource).DeepCopyInto(out.(*GitRepoVolumeSource)) + return nil + }, InType: reflect.TypeOf(&GitRepoVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*GlusterfsVolumeSource).DeepCopyInto(out.(*GlusterfsVolumeSource)) + return nil + }, InType: reflect.TypeOf(&GlusterfsVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HTTPGetAction).DeepCopyInto(out.(*HTTPGetAction)) + return nil + }, InType: reflect.TypeOf(&HTTPGetAction{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HTTPHeader).DeepCopyInto(out.(*HTTPHeader)) + return nil + }, InType: reflect.TypeOf(&HTTPHeader{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Handler).DeepCopyInto(out.(*Handler)) + return nil + }, InType: reflect.TypeOf(&Handler{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HostAlias).DeepCopyInto(out.(*HostAlias)) + return nil + }, InType: reflect.TypeOf(&HostAlias{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*HostPathVolumeSource).DeepCopyInto(out.(*HostPathVolumeSource)) + return nil + }, InType: reflect.TypeOf(&HostPathVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ISCSIVolumeSource).DeepCopyInto(out.(*ISCSIVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ISCSIVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*KeyToPath).DeepCopyInto(out.(*KeyToPath)) + return nil + }, InType: reflect.TypeOf(&KeyToPath{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Lifecycle).DeepCopyInto(out.(*Lifecycle)) + return nil + }, InType: reflect.TypeOf(&Lifecycle{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRange).DeepCopyInto(out.(*LimitRange)) + return nil + }, InType: reflect.TypeOf(&LimitRange{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRangeItem).DeepCopyInto(out.(*LimitRangeItem)) + return nil + }, InType: reflect.TypeOf(&LimitRangeItem{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRangeList).DeepCopyInto(out.(*LimitRangeList)) + return nil + }, InType: reflect.TypeOf(&LimitRangeList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LimitRangeSpec).DeepCopyInto(out.(*LimitRangeSpec)) + return nil + }, InType: reflect.TypeOf(&LimitRangeSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*List).DeepCopyInto(out.(*List)) + return nil + }, InType: reflect.TypeOf(&List{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ListOptions).DeepCopyInto(out.(*ListOptions)) + return nil + }, InType: reflect.TypeOf(&ListOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LoadBalancerIngress).DeepCopyInto(out.(*LoadBalancerIngress)) + return nil + }, InType: reflect.TypeOf(&LoadBalancerIngress{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LoadBalancerStatus).DeepCopyInto(out.(*LoadBalancerStatus)) + return nil + }, InType: reflect.TypeOf(&LoadBalancerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LocalObjectReference).DeepCopyInto(out.(*LocalObjectReference)) + return nil + }, InType: reflect.TypeOf(&LocalObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*LocalVolumeSource).DeepCopyInto(out.(*LocalVolumeSource)) + return nil + }, InType: reflect.TypeOf(&LocalVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NFSVolumeSource).DeepCopyInto(out.(*NFSVolumeSource)) + return nil + }, InType: reflect.TypeOf(&NFSVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Namespace).DeepCopyInto(out.(*Namespace)) + return nil + }, InType: reflect.TypeOf(&Namespace{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NamespaceList).DeepCopyInto(out.(*NamespaceList)) + return nil + }, InType: reflect.TypeOf(&NamespaceList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NamespaceSpec).DeepCopyInto(out.(*NamespaceSpec)) + return nil + }, InType: reflect.TypeOf(&NamespaceSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NamespaceStatus).DeepCopyInto(out.(*NamespaceStatus)) + return nil + }, InType: reflect.TypeOf(&NamespaceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Node).DeepCopyInto(out.(*Node)) + return nil + }, InType: reflect.TypeOf(&Node{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeAddress).DeepCopyInto(out.(*NodeAddress)) + return nil + }, InType: reflect.TypeOf(&NodeAddress{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeAffinity).DeepCopyInto(out.(*NodeAffinity)) + return nil + }, InType: reflect.TypeOf(&NodeAffinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeCondition).DeepCopyInto(out.(*NodeCondition)) + return nil + }, InType: reflect.TypeOf(&NodeCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeConfigSource).DeepCopyInto(out.(*NodeConfigSource)) + return nil + }, InType: reflect.TypeOf(&NodeConfigSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeDaemonEndpoints).DeepCopyInto(out.(*NodeDaemonEndpoints)) + return nil + }, InType: reflect.TypeOf(&NodeDaemonEndpoints{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeList).DeepCopyInto(out.(*NodeList)) + return nil + }, InType: reflect.TypeOf(&NodeList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeProxyOptions).DeepCopyInto(out.(*NodeProxyOptions)) + return nil + }, InType: reflect.TypeOf(&NodeProxyOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeResources).DeepCopyInto(out.(*NodeResources)) + return nil + }, InType: reflect.TypeOf(&NodeResources{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSelector).DeepCopyInto(out.(*NodeSelector)) + return nil + }, InType: reflect.TypeOf(&NodeSelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSelectorRequirement).DeepCopyInto(out.(*NodeSelectorRequirement)) + return nil + }, InType: reflect.TypeOf(&NodeSelectorRequirement{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSelectorTerm).DeepCopyInto(out.(*NodeSelectorTerm)) + return nil + }, InType: reflect.TypeOf(&NodeSelectorTerm{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSpec).DeepCopyInto(out.(*NodeSpec)) + return nil + }, InType: reflect.TypeOf(&NodeSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeStatus).DeepCopyInto(out.(*NodeStatus)) + return nil + }, InType: reflect.TypeOf(&NodeStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*NodeSystemInfo).DeepCopyInto(out.(*NodeSystemInfo)) + return nil + }, InType: reflect.TypeOf(&NodeSystemInfo{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ObjectFieldSelector).DeepCopyInto(out.(*ObjectFieldSelector)) + return nil + }, InType: reflect.TypeOf(&ObjectFieldSelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ObjectMeta).DeepCopyInto(out.(*ObjectMeta)) + return nil + }, InType: reflect.TypeOf(&ObjectMeta{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ObjectReference).DeepCopyInto(out.(*ObjectReference)) + return nil + }, InType: reflect.TypeOf(&ObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolume).DeepCopyInto(out.(*PersistentVolume)) + return nil + }, InType: reflect.TypeOf(&PersistentVolume{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaim).DeepCopyInto(out.(*PersistentVolumeClaim)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaim{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimList).DeepCopyInto(out.(*PersistentVolumeClaimList)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimSpec).DeepCopyInto(out.(*PersistentVolumeClaimSpec)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimStatus).DeepCopyInto(out.(*PersistentVolumeClaimStatus)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeClaimVolumeSource).DeepCopyInto(out.(*PersistentVolumeClaimVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeClaimVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeList).DeepCopyInto(out.(*PersistentVolumeList)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeSource).DeepCopyInto(out.(*PersistentVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeSpec).DeepCopyInto(out.(*PersistentVolumeSpec)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PersistentVolumeStatus).DeepCopyInto(out.(*PersistentVolumeStatus)) + return nil + }, InType: reflect.TypeOf(&PersistentVolumeStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PhotonPersistentDiskVolumeSource).DeepCopyInto(out.(*PhotonPersistentDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PhotonPersistentDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Pod).DeepCopyInto(out.(*Pod)) + return nil + }, InType: reflect.TypeOf(&Pod{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAffinity).DeepCopyInto(out.(*PodAffinity)) + return nil + }, InType: reflect.TypeOf(&PodAffinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAffinityTerm).DeepCopyInto(out.(*PodAffinityTerm)) + return nil + }, InType: reflect.TypeOf(&PodAffinityTerm{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAntiAffinity).DeepCopyInto(out.(*PodAntiAffinity)) + return nil + }, InType: reflect.TypeOf(&PodAntiAffinity{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodAttachOptions).DeepCopyInto(out.(*PodAttachOptions)) + return nil + }, InType: reflect.TypeOf(&PodAttachOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodCondition).DeepCopyInto(out.(*PodCondition)) + return nil + }, InType: reflect.TypeOf(&PodCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodExecOptions).DeepCopyInto(out.(*PodExecOptions)) + return nil + }, InType: reflect.TypeOf(&PodExecOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodList).DeepCopyInto(out.(*PodList)) + return nil + }, InType: reflect.TypeOf(&PodList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodLogOptions).DeepCopyInto(out.(*PodLogOptions)) + return nil + }, InType: reflect.TypeOf(&PodLogOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodPortForwardOptions).DeepCopyInto(out.(*PodPortForwardOptions)) + return nil + }, InType: reflect.TypeOf(&PodPortForwardOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodProxyOptions).DeepCopyInto(out.(*PodProxyOptions)) + return nil + }, InType: reflect.TypeOf(&PodProxyOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodSecurityContext).DeepCopyInto(out.(*PodSecurityContext)) + return nil + }, InType: reflect.TypeOf(&PodSecurityContext{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodSignature).DeepCopyInto(out.(*PodSignature)) + return nil + }, InType: reflect.TypeOf(&PodSignature{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodSpec).DeepCopyInto(out.(*PodSpec)) + return nil + }, InType: reflect.TypeOf(&PodSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodStatus).DeepCopyInto(out.(*PodStatus)) + return nil + }, InType: reflect.TypeOf(&PodStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodStatusResult).DeepCopyInto(out.(*PodStatusResult)) + return nil + }, InType: reflect.TypeOf(&PodStatusResult{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodTemplate).DeepCopyInto(out.(*PodTemplate)) + return nil + }, InType: reflect.TypeOf(&PodTemplate{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodTemplateList).DeepCopyInto(out.(*PodTemplateList)) + return nil + }, InType: reflect.TypeOf(&PodTemplateList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PodTemplateSpec).DeepCopyInto(out.(*PodTemplateSpec)) + return nil + }, InType: reflect.TypeOf(&PodTemplateSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PortworxVolumeSource).DeepCopyInto(out.(*PortworxVolumeSource)) + return nil + }, InType: reflect.TypeOf(&PortworxVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Preconditions).DeepCopyInto(out.(*Preconditions)) + return nil + }, InType: reflect.TypeOf(&Preconditions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PreferAvoidPodsEntry).DeepCopyInto(out.(*PreferAvoidPodsEntry)) + return nil + }, InType: reflect.TypeOf(&PreferAvoidPodsEntry{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*PreferredSchedulingTerm).DeepCopyInto(out.(*PreferredSchedulingTerm)) + return nil + }, InType: reflect.TypeOf(&PreferredSchedulingTerm{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Probe).DeepCopyInto(out.(*Probe)) + return nil + }, InType: reflect.TypeOf(&Probe{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ProjectedVolumeSource).DeepCopyInto(out.(*ProjectedVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ProjectedVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*QuobyteVolumeSource).DeepCopyInto(out.(*QuobyteVolumeSource)) + return nil + }, InType: reflect.TypeOf(&QuobyteVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*RBDVolumeSource).DeepCopyInto(out.(*RBDVolumeSource)) + return nil + }, InType: reflect.TypeOf(&RBDVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*RangeAllocation).DeepCopyInto(out.(*RangeAllocation)) + return nil + }, InType: reflect.TypeOf(&RangeAllocation{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationController).DeepCopyInto(out.(*ReplicationController)) + return nil + }, InType: reflect.TypeOf(&ReplicationController{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerCondition).DeepCopyInto(out.(*ReplicationControllerCondition)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerCondition{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerList).DeepCopyInto(out.(*ReplicationControllerList)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerSpec).DeepCopyInto(out.(*ReplicationControllerSpec)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ReplicationControllerStatus).DeepCopyInto(out.(*ReplicationControllerStatus)) + return nil + }, InType: reflect.TypeOf(&ReplicationControllerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceFieldSelector).DeepCopyInto(out.(*ResourceFieldSelector)) + return nil + }, InType: reflect.TypeOf(&ResourceFieldSelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuota).DeepCopyInto(out.(*ResourceQuota)) + return nil + }, InType: reflect.TypeOf(&ResourceQuota{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuotaList).DeepCopyInto(out.(*ResourceQuotaList)) + return nil + }, InType: reflect.TypeOf(&ResourceQuotaList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuotaSpec).DeepCopyInto(out.(*ResourceQuotaSpec)) + return nil + }, InType: reflect.TypeOf(&ResourceQuotaSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceQuotaStatus).DeepCopyInto(out.(*ResourceQuotaStatus)) + return nil + }, InType: reflect.TypeOf(&ResourceQuotaStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ResourceRequirements).DeepCopyInto(out.(*ResourceRequirements)) + return nil + }, InType: reflect.TypeOf(&ResourceRequirements{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SELinuxOptions).DeepCopyInto(out.(*SELinuxOptions)) + return nil + }, InType: reflect.TypeOf(&SELinuxOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ScaleIOVolumeSource).DeepCopyInto(out.(*ScaleIOVolumeSource)) + return nil + }, InType: reflect.TypeOf(&ScaleIOVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Secret).DeepCopyInto(out.(*Secret)) + return nil + }, InType: reflect.TypeOf(&Secret{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretEnvSource).DeepCopyInto(out.(*SecretEnvSource)) + return nil + }, InType: reflect.TypeOf(&SecretEnvSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretKeySelector).DeepCopyInto(out.(*SecretKeySelector)) + return nil + }, InType: reflect.TypeOf(&SecretKeySelector{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretList).DeepCopyInto(out.(*SecretList)) + return nil + }, InType: reflect.TypeOf(&SecretList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretProjection).DeepCopyInto(out.(*SecretProjection)) + return nil + }, InType: reflect.TypeOf(&SecretProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecretVolumeSource).DeepCopyInto(out.(*SecretVolumeSource)) + return nil + }, InType: reflect.TypeOf(&SecretVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SecurityContext).DeepCopyInto(out.(*SecurityContext)) + return nil + }, InType: reflect.TypeOf(&SecurityContext{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*SerializedReference).DeepCopyInto(out.(*SerializedReference)) + return nil + }, InType: reflect.TypeOf(&SerializedReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Service).DeepCopyInto(out.(*Service)) + return nil + }, InType: reflect.TypeOf(&Service{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceAccount).DeepCopyInto(out.(*ServiceAccount)) + return nil + }, InType: reflect.TypeOf(&ServiceAccount{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceAccountList).DeepCopyInto(out.(*ServiceAccountList)) + return nil + }, InType: reflect.TypeOf(&ServiceAccountList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceList).DeepCopyInto(out.(*ServiceList)) + return nil + }, InType: reflect.TypeOf(&ServiceList{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServicePort).DeepCopyInto(out.(*ServicePort)) + return nil + }, InType: reflect.TypeOf(&ServicePort{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceProxyOptions).DeepCopyInto(out.(*ServiceProxyOptions)) + return nil + }, InType: reflect.TypeOf(&ServiceProxyOptions{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceSpec).DeepCopyInto(out.(*ServiceSpec)) + return nil + }, InType: reflect.TypeOf(&ServiceSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*ServiceStatus).DeepCopyInto(out.(*ServiceStatus)) + return nil + }, InType: reflect.TypeOf(&ServiceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*StorageOSPersistentVolumeSource).DeepCopyInto(out.(*StorageOSPersistentVolumeSource)) + return nil + }, InType: reflect.TypeOf(&StorageOSPersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*StorageOSVolumeSource).DeepCopyInto(out.(*StorageOSVolumeSource)) + return nil + }, InType: reflect.TypeOf(&StorageOSVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Sysctl).DeepCopyInto(out.(*Sysctl)) + return nil + }, InType: reflect.TypeOf(&Sysctl{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*TCPSocketAction).DeepCopyInto(out.(*TCPSocketAction)) + return nil + }, InType: reflect.TypeOf(&TCPSocketAction{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Taint).DeepCopyInto(out.(*Taint)) + return nil + }, InType: reflect.TypeOf(&Taint{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Toleration).DeepCopyInto(out.(*Toleration)) + return nil + }, InType: reflect.TypeOf(&Toleration{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*Volume).DeepCopyInto(out.(*Volume)) + return nil + }, InType: reflect.TypeOf(&Volume{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VolumeMount).DeepCopyInto(out.(*VolumeMount)) + return nil + }, InType: reflect.TypeOf(&VolumeMount{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VolumeProjection).DeepCopyInto(out.(*VolumeProjection)) + return nil + }, InType: reflect.TypeOf(&VolumeProjection{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VolumeSource).DeepCopyInto(out.(*VolumeSource)) + return nil + }, InType: reflect.TypeOf(&VolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*VsphereVirtualDiskVolumeSource).DeepCopyInto(out.(*VsphereVirtualDiskVolumeSource)) + return nil + }, InType: reflect.TypeOf(&VsphereVirtualDiskVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error { + in.(*WeightedPodAffinityTerm).DeepCopyInto(out.(*WeightedPodAffinityTerm)) + return nil + }, InType: reflect.TypeOf(&WeightedPodAffinityTerm{})}, ) } -// DeepCopy_api_AWSElasticBlockStoreVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_AWSElasticBlockStoreVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AWSElasticBlockStoreVolumeSource) - out := out.(*AWSElasticBlockStoreVolumeSource) - *out = *in - return nil - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AWSElasticBlockStoreVolumeSource) DeepCopyInto(out *AWSElasticBlockStoreVolumeSource) { + *out = *in + return } -// DeepCopy_api_Affinity is an autogenerated deepcopy function. -func DeepCopy_api_Affinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Affinity) - out := out.(*Affinity) - *out = *in - if in.NodeAffinity != nil { - in, out := &in.NodeAffinity, &out.NodeAffinity +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSElasticBlockStoreVolumeSource. +func (in *AWSElasticBlockStoreVolumeSource) DeepCopy() *AWSElasticBlockStoreVolumeSource { + if in == nil { + return nil + } + out := new(AWSElasticBlockStoreVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Affinity) DeepCopyInto(out *Affinity) { + *out = *in + if in.NodeAffinity != nil { + in, out := &in.NodeAffinity, &out.NodeAffinity + if *in == nil { + *out = nil + } else { *out = new(NodeAffinity) - if err := DeepCopy_api_NodeAffinity(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.PodAffinity != nil { - in, out := &in.PodAffinity, &out.PodAffinity + } + if in.PodAffinity != nil { + in, out := &in.PodAffinity, &out.PodAffinity + if *in == nil { + *out = nil + } else { *out = new(PodAffinity) - if err := DeepCopy_api_PodAffinity(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.PodAntiAffinity != nil { - in, out := &in.PodAntiAffinity, &out.PodAntiAffinity + } + if in.PodAntiAffinity != nil { + in, out := &in.PodAntiAffinity, &out.PodAntiAffinity + if *in == nil { + *out = nil + } else { *out = new(PodAntiAffinity) - if err := DeepCopy_api_PodAntiAffinity(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - return nil } + return } -// DeepCopy_api_AttachedVolume is an autogenerated deepcopy function. -func DeepCopy_api_AttachedVolume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AttachedVolume) - out := out.(*AttachedVolume) - *out = *in +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Affinity. +func (in *Affinity) DeepCopy() *Affinity { + if in == nil { return nil } + out := new(Affinity) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_AvoidPods is an autogenerated deepcopy function. -func DeepCopy_api_AvoidPods(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AvoidPods) - out := out.(*AvoidPods) - *out = *in - if in.PreferAvoidPods != nil { - in, out := &in.PreferAvoidPods, &out.PreferAvoidPods - *out = make([]PreferAvoidPodsEntry, len(*in)) - for i := range *in { - if err := DeepCopy_api_PreferAvoidPodsEntry(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AttachedVolume) DeepCopyInto(out *AttachedVolume) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachedVolume. +func (in *AttachedVolume) DeepCopy() *AttachedVolume { + if in == nil { + return nil + } + out := new(AttachedVolume) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AvoidPods) DeepCopyInto(out *AvoidPods) { + *out = *in + if in.PreferAvoidPods != nil { + in, out := &in.PreferAvoidPods, &out.PreferAvoidPods + *out = make([]PreferAvoidPodsEntry, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - return nil } + return } -// DeepCopy_api_AzureDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_AzureDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AzureDiskVolumeSource) - out := out.(*AzureDiskVolumeSource) - *out = *in - if in.CachingMode != nil { - in, out := &in.CachingMode, &out.CachingMode +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AvoidPods. +func (in *AvoidPods) DeepCopy() *AvoidPods { + if in == nil { + return nil + } + out := new(AvoidPods) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureDiskVolumeSource) DeepCopyInto(out *AzureDiskVolumeSource) { + *out = *in + if in.CachingMode != nil { + in, out := &in.CachingMode, &out.CachingMode + if *in == nil { + *out = nil + } else { *out = new(AzureDataDiskCachingMode) **out = **in } - if in.FSType != nil { - in, out := &in.FSType, &out.FSType + } + if in.FSType != nil { + in, out := &in.FSType, &out.FSType + if *in == nil { + *out = nil + } else { *out = new(string) **out = **in } - if in.ReadOnly != nil { - in, out := &in.ReadOnly, &out.ReadOnly + } + if in.ReadOnly != nil { + in, out := &in.ReadOnly, &out.ReadOnly + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - if in.Kind != nil { - in, out := &in.Kind, &out.Kind + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + if *in == nil { + *out = nil + } else { *out = new(AzureDataDiskKind) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureDiskVolumeSource. +func (in *AzureDiskVolumeSource) DeepCopy() *AzureDiskVolumeSource { + if in == nil { + return nil + } + out := new(AzureDiskVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureFileVolumeSource) DeepCopyInto(out *AzureFileVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureFileVolumeSource. +func (in *AzureFileVolumeSource) DeepCopy() *AzureFileVolumeSource { + if in == nil { + return nil + } + out := new(AzureFileVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Binding) DeepCopyInto(out *Binding) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + out.Target = in.Target + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Binding. +func (in *Binding) DeepCopy() *Binding { + if in == nil { + return nil + } + out := new(Binding) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Binding) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_AzureFileVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_AzureFileVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*AzureFileVolumeSource) - out := out.(*AzureFileVolumeSource) - *out = *in - return nil +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Capabilities) DeepCopyInto(out *Capabilities) { + *out = *in + if in.Add != nil { + in, out := &in.Add, &out.Add + *out = make([]Capability, len(*in)) + copy(*out, *in) } + if in.Drop != nil { + in, out := &in.Drop, &out.Drop + *out = make([]Capability, len(*in)) + copy(*out, *in) + } + return } -// DeepCopy_api_Binding is an autogenerated deepcopy function. -func DeepCopy_api_Binding(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Binding) - out := out.(*Binding) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Capabilities. +func (in *Capabilities) DeepCopy() *Capabilities { + if in == nil { + return nil + } + out := new(Capabilities) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CephFSVolumeSource) DeepCopyInto(out *CephFSVolumeSource) { + *out = *in + if in.Monitors != nil { + in, out := &in.Monitors, &out.Monitors + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - return nil - } -} - -// DeepCopy_api_Capabilities is an autogenerated deepcopy function. -func DeepCopy_api_Capabilities(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Capabilities) - out := out.(*Capabilities) - *out = *in - if in.Add != nil { - in, out := &in.Add, &out.Add - *out = make([]Capability, len(*in)) - copy(*out, *in) - } - if in.Drop != nil { - in, out := &in.Drop, &out.Drop - *out = make([]Capability, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_CephFSVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_CephFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CephFSVolumeSource) - out := out.(*CephFSVolumeSource) - *out = *in - if in.Monitors != nil { - in, out := &in.Monitors, &out.Monitors - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CephFSVolumeSource. +func (in *CephFSVolumeSource) DeepCopy() *CephFSVolumeSource { + if in == nil { + return nil + } + out := new(CephFSVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CinderVolumeSource) DeepCopyInto(out *CinderVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CinderVolumeSource. +func (in *CinderVolumeSource) DeepCopy() *CinderVolumeSource { + if in == nil { + return nil + } + out := new(CinderVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentCondition) DeepCopyInto(out *ComponentCondition) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentCondition. +func (in *ComponentCondition) DeepCopy() *ComponentCondition { + if in == nil { + return nil + } + out := new(ComponentCondition) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]ComponentCondition, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatus. +func (in *ComponentStatus) DeepCopy() *ComponentStatus { + if in == nil { + return nil + } + out := new(ComponentStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ComponentStatus) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_CinderVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_CinderVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CinderVolumeSource) - out := out.(*CinderVolumeSource) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentStatusList) DeepCopyInto(out *ComponentStatusList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ComponentStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatusList. +func (in *ComponentStatusList) DeepCopy() *ComponentStatusList { + if in == nil { + return nil + } + out := new(ComponentStatusList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ComponentStatusList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_ComponentCondition is an autogenerated deepcopy function. -func DeepCopy_api_ComponentCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentCondition) - out := out.(*ComponentCondition) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMap) DeepCopyInto(out *ConfigMap) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Data != nil { + in, out := &in.Data, &out.Data + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMap. +func (in *ConfigMap) DeepCopy() *ConfigMap { + if in == nil { + return nil + } + out := new(ConfigMap) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ConfigMap) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_ComponentStatus is an autogenerated deepcopy function. -func DeepCopy_api_ComponentStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentStatus) - out := out.(*ComponentStatus) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapEnvSource) DeepCopyInto(out *ConfigMapEnvSource) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) + *out = new(bool) + **out = **in } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ComponentCondition, len(*in)) - copy(*out, *in) - } - return nil } + return } -// DeepCopy_api_ComponentStatusList is an autogenerated deepcopy function. -func DeepCopy_api_ComponentStatusList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ComponentStatusList) - out := out.(*ComponentStatusList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ComponentStatus, len(*in)) - for i := range *in { - if err := DeepCopy_api_ComponentStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapEnvSource. +func (in *ConfigMapEnvSource) DeepCopy() *ConfigMapEnvSource { + if in == nil { return nil } + out := new(ConfigMapEnvSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ConfigMap is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMap(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMap) - out := out.(*ConfigMap) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapKeySelector) DeepCopyInto(out *ConfigMapKeySelector) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - return nil - } -} - -// DeepCopy_api_ConfigMapEnvSource is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapEnvSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapEnvSource) - out := out.(*ConfigMapEnvSource) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional *out = new(bool) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapKeySelector. +func (in *ConfigMapKeySelector) DeepCopy() *ConfigMapKeySelector { + if in == nil { + return nil + } + out := new(ConfigMapKeySelector) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapList) DeepCopyInto(out *ConfigMapList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ConfigMap, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapList. +func (in *ConfigMapList) DeepCopy() *ConfigMapList { + if in == nil { + return nil + } + out := new(ConfigMapList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ConfigMapList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_ConfigMapKeySelector is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapKeySelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapKeySelector) - out := out.(*ConfigMapKeySelector) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapProjection) DeepCopyInto(out *ConfigMapProjection) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - return nil } + return } -// DeepCopy_api_ConfigMapList is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapList) - out := out.(*ConfigMapList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ConfigMap, len(*in)) - for i := range *in { - if err := DeepCopy_api_ConfigMap(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapProjection. +func (in *ConfigMapProjection) DeepCopy() *ConfigMapProjection { + if in == nil { return nil } + out := new(ConfigMapProjection) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ConfigMapProjection is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapProjection) - out := out.(*ConfigMapProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigMapVolumeSource) DeepCopyInto(out *ConfigMapVolumeSource) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional - *out = new(bool) - **out = **in - } - return nil } -} - -// DeepCopy_api_ConfigMapVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ConfigMapVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ConfigMapVolumeSource) - out := out.(*ConfigMapVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { *out = new(int32) **out = **in } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional + } + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - return nil } + return } -// DeepCopy_api_Container is an autogenerated deepcopy function. -func DeepCopy_api_Container(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Container) - out := out.(*Container) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapVolumeSource. +func (in *ConfigMapVolumeSource) DeepCopy() *ConfigMapVolumeSource { + if in == nil { + return nil + } + out := new(ConfigMapVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Container) DeepCopyInto(out *Container) { + *out = *in + if in.Command != nil { + in, out := &in.Command, &out.Command + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Args != nil { + in, out := &in.Args, &out.Args + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]ContainerPort, len(*in)) + copy(*out, *in) + } + if in.EnvFrom != nil { + in, out := &in.EnvFrom, &out.EnvFrom + *out = make([]EnvFromSource, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.Args != nil { - in, out := &in.Args, &out.Args - *out = make([]string, len(*in)) - copy(*out, *in) + } + if in.Env != nil { + in, out := &in.Env, &out.Env + *out = make([]EnvVar, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]ContainerPort, len(*in)) - copy(*out, *in) - } - if in.EnvFrom != nil { - in, out := &in.EnvFrom, &out.EnvFrom - *out = make([]EnvFromSource, len(*in)) - for i := range *in { - if err := DeepCopy_api_EnvFromSource(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Env != nil { - in, out := &in.Env, &out.Env - *out = make([]EnvVar, len(*in)) - for i := range *in { - if err := DeepCopy_api_EnvVar(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if err := DeepCopy_api_ResourceRequirements(&in.Resources, &out.Resources, c); err != nil { - return err - } - if in.VolumeMounts != nil { - in, out := &in.VolumeMounts, &out.VolumeMounts - *out = make([]VolumeMount, len(*in)) - copy(*out, *in) - } - if in.LivenessProbe != nil { - in, out := &in.LivenessProbe, &out.LivenessProbe + } + in.Resources.DeepCopyInto(&out.Resources) + if in.VolumeMounts != nil { + in, out := &in.VolumeMounts, &out.VolumeMounts + *out = make([]VolumeMount, len(*in)) + copy(*out, *in) + } + if in.LivenessProbe != nil { + in, out := &in.LivenessProbe, &out.LivenessProbe + if *in == nil { + *out = nil + } else { *out = new(Probe) - if err := DeepCopy_api_Probe(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.ReadinessProbe != nil { - in, out := &in.ReadinessProbe, &out.ReadinessProbe + } + if in.ReadinessProbe != nil { + in, out := &in.ReadinessProbe, &out.ReadinessProbe + if *in == nil { + *out = nil + } else { *out = new(Probe) - if err := DeepCopy_api_Probe(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Lifecycle != nil { - in, out := &in.Lifecycle, &out.Lifecycle + } + if in.Lifecycle != nil { + in, out := &in.Lifecycle, &out.Lifecycle + if *in == nil { + *out = nil + } else { *out = new(Lifecycle) - if err := DeepCopy_api_Lifecycle(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext + } + if in.SecurityContext != nil { + in, out := &in.SecurityContext, &out.SecurityContext + if *in == nil { + *out = nil + } else { *out = new(SecurityContext) - if err := DeepCopy_api_SecurityContext(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - return nil } + return } -// DeepCopy_api_ContainerImage is an autogenerated deepcopy function. -func DeepCopy_api_ContainerImage(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerImage) - out := out.(*ContainerImage) - *out = *in - if in.Names != nil { - in, out := &in.Names, &out.Names - *out = make([]string, len(*in)) - copy(*out, *in) - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container. +func (in *Container) DeepCopy() *Container { + if in == nil { return nil } + out := new(Container) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ContainerPort is an autogenerated deepcopy function. -func DeepCopy_api_ContainerPort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerPort) - out := out.(*ContainerPort) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerImage) DeepCopyInto(out *ContainerImage) { + *out = *in + if in.Names != nil { + in, out := &in.Names, &out.Names + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerImage. +func (in *ContainerImage) DeepCopy() *ContainerImage { + if in == nil { return nil } + out := new(ContainerImage) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ContainerState is an autogenerated deepcopy function. -func DeepCopy_api_ContainerState(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerState) - out := out.(*ContainerState) - *out = *in - if in.Waiting != nil { - in, out := &in.Waiting, &out.Waiting +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerPort) DeepCopyInto(out *ContainerPort) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerPort. +func (in *ContainerPort) DeepCopy() *ContainerPort { + if in == nil { + return nil + } + out := new(ContainerPort) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerState) DeepCopyInto(out *ContainerState) { + *out = *in + if in.Waiting != nil { + in, out := &in.Waiting, &out.Waiting + if *in == nil { + *out = nil + } else { *out = new(ContainerStateWaiting) **out = **in } - if in.Running != nil { - in, out := &in.Running, &out.Running + } + if in.Running != nil { + in, out := &in.Running, &out.Running + if *in == nil { + *out = nil + } else { *out = new(ContainerStateRunning) - if err := DeepCopy_api_ContainerStateRunning(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Terminated != nil { - in, out := &in.Terminated, &out.Terminated + } + if in.Terminated != nil { + in, out := &in.Terminated, &out.Terminated + if *in == nil { + *out = nil + } else { *out = new(ContainerStateTerminated) - if err := DeepCopy_api_ContainerStateTerminated(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - return nil } + return } -// DeepCopy_api_ContainerStateRunning is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStateRunning(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateRunning) - out := out.(*ContainerStateRunning) - *out = *in - out.StartedAt = in.StartedAt.DeepCopy() +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerState. +func (in *ContainerState) DeepCopy() *ContainerState { + if in == nil { return nil } + out := new(ContainerState) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ContainerStateTerminated is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStateTerminated(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateTerminated) - out := out.(*ContainerStateTerminated) - *out = *in - out.StartedAt = in.StartedAt.DeepCopy() - out.FinishedAt = in.FinishedAt.DeepCopy() +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStateRunning) DeepCopyInto(out *ContainerStateRunning) { + *out = *in + in.StartedAt.DeepCopyInto(&out.StartedAt) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStateRunning. +func (in *ContainerStateRunning) DeepCopy() *ContainerStateRunning { + if in == nil { return nil } + out := new(ContainerStateRunning) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ContainerStateWaiting is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStateWaiting(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStateWaiting) - out := out.(*ContainerStateWaiting) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStateTerminated) DeepCopyInto(out *ContainerStateTerminated) { + *out = *in + in.StartedAt.DeepCopyInto(&out.StartedAt) + in.FinishedAt.DeepCopyInto(&out.FinishedAt) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStateTerminated. +func (in *ContainerStateTerminated) DeepCopy() *ContainerStateTerminated { + if in == nil { return nil } + out := new(ContainerStateTerminated) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ContainerStatus is an autogenerated deepcopy function. -func DeepCopy_api_ContainerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ContainerStatus) - out := out.(*ContainerStatus) - *out = *in - if err := DeepCopy_api_ContainerState(&in.State, &out.State, c); err != nil { - return err - } - if err := DeepCopy_api_ContainerState(&in.LastTerminationState, &out.LastTerminationState, c); err != nil { - return err - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStateWaiting) DeepCopyInto(out *ContainerStateWaiting) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStateWaiting. +func (in *ContainerStateWaiting) DeepCopy() *ContainerStateWaiting { + if in == nil { return nil } + out := new(ContainerStateWaiting) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_DaemonEndpoint is an autogenerated deepcopy function. -func DeepCopy_api_DaemonEndpoint(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DaemonEndpoint) - out := out.(*DaemonEndpoint) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerStatus) DeepCopyInto(out *ContainerStatus) { + *out = *in + in.State.DeepCopyInto(&out.State) + in.LastTerminationState.DeepCopyInto(&out.LastTerminationState) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerStatus. +func (in *ContainerStatus) DeepCopy() *ContainerStatus { + if in == nil { return nil } + out := new(ContainerStatus) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_DeleteOptions is an autogenerated deepcopy function. -func DeepCopy_api_DeleteOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DeleteOptions) - out := out.(*DeleteOptions) - *out = *in - if in.GracePeriodSeconds != nil { - in, out := &in.GracePeriodSeconds, &out.GracePeriodSeconds +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DaemonEndpoint) DeepCopyInto(out *DaemonEndpoint) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonEndpoint. +func (in *DaemonEndpoint) DeepCopy() *DaemonEndpoint { + if in == nil { + return nil + } + out := new(DaemonEndpoint) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeleteOptions) DeepCopyInto(out *DeleteOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.GracePeriodSeconds != nil { + in, out := &in.GracePeriodSeconds, &out.GracePeriodSeconds + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } - if in.Preconditions != nil { - in, out := &in.Preconditions, &out.Preconditions + } + if in.Preconditions != nil { + in, out := &in.Preconditions, &out.Preconditions + if *in == nil { + *out = nil + } else { *out = new(Preconditions) - if err := DeepCopy_api_Preconditions(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.OrphanDependents != nil { - in, out := &in.OrphanDependents, &out.OrphanDependents + } + if in.OrphanDependents != nil { + in, out := &in.OrphanDependents, &out.OrphanDependents + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - if in.PropagationPolicy != nil { - in, out := &in.PropagationPolicy, &out.PropagationPolicy + } + if in.PropagationPolicy != nil { + in, out := &in.PropagationPolicy, &out.PropagationPolicy + if *in == nil { + *out = nil + } else { *out = new(DeletionPropagation) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteOptions. +func (in *DeleteOptions) DeepCopy() *DeleteOptions { + if in == nil { + return nil + } + out := new(DeleteOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *DeleteOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_DownwardAPIProjection is an autogenerated deepcopy function. -func DeepCopy_api_DownwardAPIProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIProjection) - out := out.(*DownwardAPIProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DownwardAPIVolumeFile, len(*in)) - for i := range *in { - if err := DeepCopy_api_DownwardAPIVolumeFile(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DownwardAPIProjection) DeepCopyInto(out *DownwardAPIProjection) { + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]DownwardAPIVolumeFile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - return nil } + return } -// DeepCopy_api_DownwardAPIVolumeFile is an autogenerated deepcopy function. -func DeepCopy_api_DownwardAPIVolumeFile(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIVolumeFile) - out := out.(*DownwardAPIVolumeFile) - *out = *in - if in.FieldRef != nil { - in, out := &in.FieldRef, &out.FieldRef +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownwardAPIProjection. +func (in *DownwardAPIProjection) DeepCopy() *DownwardAPIProjection { + if in == nil { + return nil + } + out := new(DownwardAPIProjection) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DownwardAPIVolumeFile) DeepCopyInto(out *DownwardAPIVolumeFile) { + *out = *in + if in.FieldRef != nil { + in, out := &in.FieldRef, &out.FieldRef + if *in == nil { + *out = nil + } else { *out = new(ObjectFieldSelector) **out = **in } - if in.ResourceFieldRef != nil { - in, out := &in.ResourceFieldRef, &out.ResourceFieldRef + } + if in.ResourceFieldRef != nil { + in, out := &in.ResourceFieldRef, &out.ResourceFieldRef + if *in == nil { + *out = nil + } else { *out = new(ResourceFieldSelector) - if err := DeepCopy_api_ResourceFieldSelector(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Mode != nil { - in, out := &in.Mode, &out.Mode + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + if *in == nil { + *out = nil + } else { *out = new(int32) **out = **in } - return nil } + return } -// DeepCopy_api_DownwardAPIVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_DownwardAPIVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*DownwardAPIVolumeSource) - out := out.(*DownwardAPIVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DownwardAPIVolumeFile, len(*in)) - for i := range *in { - if err := DeepCopy_api_DownwardAPIVolumeFile(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownwardAPIVolumeFile. +func (in *DownwardAPIVolumeFile) DeepCopy() *DownwardAPIVolumeFile { + if in == nil { + return nil + } + out := new(DownwardAPIVolumeFile) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DownwardAPIVolumeSource) DeepCopyInto(out *DownwardAPIVolumeSource) { + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]DownwardAPIVolumeFile, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode + } + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { *out = new(int32) **out = **in } - return nil } + return } -// DeepCopy_api_EmptyDirVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_EmptyDirVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EmptyDirVolumeSource) - out := out.(*EmptyDirVolumeSource) - *out = *in - out.SizeLimit = in.SizeLimit.DeepCopy() +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownwardAPIVolumeSource. +func (in *DownwardAPIVolumeSource) DeepCopy() *DownwardAPIVolumeSource { + if in == nil { return nil } + out := new(DownwardAPIVolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_EndpointAddress is an autogenerated deepcopy function. -func DeepCopy_api_EndpointAddress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointAddress) - out := out.(*EndpointAddress) - *out = *in - if in.NodeName != nil { - in, out := &in.NodeName, &out.NodeName +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EmptyDirVolumeSource) DeepCopyInto(out *EmptyDirVolumeSource) { + *out = *in + out.SizeLimit = in.SizeLimit.DeepCopy() + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmptyDirVolumeSource. +func (in *EmptyDirVolumeSource) DeepCopy() *EmptyDirVolumeSource { + if in == nil { + return nil + } + out := new(EmptyDirVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointAddress) DeepCopyInto(out *EndpointAddress) { + *out = *in + if in.NodeName != nil { + in, out := &in.NodeName, &out.NodeName + if *in == nil { + *out = nil + } else { *out = new(string) **out = **in } - if in.TargetRef != nil { - in, out := &in.TargetRef, &out.TargetRef + } + if in.TargetRef != nil { + in, out := &in.TargetRef, &out.TargetRef + if *in == nil { + *out = nil + } else { *out = new(ObjectReference) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointAddress. +func (in *EndpointAddress) DeepCopy() *EndpointAddress { + if in == nil { + return nil + } + out := new(EndpointAddress) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointPort) DeepCopyInto(out *EndpointPort) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointPort. +func (in *EndpointPort) DeepCopy() *EndpointPort { + if in == nil { + return nil + } + out := new(EndpointPort) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointSubset) DeepCopyInto(out *EndpointSubset) { + *out = *in + if in.Addresses != nil { + in, out := &in.Addresses, &out.Addresses + *out = make([]EndpointAddress, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotReadyAddresses != nil { + in, out := &in.NotReadyAddresses, &out.NotReadyAddresses + *out = make([]EndpointAddress, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]EndpointPort, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSubset. +func (in *EndpointSubset) DeepCopy() *EndpointSubset { + if in == nil { + return nil + } + out := new(EndpointSubset) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Endpoints) DeepCopyInto(out *Endpoints) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Subsets != nil { + in, out := &in.Subsets, &out.Subsets + *out = make([]EndpointSubset, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoints. +func (in *Endpoints) DeepCopy() *Endpoints { + if in == nil { + return nil + } + out := new(Endpoints) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Endpoints) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_EndpointPort is an autogenerated deepcopy function. -func DeepCopy_api_EndpointPort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointPort) - out := out.(*EndpointPort) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointsList) DeepCopyInto(out *EndpointsList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Endpoints, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointsList. +func (in *EndpointsList) DeepCopy() *EndpointsList { + if in == nil { + return nil + } + out := new(EndpointsList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *EndpointsList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_EndpointSubset is an autogenerated deepcopy function. -func DeepCopy_api_EndpointSubset(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointSubset) - out := out.(*EndpointSubset) - *out = *in - if in.Addresses != nil { - in, out := &in.Addresses, &out.Addresses - *out = make([]EndpointAddress, len(*in)) - for i := range *in { - if err := DeepCopy_api_EndpointAddress(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.NotReadyAddresses != nil { - in, out := &in.NotReadyAddresses, &out.NotReadyAddresses - *out = make([]EndpointAddress, len(*in)) - for i := range *in { - if err := DeepCopy_api_EndpointAddress(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]EndpointPort, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_Endpoints is an autogenerated deepcopy function. -func DeepCopy_api_Endpoints(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Endpoints) - out := out.(*Endpoints) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvFromSource) DeepCopyInto(out *EnvFromSource) { + *out = *in + if in.ConfigMapRef != nil { + in, out := &in.ConfigMapRef, &out.ConfigMapRef + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Subsets != nil { - in, out := &in.Subsets, &out.Subsets - *out = make([]EndpointSubset, len(*in)) - for i := range *in { - if err := DeepCopy_api_EndpointSubset(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_EndpointsList is an autogenerated deepcopy function. -func DeepCopy_api_EndpointsList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EndpointsList) - out := out.(*EndpointsList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Endpoints, len(*in)) - for i := range *in { - if err := DeepCopy_api_Endpoints(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_EnvFromSource is an autogenerated deepcopy function. -func DeepCopy_api_EnvFromSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvFromSource) - out := out.(*EnvFromSource) - *out = *in - if in.ConfigMapRef != nil { - in, out := &in.ConfigMapRef, &out.ConfigMapRef *out = new(ConfigMapEnvSource) - if err := DeepCopy_api_ConfigMapEnvSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { *out = new(SecretEnvSource) - if err := DeepCopy_api_SecretEnvSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - return nil } + return } -// DeepCopy_api_EnvVar is an autogenerated deepcopy function. -func DeepCopy_api_EnvVar(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvVar) - out := out.(*EnvVar) - *out = *in - if in.ValueFrom != nil { - in, out := &in.ValueFrom, &out.ValueFrom +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvFromSource. +func (in *EnvFromSource) DeepCopy() *EnvFromSource { + if in == nil { + return nil + } + out := new(EnvFromSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvVar) DeepCopyInto(out *EnvVar) { + *out = *in + if in.ValueFrom != nil { + in, out := &in.ValueFrom, &out.ValueFrom + if *in == nil { + *out = nil + } else { *out = new(EnvVarSource) - if err := DeepCopy_api_EnvVarSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - return nil } + return } -// DeepCopy_api_EnvVarSource is an autogenerated deepcopy function. -func DeepCopy_api_EnvVarSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EnvVarSource) - out := out.(*EnvVarSource) - *out = *in - if in.FieldRef != nil { - in, out := &in.FieldRef, &out.FieldRef +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvVar. +func (in *EnvVar) DeepCopy() *EnvVar { + if in == nil { + return nil + } + out := new(EnvVar) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvVarSource) DeepCopyInto(out *EnvVarSource) { + *out = *in + if in.FieldRef != nil { + in, out := &in.FieldRef, &out.FieldRef + if *in == nil { + *out = nil + } else { *out = new(ObjectFieldSelector) **out = **in } - if in.ResourceFieldRef != nil { - in, out := &in.ResourceFieldRef, &out.ResourceFieldRef - *out = new(ResourceFieldSelector) - if err := DeepCopy_api_ResourceFieldSelector(*in, *out, c); err != nil { - return err - } - } - if in.ConfigMapKeyRef != nil { - in, out := &in.ConfigMapKeyRef, &out.ConfigMapKeyRef - *out = new(ConfigMapKeySelector) - if err := DeepCopy_api_ConfigMapKeySelector(*in, *out, c); err != nil { - return err - } - } - if in.SecretKeyRef != nil { - in, out := &in.SecretKeyRef, &out.SecretKeyRef - *out = new(SecretKeySelector) - if err := DeepCopy_api_SecretKeySelector(*in, *out, c); err != nil { - return err - } - } - return nil } -} - -// DeepCopy_api_Event is an autogenerated deepcopy function. -func DeepCopy_api_Event(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Event) - out := out.(*Event) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err + if in.ResourceFieldRef != nil { + in, out := &in.ResourceFieldRef, &out.ResourceFieldRef + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) + *out = new(ResourceFieldSelector) + (*in).DeepCopyInto(*out) } - out.FirstTimestamp = in.FirstTimestamp.DeepCopy() - out.LastTimestamp = in.LastTimestamp.DeepCopy() + } + if in.ConfigMapKeyRef != nil { + in, out := &in.ConfigMapKeyRef, &out.ConfigMapKeyRef + if *in == nil { + *out = nil + } else { + *out = new(ConfigMapKeySelector) + (*in).DeepCopyInto(*out) + } + } + if in.SecretKeyRef != nil { + in, out := &in.SecretKeyRef, &out.SecretKeyRef + if *in == nil { + *out = nil + } else { + *out = new(SecretKeySelector) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvVarSource. +func (in *EnvVarSource) DeepCopy() *EnvVarSource { + if in == nil { + return nil + } + out := new(EnvVarSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Event) DeepCopyInto(out *Event) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + out.InvolvedObject = in.InvolvedObject + out.Source = in.Source + in.FirstTimestamp.DeepCopyInto(&out.FirstTimestamp) + in.LastTimestamp.DeepCopyInto(&out.LastTimestamp) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Event. +func (in *Event) DeepCopy() *Event { + if in == nil { + return nil + } + out := new(Event) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Event) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_EventList is an autogenerated deepcopy function. -func DeepCopy_api_EventList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EventList) - out := out.(*EventList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Event, len(*in)) - for i := range *in { - if err := DeepCopy_api_Event(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventList) DeepCopyInto(out *EventList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Event, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventList. +func (in *EventList) DeepCopy() *EventList { + if in == nil { + return nil + } + out := new(EventList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *EventList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_EventSource is an autogenerated deepcopy function. -func DeepCopy_api_EventSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*EventSource) - out := out.(*EventSource) - *out = *in - return nil - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventSource) DeepCopyInto(out *EventSource) { + *out = *in + return } -// DeepCopy_api_ExecAction is an autogenerated deepcopy function. -func DeepCopy_api_ExecAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ExecAction) - out := out.(*ExecAction) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSource. +func (in *EventSource) DeepCopy() *EventSource { + if in == nil { return nil } + out := new(EventSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_FCVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_FCVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FCVolumeSource) - out := out.(*FCVolumeSource) - *out = *in - if in.TargetWWNs != nil { - in, out := &in.TargetWWNs, &out.TargetWWNs - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExecAction) DeepCopyInto(out *ExecAction) { + *out = *in + if in.Command != nil { + in, out := &in.Command, &out.Command + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExecAction. +func (in *ExecAction) DeepCopy() *ExecAction { + if in == nil { + return nil + } + out := new(ExecAction) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FCVolumeSource) DeepCopyInto(out *FCVolumeSource) { + *out = *in + if in.TargetWWNs != nil { + in, out := &in.TargetWWNs, &out.TargetWWNs + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + if *in == nil { + *out = nil + } else { *out = new(int32) **out = **in } - return nil } + if in.WWIDs != nil { + in, out := &in.WWIDs, &out.WWIDs + *out = make([]string, len(*in)) + copy(*out, *in) + } + return } -// DeepCopy_api_FlexVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_FlexVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FlexVolumeSource) - out := out.(*FlexVolumeSource) - *out = *in - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FCVolumeSource. +func (in *FCVolumeSource) DeepCopy() *FCVolumeSource { + if in == nil { + return nil + } + out := new(FCVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexVolumeSource) DeepCopyInto(out *FlexVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { *out = new(LocalObjectReference) **out = **in } - if in.Options != nil { - in, out := &in.Options, &out.Options - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } + } + if in.Options != nil { + in, out := &in.Options, &out.Options + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val } - return nil } + return } -// DeepCopy_api_FlockerVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_FlockerVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*FlockerVolumeSource) - out := out.(*FlockerVolumeSource) - *out = *in +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexVolumeSource. +func (in *FlexVolumeSource) DeepCopy() *FlexVolumeSource { + if in == nil { return nil } + out := new(FlexVolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_GCEPersistentDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_GCEPersistentDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GCEPersistentDiskVolumeSource) - out := out.(*GCEPersistentDiskVolumeSource) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlockerVolumeSource) DeepCopyInto(out *FlockerVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlockerVolumeSource. +func (in *FlockerVolumeSource) DeepCopy() *FlockerVolumeSource { + if in == nil { return nil } + out := new(FlockerVolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_GitRepoVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_GitRepoVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GitRepoVolumeSource) - out := out.(*GitRepoVolumeSource) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GCEPersistentDiskVolumeSource) DeepCopyInto(out *GCEPersistentDiskVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCEPersistentDiskVolumeSource. +func (in *GCEPersistentDiskVolumeSource) DeepCopy() *GCEPersistentDiskVolumeSource { + if in == nil { return nil } + out := new(GCEPersistentDiskVolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_GlusterfsVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_GlusterfsVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*GlusterfsVolumeSource) - out := out.(*GlusterfsVolumeSource) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GitRepoVolumeSource) DeepCopyInto(out *GitRepoVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoVolumeSource. +func (in *GitRepoVolumeSource) DeepCopy() *GitRepoVolumeSource { + if in == nil { return nil } + out := new(GitRepoVolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_HTTPGetAction is an autogenerated deepcopy function. -func DeepCopy_api_HTTPGetAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPGetAction) - out := out.(*HTTPGetAction) - *out = *in - if in.HTTPHeaders != nil { - in, out := &in.HTTPHeaders, &out.HTTPHeaders - *out = make([]HTTPHeader, len(*in)) - copy(*out, *in) - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlusterfsVolumeSource) DeepCopyInto(out *GlusterfsVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlusterfsVolumeSource. +func (in *GlusterfsVolumeSource) DeepCopy() *GlusterfsVolumeSource { + if in == nil { return nil } + out := new(GlusterfsVolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_HTTPHeader is an autogenerated deepcopy function. -func DeepCopy_api_HTTPHeader(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HTTPHeader) - out := out.(*HTTPHeader) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPGetAction) DeepCopyInto(out *HTTPGetAction) { + *out = *in + out.Port = in.Port + if in.HTTPHeaders != nil { + in, out := &in.HTTPHeaders, &out.HTTPHeaders + *out = make([]HTTPHeader, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPGetAction. +func (in *HTTPGetAction) DeepCopy() *HTTPGetAction { + if in == nil { return nil } + out := new(HTTPGetAction) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_Handler is an autogenerated deepcopy function. -func DeepCopy_api_Handler(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Handler) - out := out.(*Handler) - *out = *in - if in.Exec != nil { - in, out := &in.Exec, &out.Exec +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPHeader) DeepCopyInto(out *HTTPHeader) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPHeader. +func (in *HTTPHeader) DeepCopy() *HTTPHeader { + if in == nil { + return nil + } + out := new(HTTPHeader) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Handler) DeepCopyInto(out *Handler) { + *out = *in + if in.Exec != nil { + in, out := &in.Exec, &out.Exec + if *in == nil { + *out = nil + } else { *out = new(ExecAction) - if err := DeepCopy_api_ExecAction(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.HTTPGet != nil { - in, out := &in.HTTPGet, &out.HTTPGet + } + if in.HTTPGet != nil { + in, out := &in.HTTPGet, &out.HTTPGet + if *in == nil { + *out = nil + } else { *out = new(HTTPGetAction) - if err := DeepCopy_api_HTTPGetAction(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.TCPSocket != nil { - in, out := &in.TCPSocket, &out.TCPSocket + } + if in.TCPSocket != nil { + in, out := &in.TCPSocket, &out.TCPSocket + if *in == nil { + *out = nil + } else { *out = new(TCPSocketAction) **out = **in } - return nil } + return } -// DeepCopy_api_HostAlias is an autogenerated deepcopy function. -func DeepCopy_api_HostAlias(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HostAlias) - out := out.(*HostAlias) - *out = *in - if in.Hostnames != nil { - in, out := &in.Hostnames, &out.Hostnames - *out = make([]string, len(*in)) - copy(*out, *in) - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Handler. +func (in *Handler) DeepCopy() *Handler { + if in == nil { return nil } + out := new(Handler) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_HostPathVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_HostPathVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HostPathVolumeSource) - out := out.(*HostPathVolumeSource) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostAlias) DeepCopyInto(out *HostAlias) { + *out = *in + if in.Hostnames != nil { + in, out := &in.Hostnames, &out.Hostnames + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostAlias. +func (in *HostAlias) DeepCopy() *HostAlias { + if in == nil { return nil } + out := new(HostAlias) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ISCSIVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ISCSIVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ISCSIVolumeSource) - out := out.(*ISCSIVolumeSource) - *out = *in - if in.Portals != nil { - in, out := &in.Portals, &out.Portals - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostPathVolumeSource) DeepCopyInto(out *HostPathVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostPathVolumeSource. +func (in *HostPathVolumeSource) DeepCopy() *HostPathVolumeSource { + if in == nil { + return nil + } + out := new(HostPathVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ISCSIVolumeSource) DeepCopyInto(out *ISCSIVolumeSource) { + *out = *in + if in.Portals != nil { + in, out := &in.Portals, &out.Portals + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { *out = new(LocalObjectReference) **out = **in } - return nil } + return } -// DeepCopy_api_KeyToPath is an autogenerated deepcopy function. -func DeepCopy_api_KeyToPath(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*KeyToPath) - out := out.(*KeyToPath) - *out = *in - if in.Mode != nil { - in, out := &in.Mode, &out.Mode +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ISCSIVolumeSource. +func (in *ISCSIVolumeSource) DeepCopy() *ISCSIVolumeSource { + if in == nil { + return nil + } + out := new(ISCSIVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyToPath) DeepCopyInto(out *KeyToPath) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + if *in == nil { + *out = nil + } else { *out = new(int32) **out = **in } - return nil } + return } -// DeepCopy_api_Lifecycle is an autogenerated deepcopy function. -func DeepCopy_api_Lifecycle(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Lifecycle) - out := out.(*Lifecycle) - *out = *in - if in.PostStart != nil { - in, out := &in.PostStart, &out.PostStart - *out = new(Handler) - if err := DeepCopy_api_Handler(*in, *out, c); err != nil { - return err - } - } - if in.PreStop != nil { - in, out := &in.PreStop, &out.PreStop - *out = new(Handler) - if err := DeepCopy_api_Handler(*in, *out, c); err != nil { - return err - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyToPath. +func (in *KeyToPath) DeepCopy() *KeyToPath { + if in == nil { return nil } + out := new(KeyToPath) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_LimitRange is an autogenerated deepcopy function. -func DeepCopy_api_LimitRange(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRange) - out := out.(*LimitRange) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Lifecycle) DeepCopyInto(out *Lifecycle) { + *out = *in + if in.PostStart != nil { + in, out := &in.PostStart, &out.PostStart + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) + *out = new(Handler) + (*in).DeepCopyInto(*out) } - if err := DeepCopy_api_LimitRangeSpec(&in.Spec, &out.Spec, c); err != nil { - return err + } + if in.PreStop != nil { + in, out := &in.PreStop, &out.PreStop + if *in == nil { + *out = nil + } else { + *out = new(Handler) + (*in).DeepCopyInto(*out) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Lifecycle. +func (in *Lifecycle) DeepCopy() *Lifecycle { + if in == nil { + return nil + } + out := new(Lifecycle) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRange) DeepCopyInto(out *LimitRange) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LimitRange. +func (in *LimitRange) DeepCopy() *LimitRange { + if in == nil { + return nil + } + out := new(LimitRange) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LimitRange) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_LimitRangeItem is an autogenerated deepcopy function. -func DeepCopy_api_LimitRangeItem(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeItem) - out := out.(*LimitRangeItem) - *out = *in - if in.Max != nil { - in, out := &in.Max, &out.Max - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRangeItem) DeepCopyInto(out *LimitRangeItem) { + *out = *in + if in.Max != nil { + in, out := &in.Max, &out.Max + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } - if in.Min != nil { - in, out := &in.Min, &out.Min - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } + } + if in.Min != nil { + in, out := &in.Min, &out.Min + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } - if in.Default != nil { - in, out := &in.Default, &out.Default - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } + } + if in.Default != nil { + in, out := &in.Default, &out.Default + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } - if in.DefaultRequest != nil { - in, out := &in.DefaultRequest, &out.DefaultRequest - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } + } + if in.DefaultRequest != nil { + in, out := &in.DefaultRequest, &out.DefaultRequest + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } - if in.MaxLimitRequestRatio != nil { - in, out := &in.MaxLimitRequestRatio, &out.MaxLimitRequestRatio - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } + } + if in.MaxLimitRequestRatio != nil { + in, out := &in.MaxLimitRequestRatio, &out.MaxLimitRequestRatio + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LimitRangeItem. +func (in *LimitRangeItem) DeepCopy() *LimitRangeItem { + if in == nil { + return nil + } + out := new(LimitRangeItem) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRangeList) DeepCopyInto(out *LimitRangeList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LimitRange, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LimitRangeList. +func (in *LimitRangeList) DeepCopy() *LimitRangeList { + if in == nil { + return nil + } + out := new(LimitRangeList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LimitRangeList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_LimitRangeList is an autogenerated deepcopy function. -func DeepCopy_api_LimitRangeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeList) - out := out.(*LimitRangeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]LimitRange, len(*in)) - for i := range *in { - if err := DeepCopy_api_LimitRange(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LimitRangeSpec) DeepCopyInto(out *LimitRangeSpec) { + *out = *in + if in.Limits != nil { + in, out := &in.Limits, &out.Limits + *out = make([]LimitRangeItem, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - return nil } + return } -// DeepCopy_api_LimitRangeSpec is an autogenerated deepcopy function. -func DeepCopy_api_LimitRangeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LimitRangeSpec) - out := out.(*LimitRangeSpec) - *out = *in - if in.Limits != nil { - in, out := &in.Limits, &out.Limits - *out = make([]LimitRangeItem, len(*in)) - for i := range *in { - if err := DeepCopy_api_LimitRangeItem(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LimitRangeSpec. +func (in *LimitRangeSpec) DeepCopy() *LimitRangeSpec { + if in == nil { return nil } + out := new(LimitRangeSpec) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_List is an autogenerated deepcopy function. -func DeepCopy_api_List(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*List) - out := out.(*List) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]runtime.Object, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*runtime.Object) - } - } - } - return nil - } -} - -// DeepCopy_api_ListOptions is an autogenerated deepcopy function. -func DeepCopy_api_ListOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ListOptions) - out := out.(*ListOptions) - *out = *in - // in.LabelSelector is kind 'Interface' - if in.LabelSelector != nil { - if newVal, err := c.DeepCopy(&in.LabelSelector); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *List) DeepCopyInto(out *List) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]runtime.Object, len(*in)) + for i := range *in { + if (*in)[i] == nil { + (*out)[i] = nil } else { - out.LabelSelector = *newVal.(*labels.Selector) + (*out)[i] = (*in)[i].DeepCopyObject() } } - // in.FieldSelector is kind 'Interface' - if in.FieldSelector != nil { - if newVal, err := c.DeepCopy(&in.FieldSelector); err != nil { - return err - } else { - out.FieldSelector = *newVal.(*fields.Selector) - } - } - if in.TimeoutSeconds != nil { - in, out := &in.TimeoutSeconds, &out.TimeoutSeconds + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new List. +func (in *List) DeepCopy() *List { + if in == nil { + return nil + } + out := new(List) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *List) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ListOptions) DeepCopyInto(out *ListOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.LabelSelector == nil { + out.LabelSelector = nil + } else { + out.LabelSelector = in.LabelSelector.DeepCopySelector() + } + if in.FieldSelector == nil { + out.FieldSelector = nil + } else { + out.FieldSelector = in.FieldSelector.DeepCopySelector() + } + if in.TimeoutSeconds != nil { + in, out := &in.TimeoutSeconds, &out.TimeoutSeconds + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ListOptions. +func (in *ListOptions) DeepCopy() *ListOptions { + if in == nil { + return nil + } + out := new(ListOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ListOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_LoadBalancerIngress is an autogenerated deepcopy function. -func DeepCopy_api_LoadBalancerIngress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LoadBalancerIngress) - out := out.(*LoadBalancerIngress) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerIngress) DeepCopyInto(out *LoadBalancerIngress) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerIngress. +func (in *LoadBalancerIngress) DeepCopy() *LoadBalancerIngress { + if in == nil { + return nil + } + out := new(LoadBalancerIngress) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerStatus) DeepCopyInto(out *LoadBalancerStatus) { + *out = *in + if in.Ingress != nil { + in, out := &in.Ingress, &out.Ingress + *out = make([]LoadBalancerIngress, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerStatus. +func (in *LoadBalancerStatus) DeepCopy() *LoadBalancerStatus { + if in == nil { + return nil + } + out := new(LoadBalancerStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalObjectReference. +func (in *LocalObjectReference) DeepCopy() *LocalObjectReference { + if in == nil { + return nil + } + out := new(LocalObjectReference) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LocalVolumeSource) DeepCopyInto(out *LocalVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalVolumeSource. +func (in *LocalVolumeSource) DeepCopy() *LocalVolumeSource { + if in == nil { + return nil + } + out := new(LocalVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NFSVolumeSource) DeepCopyInto(out *NFSVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NFSVolumeSource. +func (in *NFSVolumeSource) DeepCopy() *NFSVolumeSource { + if in == nil { + return nil + } + out := new(NFSVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Namespace) DeepCopyInto(out *Namespace) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + out.Status = in.Status + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Namespace. +func (in *Namespace) DeepCopy() *Namespace { + if in == nil { + return nil + } + out := new(Namespace) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Namespace) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_LoadBalancerStatus is an autogenerated deepcopy function. -func DeepCopy_api_LoadBalancerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LoadBalancerStatus) - out := out.(*LoadBalancerStatus) - *out = *in - if in.Ingress != nil { - in, out := &in.Ingress, &out.Ingress - *out = make([]LoadBalancerIngress, len(*in)) - copy(*out, *in) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceList) DeepCopyInto(out *NamespaceList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Namespace, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceList. +func (in *NamespaceList) DeepCopy() *NamespaceList { + if in == nil { + return nil + } + out := new(NamespaceList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NamespaceList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_LocalObjectReference is an autogenerated deepcopy function. -func DeepCopy_api_LocalObjectReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*LocalObjectReference) - out := out.(*LocalObjectReference) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceSpec) DeepCopyInto(out *NamespaceSpec) { + *out = *in + if in.Finalizers != nil { + in, out := &in.Finalizers, &out.Finalizers + *out = make([]FinalizerName, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceSpec. +func (in *NamespaceSpec) DeepCopy() *NamespaceSpec { + if in == nil { + return nil + } + out := new(NamespaceSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceStatus) DeepCopyInto(out *NamespaceStatus) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceStatus. +func (in *NamespaceStatus) DeepCopy() *NamespaceStatus { + if in == nil { + return nil + } + out := new(NamespaceStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Node) DeepCopyInto(out *Node) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Node. +func (in *Node) DeepCopy() *Node { + if in == nil { + return nil + } + out := new(Node) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Node) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// 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 - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeAddress) DeepCopyInto(out *NodeAddress) { + *out = *in + return } -// DeepCopy_api_NFSVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_NFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NFSVolumeSource) - out := out.(*NFSVolumeSource) - *out = *in +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAddress. +func (in *NodeAddress) DeepCopy() *NodeAddress { + if in == nil { return nil } + out := new(NodeAddress) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_Namespace is an autogenerated deepcopy function. -func DeepCopy_api_Namespace(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Namespace) - out := out.(*Namespace) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeAffinity) DeepCopyInto(out *NodeAffinity) { + *out = *in + if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_NamespaceSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_NamespaceList is an autogenerated deepcopy function. -func DeepCopy_api_NamespaceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceList) - out := out.(*NamespaceList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Namespace, len(*in)) - for i := range *in { - if err := DeepCopy_api_Namespace(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_NamespaceSpec is an autogenerated deepcopy function. -func DeepCopy_api_NamespaceSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceSpec) - out := out.(*NamespaceSpec) - *out = *in - if in.Finalizers != nil { - in, out := &in.Finalizers, &out.Finalizers - *out = make([]FinalizerName, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_NamespaceStatus is an autogenerated deepcopy function. -func DeepCopy_api_NamespaceStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NamespaceStatus) - out := out.(*NamespaceStatus) - *out = *in - return nil - } -} - -// DeepCopy_api_Node is an autogenerated deepcopy function. -func DeepCopy_api_Node(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Node) - out := out.(*Node) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_NodeSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_NodeStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_NodeAddress is an autogenerated deepcopy function. -func DeepCopy_api_NodeAddress(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeAddress) - out := out.(*NodeAddress) - *out = *in - return nil - } -} - -// DeepCopy_api_NodeAffinity is an autogenerated deepcopy function. -func DeepCopy_api_NodeAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeAffinity) - out := out.(*NodeAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution *out = new(NodeSelector) - if err := DeepCopy_api_NodeSelector(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]PreferredSchedulingTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_PreferredSchedulingTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } + } + if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution + *out = make([]PreferredSchedulingTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAffinity. +func (in *NodeAffinity) DeepCopy() *NodeAffinity { + if in == nil { + return nil + } + out := new(NodeAffinity) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeCondition) DeepCopyInto(out *NodeCondition) { + *out = *in + in.LastHeartbeatTime.DeepCopyInto(&out.LastHeartbeatTime) + in.LastTransitionTime.DeepCopyInto(&out.LastTransitionTime) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeCondition. +func (in *NodeCondition) DeepCopy() *NodeCondition { + if in == nil { + return nil + } + out := new(NodeCondition) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeConfigSource) DeepCopyInto(out *NodeConfigSource) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.ConfigMapRef != nil { + in, out := &in.ConfigMapRef, &out.ConfigMapRef + if *in == nil { + *out = nil + } else { + *out = new(ObjectReference) + **out = **in + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfigSource. +func (in *NodeConfigSource) DeepCopy() *NodeConfigSource { + if in == nil { + return nil + } + out := new(NodeConfigSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NodeConfigSource) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_NodeCondition is an autogenerated deepcopy function. -func DeepCopy_api_NodeCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeCondition) - out := out.(*NodeCondition) - *out = *in - out.LastHeartbeatTime = in.LastHeartbeatTime.DeepCopy() - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeDaemonEndpoints) DeepCopyInto(out *NodeDaemonEndpoints) { + *out = *in + out.KubeletEndpoint = in.KubeletEndpoint + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeDaemonEndpoints. +func (in *NodeDaemonEndpoints) DeepCopy() *NodeDaemonEndpoints { + if in == nil { + return nil + } + out := new(NodeDaemonEndpoints) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeList) DeepCopyInto(out *NodeList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Node, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeList. +func (in *NodeList) DeepCopy() *NodeList { + if in == nil { + return nil + } + out := new(NodeList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NodeList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_NodeDaemonEndpoints is an autogenerated deepcopy function. -func DeepCopy_api_NodeDaemonEndpoints(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeDaemonEndpoints) - out := out.(*NodeDaemonEndpoints) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeProxyOptions) DeepCopyInto(out *NodeProxyOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeProxyOptions. +func (in *NodeProxyOptions) DeepCopy() *NodeProxyOptions { + if in == nil { + return nil + } + out := new(NodeProxyOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NodeProxyOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_NodeList is an autogenerated deepcopy function. -func DeepCopy_api_NodeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeList) - out := out.(*NodeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Node, len(*in)) - for i := range *in { - if err := DeepCopy_api_Node(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeResources) DeepCopyInto(out *NodeResources) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } - return nil } + return } -// DeepCopy_api_NodeProxyOptions is an autogenerated deepcopy function. -func DeepCopy_api_NodeProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeProxyOptions) - out := out.(*NodeProxyOptions) - *out = *in +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeResources. +func (in *NodeResources) DeepCopy() *NodeResources { + if in == nil { return nil } + out := new(NodeResources) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_NodeResources is an autogenerated deepcopy function. -func DeepCopy_api_NodeResources(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeResources) - out := out.(*NodeResources) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSelector) DeepCopyInto(out *NodeSelector) { + *out = *in + if in.NodeSelectorTerms != nil { + in, out := &in.NodeSelectorTerms, &out.NodeSelectorTerms + *out = make([]NodeSelectorTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSelector. +func (in *NodeSelector) DeepCopy() *NodeSelector { + if in == nil { return nil } + out := new(NodeSelector) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_NodeSelector is an autogenerated deepcopy function. -func DeepCopy_api_NodeSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelector) - out := out.(*NodeSelector) - *out = *in - if in.NodeSelectorTerms != nil { - in, out := &in.NodeSelectorTerms, &out.NodeSelectorTerms - *out = make([]NodeSelectorTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_NodeSelectorTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSelectorRequirement) DeepCopyInto(out *NodeSelectorRequirement) { + *out = *in + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSelectorRequirement. +func (in *NodeSelectorRequirement) DeepCopy() *NodeSelectorRequirement { + if in == nil { return nil } + out := new(NodeSelectorRequirement) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_NodeSelectorRequirement is an autogenerated deepcopy function. -func DeepCopy_api_NodeSelectorRequirement(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelectorRequirement) - out := out.(*NodeSelectorRequirement) - *out = *in - if in.Values != nil { - in, out := &in.Values, &out.Values - *out = make([]string, len(*in)) - copy(*out, *in) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSelectorTerm) DeepCopyInto(out *NodeSelectorTerm) { + *out = *in + if in.MatchExpressions != nil { + in, out := &in.MatchExpressions, &out.MatchExpressions + *out = make([]NodeSelectorRequirement, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSelectorTerm. +func (in *NodeSelectorTerm) DeepCopy() *NodeSelectorTerm { + if in == nil { return nil } + out := new(NodeSelectorTerm) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_NodeSelectorTerm is an autogenerated deepcopy function. -func DeepCopy_api_NodeSelectorTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSelectorTerm) - out := out.(*NodeSelectorTerm) - *out = *in - if in.MatchExpressions != nil { - in, out := &in.MatchExpressions, &out.MatchExpressions - *out = make([]NodeSelectorRequirement, len(*in)) - for i := range *in { - if err := DeepCopy_api_NodeSelectorRequirement(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSpec) DeepCopyInto(out *NodeSpec) { + *out = *in + if in.Taints != nil { + in, out := &in.Taints, &out.Taints + *out = make([]Taint, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + if in.ConfigSource != nil { + in, out := &in.ConfigSource, &out.ConfigSource + if *in == nil { + *out = nil + } else { + *out = new(NodeConfigSource) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSpec. +func (in *NodeSpec) DeepCopy() *NodeSpec { + if in == nil { return nil } + out := new(NodeSpec) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_NodeSpec is an autogenerated deepcopy function. -func DeepCopy_api_NodeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSpec) - out := out.(*NodeSpec) - *out = *in - if in.Taints != nil { - in, out := &in.Taints, &out.Taints - *out = make([]Taint, len(*in)) - for i := range *in { - if err := DeepCopy_api_Taint(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeStatus) DeepCopyInto(out *NodeStatus) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } + } + if in.Allocatable != nil { + in, out := &in.Allocatable, &out.Allocatable + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]NodeCondition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Addresses != nil { + in, out := &in.Addresses, &out.Addresses + *out = make([]NodeAddress, len(*in)) + copy(*out, *in) + } + out.DaemonEndpoints = in.DaemonEndpoints + out.NodeInfo = in.NodeInfo + if in.Images != nil { + in, out := &in.Images, &out.Images + *out = make([]ContainerImage, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VolumesInUse != nil { + in, out := &in.VolumesInUse, &out.VolumesInUse + *out = make([]UniqueVolumeName, len(*in)) + copy(*out, *in) + } + if in.VolumesAttached != nil { + in, out := &in.VolumesAttached, &out.VolumesAttached + *out = make([]AttachedVolume, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeStatus. +func (in *NodeStatus) DeepCopy() *NodeStatus { + if in == nil { return nil } + out := new(NodeStatus) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_NodeStatus is an autogenerated deepcopy function. -func DeepCopy_api_NodeStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeStatus) - out := out.(*NodeStatus) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Allocatable != nil { - in, out := &in.Allocatable, &out.Allocatable - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]NodeCondition, len(*in)) - for i := range *in { - if err := DeepCopy_api_NodeCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Addresses != nil { - in, out := &in.Addresses, &out.Addresses - *out = make([]NodeAddress, len(*in)) - copy(*out, *in) - } - if in.Images != nil { - in, out := &in.Images, &out.Images - *out = make([]ContainerImage, len(*in)) - for i := range *in { - if err := DeepCopy_api_ContainerImage(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.VolumesInUse != nil { - in, out := &in.VolumesInUse, &out.VolumesInUse - *out = make([]UniqueVolumeName, len(*in)) - copy(*out, *in) - } - if in.VolumesAttached != nil { - in, out := &in.VolumesAttached, &out.VolumesAttached - *out = make([]AttachedVolume, len(*in)) - copy(*out, *in) - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeSystemInfo) DeepCopyInto(out *NodeSystemInfo) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSystemInfo. +func (in *NodeSystemInfo) DeepCopy() *NodeSystemInfo { + if in == nil { return nil } + out := new(NodeSystemInfo) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_NodeSystemInfo is an autogenerated deepcopy function. -func DeepCopy_api_NodeSystemInfo(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*NodeSystemInfo) - out := out.(*NodeSystemInfo) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectFieldSelector) DeepCopyInto(out *ObjectFieldSelector) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectFieldSelector. +func (in *ObjectFieldSelector) DeepCopy() *ObjectFieldSelector { + if in == nil { return nil } + out := new(ObjectFieldSelector) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ObjectFieldSelector is an autogenerated deepcopy function. -func DeepCopy_api_ObjectFieldSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectFieldSelector) - out := out.(*ObjectFieldSelector) - *out = *in - return nil - } -} - -// DeepCopy_api_ObjectMeta is an autogenerated deepcopy function. -func DeepCopy_api_ObjectMeta(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectMeta) - out := out.(*ObjectMeta) - *out = *in - out.CreationTimestamp = in.CreationTimestamp.DeepCopy() - if in.DeletionTimestamp != nil { - in, out := &in.DeletionTimestamp, &out.DeletionTimestamp +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectMeta) DeepCopyInto(out *ObjectMeta) { + *out = *in + in.CreationTimestamp.DeepCopyInto(&out.CreationTimestamp) + if in.DeletionTimestamp != nil { + in, out := &in.DeletionTimestamp, &out.DeletionTimestamp + if *in == nil { + *out = nil + } else { *out = new(v1.Time) - **out = (*in).DeepCopy() + (*in).DeepCopyInto(*out) } - if in.DeletionGracePeriodSeconds != nil { - in, out := &in.DeletionGracePeriodSeconds, &out.DeletionGracePeriodSeconds + } + if in.DeletionGracePeriodSeconds != nil { + in, out := &in.DeletionGracePeriodSeconds, &out.DeletionGracePeriodSeconds + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.Annotations != nil { - in, out := &in.Annotations, &out.Annotations - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.OwnerReferences != nil { - in, out := &in.OwnerReferences, &out.OwnerReferences - *out = make([]v1.OwnerReference, len(*in)) - for i := range *in { - if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { - return err - } else { - (*out)[i] = *newVal.(*v1.OwnerReference) - } - } - } - if in.Initializers != nil { - in, out := &in.Initializers, &out.Initializers - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.Initializers) - } - } - if in.Finalizers != nil { - in, out := &in.Finalizers, &out.Finalizers - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil } -} - -// DeepCopy_api_ObjectReference is an autogenerated deepcopy function. -func DeepCopy_api_ObjectReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ObjectReference) - out := out.(*ObjectReference) - *out = *in - return nil + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } } -} - -// DeepCopy_api_PersistentVolume is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolume) - out := out.(*PersistentVolume) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.OwnerReferences != nil { + in, out := &in.OwnerReferences, &out.OwnerReferences + *out = make([]v1.OwnerReference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Initializers != nil { + in, out := &in.Initializers, &out.Initializers + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PersistentVolumeSpec(&in.Spec, &out.Spec, c); err != nil { - return err + *out = new(v1.Initializers) + (*in).DeepCopyInto(*out) } + } + if in.Finalizers != nil { + in, out := &in.Finalizers, &out.Finalizers + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectMeta. +func (in *ObjectMeta) DeepCopy() *ObjectMeta { + if in == nil { + return nil + } + out := new(ObjectMeta) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectReference) DeepCopyInto(out *ObjectReference) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectReference. +func (in *ObjectReference) DeepCopy() *ObjectReference { + if in == nil { + return nil + } + out := new(ObjectReference) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ObjectReference) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PersistentVolumeClaim is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaim(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaim) - out := out.(*PersistentVolumeClaim) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolume) DeepCopyInto(out *PersistentVolume) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + out.Status = in.Status + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolume. +func (in *PersistentVolume) DeepCopy() *PersistentVolume { + if in == nil { + return nil + } + out := new(PersistentVolume) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PersistentVolume) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaim) DeepCopyInto(out *PersistentVolumeClaim) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaim. +func (in *PersistentVolumeClaim) DeepCopy() *PersistentVolumeClaim { + if in == nil { + return nil + } + out := new(PersistentVolumeClaim) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PersistentVolumeClaim) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimList) DeepCopyInto(out *PersistentVolumeClaimList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PersistentVolumeClaim, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimList. +func (in *PersistentVolumeClaimList) DeepCopy() *PersistentVolumeClaimList { + if in == nil { + return nil + } + out := new(PersistentVolumeClaimList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PersistentVolumeClaimList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimSpec) DeepCopyInto(out *PersistentVolumeClaimSpec) { + *out = *in + if in.AccessModes != nil { + in, out := &in.AccessModes, &out.AccessModes + *out = make([]PersistentVolumeAccessMode, len(*in)) + copy(*out, *in) + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) + *out = new(v1.LabelSelector) + (*in).DeepCopyInto(*out) } - if err := DeepCopy_api_PersistentVolumeClaimSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_PersistentVolumeClaimStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil } -} - -// DeepCopy_api_PersistentVolumeClaimList is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimList) - out := out.(*PersistentVolumeClaimList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PersistentVolumeClaim, len(*in)) - for i := range *in { - if err := DeepCopy_api_PersistentVolumeClaim(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeClaimSpec is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimSpec) - out := out.(*PersistentVolumeClaimSpec) - *out = *in - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - if err := DeepCopy_api_ResourceRequirements(&in.Resources, &out.Resources, c); err != nil { - return err - } - if in.StorageClassName != nil { - in, out := &in.StorageClassName, &out.StorageClassName + in.Resources.DeepCopyInto(&out.Resources) + if in.StorageClassName != nil { + in, out := &in.StorageClassName, &out.StorageClassName + if *in == nil { + *out = nil + } else { *out = new(string) **out = **in } - return nil } + return } -// DeepCopy_api_PersistentVolumeClaimStatus is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimStatus) - out := out.(*PersistentVolumeClaimStatus) - *out = *in - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimSpec. +func (in *PersistentVolumeClaimSpec) DeepCopy() *PersistentVolumeClaimSpec { + if in == nil { + return nil + } + out := new(PersistentVolumeClaimSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimStatus) DeepCopyInto(out *PersistentVolumeClaimStatus) { + *out = *in + if in.AccessModes != nil { + in, out := &in.AccessModes, &out.AccessModes + *out = make([]PersistentVolumeAccessMode, len(*in)) + copy(*out, *in) + } + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimStatus. +func (in *PersistentVolumeClaimStatus) DeepCopy() *PersistentVolumeClaimStatus { + if in == nil { + return nil + } + out := new(PersistentVolumeClaimStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeClaimVolumeSource) DeepCopyInto(out *PersistentVolumeClaimVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimVolumeSource. +func (in *PersistentVolumeClaimVolumeSource) DeepCopy() *PersistentVolumeClaimVolumeSource { + if in == nil { + return nil + } + out := new(PersistentVolumeClaimVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeList) DeepCopyInto(out *PersistentVolumeList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PersistentVolume, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeList. +func (in *PersistentVolumeList) DeepCopy() *PersistentVolumeList { + if in == nil { + return nil + } + out := new(PersistentVolumeList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PersistentVolumeList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PersistentVolumeClaimVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeClaimVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeClaimVolumeSource) - out := out.(*PersistentVolumeClaimVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_PersistentVolumeList is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeList) - out := out.(*PersistentVolumeList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PersistentVolume, len(*in)) - for i := range *in { - if err := DeepCopy_api_PersistentVolume(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PersistentVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeSource) - out := out.(*PersistentVolumeSource) - *out = *in - if in.GCEPersistentDisk != nil { - in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeSource) DeepCopyInto(out *PersistentVolumeSource) { + *out = *in + if in.GCEPersistentDisk != nil { + in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk + if *in == nil { + *out = nil + } else { *out = new(GCEPersistentDiskVolumeSource) **out = **in } - if in.AWSElasticBlockStore != nil { - in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore + } + if in.AWSElasticBlockStore != nil { + in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore + if *in == nil { + *out = nil + } else { *out = new(AWSElasticBlockStoreVolumeSource) **out = **in } - if in.HostPath != nil { - in, out := &in.HostPath, &out.HostPath + } + if in.HostPath != nil { + in, out := &in.HostPath, &out.HostPath + if *in == nil { + *out = nil + } else { *out = new(HostPathVolumeSource) **out = **in } - if in.Glusterfs != nil { - in, out := &in.Glusterfs, &out.Glusterfs + } + if in.Glusterfs != nil { + in, out := &in.Glusterfs, &out.Glusterfs + if *in == nil { + *out = nil + } else { *out = new(GlusterfsVolumeSource) **out = **in } - if in.NFS != nil { - in, out := &in.NFS, &out.NFS + } + if in.NFS != nil { + in, out := &in.NFS, &out.NFS + if *in == nil { + *out = nil + } else { *out = new(NFSVolumeSource) **out = **in } - if in.RBD != nil { - in, out := &in.RBD, &out.RBD + } + if in.RBD != nil { + in, out := &in.RBD, &out.RBD + if *in == nil { + *out = nil + } else { *out = new(RBDVolumeSource) - if err := DeepCopy_api_RBDVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Quobyte != nil { - in, out := &in.Quobyte, &out.Quobyte + } + if in.Quobyte != nil { + in, out := &in.Quobyte, &out.Quobyte + if *in == nil { + *out = nil + } else { *out = new(QuobyteVolumeSource) **out = **in } - if in.ISCSI != nil { - in, out := &in.ISCSI, &out.ISCSI + } + if in.ISCSI != nil { + in, out := &in.ISCSI, &out.ISCSI + if *in == nil { + *out = nil + } else { *out = new(ISCSIVolumeSource) - if err := DeepCopy_api_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.FlexVolume != nil { - in, out := &in.FlexVolume, &out.FlexVolume + } + if in.FlexVolume != nil { + in, out := &in.FlexVolume, &out.FlexVolume + if *in == nil { + *out = nil + } else { *out = new(FlexVolumeSource) - if err := DeepCopy_api_FlexVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Cinder != nil { - in, out := &in.Cinder, &out.Cinder + } + if in.Cinder != nil { + in, out := &in.Cinder, &out.Cinder + if *in == nil { + *out = nil + } else { *out = new(CinderVolumeSource) **out = **in } - if in.CephFS != nil { - in, out := &in.CephFS, &out.CephFS + } + if in.CephFS != nil { + in, out := &in.CephFS, &out.CephFS + if *in == nil { + *out = nil + } else { *out = new(CephFSVolumeSource) - if err := DeepCopy_api_CephFSVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.FC != nil { - in, out := &in.FC, &out.FC + } + if in.FC != nil { + in, out := &in.FC, &out.FC + if *in == nil { + *out = nil + } else { *out = new(FCVolumeSource) - if err := DeepCopy_api_FCVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Flocker != nil { - in, out := &in.Flocker, &out.Flocker + } + if in.Flocker != nil { + in, out := &in.Flocker, &out.Flocker + if *in == nil { + *out = nil + } else { *out = new(FlockerVolumeSource) **out = **in } - if in.AzureFile != nil { - in, out := &in.AzureFile, &out.AzureFile + } + if in.AzureFile != nil { + in, out := &in.AzureFile, &out.AzureFile + if *in == nil { + *out = nil + } else { *out = new(AzureFileVolumeSource) **out = **in } - if in.VsphereVolume != nil { - in, out := &in.VsphereVolume, &out.VsphereVolume + } + if in.VsphereVolume != nil { + in, out := &in.VsphereVolume, &out.VsphereVolume + if *in == nil { + *out = nil + } else { *out = new(VsphereVirtualDiskVolumeSource) **out = **in } - if in.AzureDisk != nil { - in, out := &in.AzureDisk, &out.AzureDisk + } + if in.AzureDisk != nil { + in, out := &in.AzureDisk, &out.AzureDisk + if *in == nil { + *out = nil + } else { *out = new(AzureDiskVolumeSource) - if err := DeepCopy_api_AzureDiskVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.PhotonPersistentDisk != nil { - in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk + } + if in.PhotonPersistentDisk != nil { + in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk + if *in == nil { + *out = nil + } else { *out = new(PhotonPersistentDiskVolumeSource) **out = **in } - if in.PortworxVolume != nil { - in, out := &in.PortworxVolume, &out.PortworxVolume + } + if in.PortworxVolume != nil { + in, out := &in.PortworxVolume, &out.PortworxVolume + if *in == nil { + *out = nil + } else { *out = new(PortworxVolumeSource) **out = **in } - if in.ScaleIO != nil { - in, out := &in.ScaleIO, &out.ScaleIO + } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + if *in == nil { + *out = nil + } else { *out = new(ScaleIOVolumeSource) - if err := DeepCopy_api_ScaleIOVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Local != nil { - in, out := &in.Local, &out.Local + } + if in.Local != nil { + in, out := &in.Local, &out.Local + if *in == nil { + *out = nil + } else { *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 } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + if *in == nil { + *out = nil + } else { + *out = new(StorageOSPersistentVolumeSource) + (*in).DeepCopyInto(*out) + } + } + return } -// DeepCopy_api_PersistentVolumeSpec is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeSpec) - out := out.(*PersistentVolumeSpec) - *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeSource. +func (in *PersistentVolumeSource) DeepCopy() *PersistentVolumeSource { + if in == nil { + return nil + } + out := new(PersistentVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeSpec) DeepCopyInto(out *PersistentVolumeSpec) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() } - if err := DeepCopy_api_PersistentVolumeSource(&in.PersistentVolumeSource, &out.PersistentVolumeSource, c); err != nil { - return err - } - if in.AccessModes != nil { - in, out := &in.AccessModes, &out.AccessModes - *out = make([]PersistentVolumeAccessMode, len(*in)) - copy(*out, *in) - } - if in.ClaimRef != nil { - in, out := &in.ClaimRef, &out.ClaimRef + } + in.PersistentVolumeSource.DeepCopyInto(&out.PersistentVolumeSource) + if in.AccessModes != nil { + in, out := &in.AccessModes, &out.AccessModes + *out = make([]PersistentVolumeAccessMode, len(*in)) + copy(*out, *in) + } + if in.ClaimRef != nil { + in, out := &in.ClaimRef, &out.ClaimRef + if *in == nil { + *out = nil + } else { *out = new(ObjectReference) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeSpec. +func (in *PersistentVolumeSpec) DeepCopy() *PersistentVolumeSpec { + if in == nil { + return nil + } + out := new(PersistentVolumeSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeStatus) DeepCopyInto(out *PersistentVolumeStatus) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeStatus. +func (in *PersistentVolumeStatus) DeepCopy() *PersistentVolumeStatus { + if in == nil { + return nil + } + out := new(PersistentVolumeStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PhotonPersistentDiskVolumeSource) DeepCopyInto(out *PhotonPersistentDiskVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhotonPersistentDiskVolumeSource. +func (in *PhotonPersistentDiskVolumeSource) DeepCopy() *PhotonPersistentDiskVolumeSource { + if in == nil { + return nil + } + out := new(PhotonPersistentDiskVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Pod) DeepCopyInto(out *Pod) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pod. +func (in *Pod) DeepCopy() *Pod { + if in == nil { + return nil + } + out := new(Pod) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Pod) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PersistentVolumeStatus is an autogenerated deepcopy function. -func DeepCopy_api_PersistentVolumeStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PersistentVolumeStatus) - out := out.(*PersistentVolumeStatus) - *out = *in - return nil +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAffinity) DeepCopyInto(out *PodAffinity) { + *out = *in + if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution + *out = make([]PodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } + if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution + *out = make([]WeightedPodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return } -// DeepCopy_api_PhotonPersistentDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PhotonPersistentDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PhotonPersistentDiskVolumeSource) - out := out.(*PhotonPersistentDiskVolumeSource) - *out = *in +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAffinity. +func (in *PodAffinity) DeepCopy() *PodAffinity { + if in == nil { return nil } + out := new(PodAffinity) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_Pod is an autogenerated deepcopy function. -func DeepCopy_api_Pod(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Pod) - out := out.(*Pod) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAffinityTerm) DeepCopyInto(out *PodAffinityTerm) { + *out = *in + if in.LabelSelector != nil { + in, out := &in.LabelSelector, &out.LabelSelector + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) + *out = new(v1.LabelSelector) + (*in).DeepCopyInto(*out) } - if err := DeepCopy_api_PodSpec(&in.Spec, &out.Spec, c); err != nil { - return err + } + if in.Namespaces != nil { + in, out := &in.Namespaces, &out.Namespaces + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAffinityTerm. +func (in *PodAffinityTerm) DeepCopy() *PodAffinityTerm { + if in == nil { + return nil + } + out := new(PodAffinityTerm) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAntiAffinity) DeepCopyInto(out *PodAntiAffinity) { + *out = *in + if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution + *out = make([]PodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if err := DeepCopy_api_PodStatus(&in.Status, &out.Status, c); err != nil { - return err + } + if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { + in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution + *out = make([]WeightedPodAffinityTerm, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAntiAffinity. +func (in *PodAntiAffinity) DeepCopy() *PodAntiAffinity { + if in == nil { + return nil + } + out := new(PodAntiAffinity) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodAttachOptions) DeepCopyInto(out *PodAttachOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAttachOptions. +func (in *PodAttachOptions) DeepCopy() *PodAttachOptions { + if in == nil { + return nil + } + out := new(PodAttachOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodAttachOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PodAffinity is an autogenerated deepcopy function. -func DeepCopy_api_PodAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAffinity) - out := out.(*PodAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = make([]PodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]WeightedPodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_WeightedPodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodCondition) DeepCopyInto(out *PodCondition) { + *out = *in + in.LastProbeTime.DeepCopyInto(&out.LastProbeTime) + in.LastTransitionTime.DeepCopyInto(&out.LastTransitionTime) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodCondition. +func (in *PodCondition) DeepCopy() *PodCondition { + if in == nil { + return nil + } + out := new(PodCondition) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodExecOptions) DeepCopyInto(out *PodExecOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Command != nil { + in, out := &in.Command, &out.Command + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodExecOptions. +func (in *PodExecOptions) DeepCopy() *PodExecOptions { + if in == nil { + return nil + } + out := new(PodExecOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodExecOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PodAffinityTerm is an autogenerated deepcopy function. -func DeepCopy_api_PodAffinityTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAffinityTerm) - out := out.(*PodAffinityTerm) - *out = *in - if in.LabelSelector != nil { - in, out := &in.LabelSelector, &out.LabelSelector - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.LabelSelector) - } - } - if in.Namespaces != nil { - in, out := &in.Namespaces, &out.Namespaces - *out = make([]string, len(*in)) - copy(*out, *in) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodList) DeepCopyInto(out *PodList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Pod, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodList. +func (in *PodList) DeepCopy() *PodList { + if in == nil { + return nil + } + out := new(PodList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PodAntiAffinity is an autogenerated deepcopy function. -func DeepCopy_api_PodAntiAffinity(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAntiAffinity) - out := out.(*PodAntiAffinity) - *out = *in - if in.RequiredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.RequiredDuringSchedulingIgnoredDuringExecution, &out.RequiredDuringSchedulingIgnoredDuringExecution - *out = make([]PodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.PreferredDuringSchedulingIgnoredDuringExecution != nil { - in, out := &in.PreferredDuringSchedulingIgnoredDuringExecution, &out.PreferredDuringSchedulingIgnoredDuringExecution - *out = make([]WeightedPodAffinityTerm, len(*in)) - for i := range *in { - if err := DeepCopy_api_WeightedPodAffinityTerm(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodAttachOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodAttachOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodAttachOptions) - out := out.(*PodAttachOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_PodCondition is an autogenerated deepcopy function. -func DeepCopy_api_PodCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodCondition) - out := out.(*PodCondition) - *out = *in - out.LastProbeTime = in.LastProbeTime.DeepCopy() - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_api_PodExecOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodExecOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodExecOptions) - out := out.(*PodExecOptions) - *out = *in - if in.Command != nil { - in, out := &in.Command, &out.Command - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_PodList is an autogenerated deepcopy function. -func DeepCopy_api_PodList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodList) - out := out.(*PodList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Pod, len(*in)) - for i := range *in { - if err := DeepCopy_api_Pod(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodLogOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodLogOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodLogOptions) - out := out.(*PodLogOptions) - *out = *in - if in.SinceSeconds != nil { - in, out := &in.SinceSeconds, &out.SinceSeconds +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodLogOptions) DeepCopyInto(out *PodLogOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.SinceSeconds != nil { + in, out := &in.SinceSeconds, &out.SinceSeconds + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } - if in.SinceTime != nil { - in, out := &in.SinceTime, &out.SinceTime + } + if in.SinceTime != nil { + in, out := &in.SinceTime, &out.SinceTime + if *in == nil { + *out = nil + } else { *out = new(v1.Time) - **out = (*in).DeepCopy() + (*in).DeepCopyInto(*out) } - if in.TailLines != nil { - in, out := &in.TailLines, &out.TailLines + } + if in.TailLines != nil { + in, out := &in.TailLines, &out.TailLines + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } - if in.LimitBytes != nil { - in, out := &in.LimitBytes, &out.LimitBytes + } + if in.LimitBytes != nil { + in, out := &in.LimitBytes, &out.LimitBytes + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodLogOptions. +func (in *PodLogOptions) DeepCopy() *PodLogOptions { + if in == nil { + return nil + } + out := new(PodLogOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodLogOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PodPortForwardOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodPortForwardOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodPortForwardOptions) - out := out.(*PodPortForwardOptions) - *out = *in - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]int32, len(*in)) - copy(*out, *in) - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodPortForwardOptions) DeepCopyInto(out *PodPortForwardOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]int32, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodPortForwardOptions. +func (in *PodPortForwardOptions) DeepCopy() *PodPortForwardOptions { + if in == nil { + return nil + } + out := new(PodPortForwardOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodPortForwardOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PodProxyOptions is an autogenerated deepcopy function. -func DeepCopy_api_PodProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodProxyOptions) - out := out.(*PodProxyOptions) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodProxyOptions) DeepCopyInto(out *PodProxyOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodProxyOptions. +func (in *PodProxyOptions) DeepCopy() *PodProxyOptions { + if in == nil { + return nil + } + out := new(PodProxyOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodProxyOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PodSecurityContext is an autogenerated deepcopy function. -func DeepCopy_api_PodSecurityContext(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSecurityContext) - out := out.(*PodSecurityContext) - *out = *in - if in.SELinuxOptions != nil { - in, out := &in.SELinuxOptions, &out.SELinuxOptions +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodSecurityContext) DeepCopyInto(out *PodSecurityContext) { + *out = *in + if in.SELinuxOptions != nil { + in, out := &in.SELinuxOptions, &out.SELinuxOptions + if *in == nil { + *out = nil + } else { *out = new(SELinuxOptions) **out = **in } - if in.RunAsUser != nil { - in, out := &in.RunAsUser, &out.RunAsUser - *out = new(types.UnixUserID) - **out = **in - } - if in.RunAsNonRoot != nil { - in, out := &in.RunAsNonRoot, &out.RunAsNonRoot - *out = new(bool) - **out = **in - } - if in.SupplementalGroups != nil { - in, out := &in.SupplementalGroups, &out.SupplementalGroups - *out = make([]types.UnixGroupID, len(*in)) - copy(*out, *in) - } - if in.FSGroup != nil { - in, out := &in.FSGroup, &out.FSGroup - *out = new(types.UnixGroupID) - **out = **in - } - return nil } -} - -// DeepCopy_api_PodSignature is an autogenerated deepcopy function. -func DeepCopy_api_PodSignature(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSignature) - out := out.(*PodSignature) - *out = *in - if in.PodController != nil { - in, out := &in.PodController, &out.PodController - if newVal, err := c.DeepCopy(*in); err != nil { - return err - } else { - *out = newVal.(*v1.OwnerReference) - } - } - return nil - } -} - -// DeepCopy_api_PodSpec is an autogenerated deepcopy function. -func DeepCopy_api_PodSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodSpec) - out := out.(*PodSpec) - *out = *in - if in.Volumes != nil { - in, out := &in.Volumes, &out.Volumes - *out = make([]Volume, len(*in)) - for i := range *in { - if err := DeepCopy_api_Volume(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.InitContainers != nil { - in, out := &in.InitContainers, &out.InitContainers - *out = make([]Container, len(*in)) - for i := range *in { - if err := DeepCopy_api_Container(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Containers != nil { - in, out := &in.Containers, &out.Containers - *out = make([]Container, len(*in)) - for i := range *in { - if err := DeepCopy_api_Container(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.TerminationGracePeriodSeconds != nil { - in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds + if in.RunAsUser != nil { + in, out := &in.RunAsUser, &out.RunAsUser + if *in == nil { + *out = nil + } else { *out = new(int64) **out = **in } - if in.ActiveDeadlineSeconds != nil { - in, out := &in.ActiveDeadlineSeconds, &out.ActiveDeadlineSeconds - *out = new(int64) - **out = **in - } - if in.NodeSelector != nil { - in, out := &in.NodeSelector, &out.NodeSelector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.AutomountServiceAccountToken != nil { - in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken + } + if in.RunAsNonRoot != nil { + in, out := &in.RunAsNonRoot, &out.RunAsNonRoot + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - if in.SecurityContext != nil { - in, out := &in.SecurityContext, &out.SecurityContext + } + if in.SupplementalGroups != nil { + in, out := &in.SupplementalGroups, &out.SupplementalGroups + *out = make([]int64, len(*in)) + copy(*out, *in) + } + if in.FSGroup != nil { + in, out := &in.FSGroup, &out.FSGroup + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSecurityContext. +func (in *PodSecurityContext) DeepCopy() *PodSecurityContext { + if in == nil { + return nil + } + out := new(PodSecurityContext) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodSignature) DeepCopyInto(out *PodSignature) { + *out = *in + if in.PodController != nil { + in, out := &in.PodController, &out.PodController + if *in == nil { + *out = nil + } else { + *out = new(v1.OwnerReference) + (*in).DeepCopyInto(*out) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSignature. +func (in *PodSignature) DeepCopy() *PodSignature { + if in == nil { + return nil + } + out := new(PodSignature) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodSpec) DeepCopyInto(out *PodSpec) { + *out = *in + if in.Volumes != nil { + in, out := &in.Volumes, &out.Volumes + *out = make([]Volume, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InitContainers != nil { + in, out := &in.InitContainers, &out.InitContainers + *out = make([]Container, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Containers != nil { + in, out := &in.Containers, &out.Containers + *out = make([]Container, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TerminationGracePeriodSeconds != nil { + in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.ActiveDeadlineSeconds != nil { + in, out := &in.ActiveDeadlineSeconds, &out.ActiveDeadlineSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + if in.NodeSelector != nil { + in, out := &in.NodeSelector, &out.NodeSelector + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.AutomountServiceAccountToken != nil { + in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.SecurityContext != nil { + in, out := &in.SecurityContext, &out.SecurityContext + if *in == nil { + *out = nil + } else { *out = new(PodSecurityContext) - if err := DeepCopy_api_PodSecurityContext(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.ImagePullSecrets != nil { - in, out := &in.ImagePullSecrets, &out.ImagePullSecrets - *out = make([]LocalObjectReference, len(*in)) - copy(*out, *in) - } - if in.Affinity != nil { - in, out := &in.Affinity, &out.Affinity + } + if in.ImagePullSecrets != nil { + in, out := &in.ImagePullSecrets, &out.ImagePullSecrets + *out = make([]LocalObjectReference, len(*in)) + copy(*out, *in) + } + if in.Affinity != nil { + in, out := &in.Affinity, &out.Affinity + if *in == nil { + *out = nil + } else { *out = new(Affinity) - if err := DeepCopy_api_Affinity(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Tolerations != nil { - in, out := &in.Tolerations, &out.Tolerations - *out = make([]Toleration, len(*in)) - for i := range *in { - if err := DeepCopy_api_Toleration(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.HostAliases != nil { - in, out := &in.HostAliases, &out.HostAliases - *out = make([]HostAlias, len(*in)) - for i := range *in { - if err := DeepCopy_api_HostAlias(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil } + if in.Tolerations != nil { + in, out := &in.Tolerations, &out.Tolerations + *out = make([]Toleration, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HostAliases != nil { + in, out := &in.HostAliases, &out.HostAliases + *out = make([]HostAlias, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + if *in == nil { + *out = nil + } else { + *out = new(int32) + **out = **in + } + } + return } -// DeepCopy_api_PodStatus is an autogenerated deepcopy function. -func DeepCopy_api_PodStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodStatus) - out := out.(*PodStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]PodCondition, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpec. +func (in *PodSpec) DeepCopy() *PodSpec { + if in == nil { + return nil + } + out := new(PodSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodStatus) DeepCopyInto(out *PodStatus) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]PodCondition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.StartTime != nil { - in, out := &in.StartTime, &out.StartTime + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + if *in == nil { + *out = nil + } else { *out = new(v1.Time) - **out = (*in).DeepCopy() + (*in).DeepCopyInto(*out) } - if in.InitContainerStatuses != nil { - in, out := &in.InitContainerStatuses, &out.InitContainerStatuses - *out = make([]ContainerStatus, len(*in)) - for i := range *in { - if err := DeepCopy_api_ContainerStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } + } + if in.InitContainerStatuses != nil { + in, out := &in.InitContainerStatuses, &out.InitContainerStatuses + *out = make([]ContainerStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.ContainerStatuses != nil { - in, out := &in.ContainerStatuses, &out.ContainerStatuses - *out = make([]ContainerStatus, len(*in)) - for i := range *in { - if err := DeepCopy_api_ContainerStatus(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } + } + if in.ContainerStatuses != nil { + in, out := &in.ContainerStatuses, &out.ContainerStatuses + *out = make([]ContainerStatus, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodStatus. +func (in *PodStatus) DeepCopy() *PodStatus { + if in == nil { + return nil + } + out := new(PodStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodStatusResult) DeepCopyInto(out *PodStatusResult) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodStatusResult. +func (in *PodStatusResult) DeepCopy() *PodStatusResult { + if in == nil { + return nil + } + out := new(PodStatusResult) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodStatusResult) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_PodStatusResult is an autogenerated deepcopy function. -func DeepCopy_api_PodStatusResult(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodStatusResult) - out := out.(*PodStatusResult) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodTemplate) DeepCopyInto(out *PodTemplate) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Template.DeepCopyInto(&out.Template) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplate. +func (in *PodTemplate) DeepCopy() *PodTemplate { + if in == nil { + return nil + } + out := new(PodTemplate) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodTemplate) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodTemplateList) DeepCopyInto(out *PodTemplateList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PodTemplate, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplateList. +func (in *PodTemplateList) DeepCopy() *PodTemplateList { + if in == nil { + return nil + } + out := new(PodTemplateList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PodTemplateList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodTemplateSpec) DeepCopyInto(out *PodTemplateSpec) { + *out = *in + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplateSpec. +func (in *PodTemplateSpec) DeepCopy() *PodTemplateSpec { + if in == nil { + return nil + } + out := new(PodTemplateSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PortworxVolumeSource) DeepCopyInto(out *PortworxVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortworxVolumeSource. +func (in *PortworxVolumeSource) DeepCopy() *PortworxVolumeSource { + if in == nil { + return nil + } + out := new(PortworxVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Preconditions) DeepCopyInto(out *Preconditions) { + *out = *in + if in.UID != nil { + in, out := &in.UID, &out.UID + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PodStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PodTemplate is an autogenerated deepcopy function. -func DeepCopy_api_PodTemplate(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplate) - out := out.(*PodTemplate) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PodTemplateSpec(&in.Template, &out.Template, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PodTemplateList is an autogenerated deepcopy function. -func DeepCopy_api_PodTemplateList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplateList) - out := out.(*PodTemplateList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PodTemplate, len(*in)) - for i := range *in { - if err := DeepCopy_api_PodTemplate(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_PodTemplateSpec is an autogenerated deepcopy function. -func DeepCopy_api_PodTemplateSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PodTemplateSpec) - out := out.(*PodTemplateSpec) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_PodSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_PortworxVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_PortworxVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PortworxVolumeSource) - out := out.(*PortworxVolumeSource) - *out = *in - return nil - } -} - -// DeepCopy_api_Preconditions is an autogenerated deepcopy function. -func DeepCopy_api_Preconditions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Preconditions) - out := out.(*Preconditions) - *out = *in - if in.UID != nil { - in, out := &in.UID, &out.UID *out = new(types.UID) **out = **in } - return nil } + return } -// DeepCopy_api_PreferAvoidPodsEntry is an autogenerated deepcopy function. -func DeepCopy_api_PreferAvoidPodsEntry(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PreferAvoidPodsEntry) - out := out.(*PreferAvoidPodsEntry) - *out = *in - if err := DeepCopy_api_PodSignature(&in.PodSignature, &out.PodSignature, c); err != nil { - return err - } - out.EvictionTime = in.EvictionTime.DeepCopy() +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Preconditions. +func (in *Preconditions) DeepCopy() *Preconditions { + if in == nil { return nil } + out := new(Preconditions) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_PreferredSchedulingTerm is an autogenerated deepcopy function. -func DeepCopy_api_PreferredSchedulingTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*PreferredSchedulingTerm) - out := out.(*PreferredSchedulingTerm) - *out = *in - if err := DeepCopy_api_NodeSelectorTerm(&in.Preference, &out.Preference, c); err != nil { - return err - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PreferAvoidPodsEntry) DeepCopyInto(out *PreferAvoidPodsEntry) { + *out = *in + in.PodSignature.DeepCopyInto(&out.PodSignature) + in.EvictionTime.DeepCopyInto(&out.EvictionTime) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreferAvoidPodsEntry. +func (in *PreferAvoidPodsEntry) DeepCopy() *PreferAvoidPodsEntry { + if in == nil { return nil } + out := new(PreferAvoidPodsEntry) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_Probe is an autogenerated deepcopy function. -func DeepCopy_api_Probe(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Probe) - out := out.(*Probe) - *out = *in - if err := DeepCopy_api_Handler(&in.Handler, &out.Handler, c); err != nil { - return err - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PreferredSchedulingTerm) DeepCopyInto(out *PreferredSchedulingTerm) { + *out = *in + in.Preference.DeepCopyInto(&out.Preference) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreferredSchedulingTerm. +func (in *PreferredSchedulingTerm) DeepCopy() *PreferredSchedulingTerm { + if in == nil { return nil } + out := new(PreferredSchedulingTerm) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_ProjectedVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ProjectedVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ProjectedVolumeSource) - out := out.(*ProjectedVolumeSource) - *out = *in - if in.Sources != nil { - in, out := &in.Sources, &out.Sources - *out = make([]VolumeProjection, len(*in)) - for i := range *in { - if err := DeepCopy_api_VolumeProjection(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Probe) DeepCopyInto(out *Probe) { + *out = *in + in.Handler.DeepCopyInto(&out.Handler) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Probe. +func (in *Probe) DeepCopy() *Probe { + if in == nil { + return nil + } + out := new(Probe) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProjectedVolumeSource) DeepCopyInto(out *ProjectedVolumeSource) { + *out = *in + if in.Sources != nil { + in, out := &in.Sources, &out.Sources + *out = make([]VolumeProjection, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode + } + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { *out = new(int32) **out = **in } - return nil } + return } -// DeepCopy_api_QuobyteVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_QuobyteVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*QuobyteVolumeSource) - out := out.(*QuobyteVolumeSource) - *out = *in +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectedVolumeSource. +func (in *ProjectedVolumeSource) DeepCopy() *ProjectedVolumeSource { + if in == nil { return nil } + out := new(ProjectedVolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_RBDVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_RBDVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RBDVolumeSource) - out := out.(*RBDVolumeSource) - *out = *in - if in.CephMonitors != nil { - in, out := &in.CephMonitors, &out.CephMonitors - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QuobyteVolumeSource) DeepCopyInto(out *QuobyteVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuobyteVolumeSource. +func (in *QuobyteVolumeSource) DeepCopy() *QuobyteVolumeSource { + if in == nil { + return nil + } + out := new(QuobyteVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RBDVolumeSource) DeepCopyInto(out *RBDVolumeSource) { + *out = *in + if in.CephMonitors != nil { + in, out := &in.CephMonitors, &out.CephMonitors + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { *out = new(LocalObjectReference) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBDVolumeSource. +func (in *RBDVolumeSource) DeepCopy() *RBDVolumeSource { + if in == nil { + return nil + } + out := new(RBDVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RangeAllocation) DeepCopyInto(out *RangeAllocation) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Data != nil { + in, out := &in.Data, &out.Data + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RangeAllocation. +func (in *RangeAllocation) DeepCopy() *RangeAllocation { + if in == nil { + return nil + } + out := new(RangeAllocation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *RangeAllocation) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_RangeAllocation is an autogenerated deepcopy function. -func DeepCopy_api_RangeAllocation(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*RangeAllocation) - out := out.(*RangeAllocation) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationController) DeepCopyInto(out *ReplicationController) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationController. +func (in *ReplicationController) DeepCopy() *ReplicationController { + if in == nil { + return nil + } + out := new(ReplicationController) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ReplicationController) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerCondition) DeepCopyInto(out *ReplicationControllerCondition) { + *out = *in + in.LastTransitionTime.DeepCopyInto(&out.LastTransitionTime) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerCondition. +func (in *ReplicationControllerCondition) DeepCopy() *ReplicationControllerCondition { + if in == nil { + return nil + } + out := new(ReplicationControllerCondition) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerList) DeepCopyInto(out *ReplicationControllerList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ReplicationController, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerList. +func (in *ReplicationControllerList) DeepCopy() *ReplicationControllerList { + if in == nil { + return nil + } + out := new(ReplicationControllerList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ReplicationControllerList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerSpec) DeepCopyInto(out *ReplicationControllerSpec) { + *out = *in + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Template != nil { + in, out := &in.Template, &out.Template + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make([]byte, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ReplicationController is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationController(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationController) - out := out.(*ReplicationController) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_ReplicationControllerSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_ReplicationControllerStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_ReplicationControllerCondition is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerCondition) - out := out.(*ReplicationControllerCondition) - *out = *in - out.LastTransitionTime = in.LastTransitionTime.DeepCopy() - return nil - } -} - -// DeepCopy_api_ReplicationControllerList is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerList) - out := out.(*ReplicationControllerList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ReplicationController, len(*in)) - for i := range *in { - if err := DeepCopy_api_ReplicationController(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ReplicationControllerSpec is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerSpec) - out := out.(*ReplicationControllerSpec) - *out = *in - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.Template != nil { - in, out := &in.Template, &out.Template *out = new(PodTemplateSpec) - if err := DeepCopy_api_PodTemplateSpec(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - return nil } + return } -// DeepCopy_api_ReplicationControllerStatus is an autogenerated deepcopy function. -func DeepCopy_api_ReplicationControllerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ReplicationControllerStatus) - out := out.(*ReplicationControllerStatus) - *out = *in - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ReplicationControllerCondition, len(*in)) - for i := range *in { - if err := DeepCopy_api_ReplicationControllerCondition(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerSpec. +func (in *ReplicationControllerSpec) DeepCopy() *ReplicationControllerSpec { + if in == nil { + return nil + } + out := new(ReplicationControllerSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerStatus) DeepCopyInto(out *ReplicationControllerStatus) { + *out = *in + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]ReplicationControllerCondition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerStatus. +func (in *ReplicationControllerStatus) DeepCopy() *ReplicationControllerStatus { + if in == nil { + return nil + } + out := new(ReplicationControllerStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceFieldSelector) DeepCopyInto(out *ResourceFieldSelector) { + *out = *in + out.Divisor = in.Divisor.DeepCopy() + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceFieldSelector. +func (in *ResourceFieldSelector) DeepCopy() *ResourceFieldSelector { + if in == nil { + return nil + } + out := new(ResourceFieldSelector) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuota) DeepCopyInto(out *ResourceQuota) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuota. +func (in *ResourceQuota) DeepCopy() *ResourceQuota { + if in == nil { + return nil + } + out := new(ResourceQuota) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ResourceQuota) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_ResourceFieldSelector is an autogenerated deepcopy function. -func DeepCopy_api_ResourceFieldSelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceFieldSelector) - out := out.(*ResourceFieldSelector) - *out = *in - out.Divisor = in.Divisor.DeepCopy() +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaList) DeepCopyInto(out *ResourceQuotaList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ResourceQuota, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaList. +func (in *ResourceQuotaList) DeepCopy() *ResourceQuotaList { + if in == nil { + return nil + } + out := new(ResourceQuotaList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ResourceQuotaList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_ResourceQuota is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuota(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuota) - out := out.(*ResourceQuota) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaSpec) DeepCopyInto(out *ResourceQuotaSpec) { + *out = *in + if in.Hard != nil { + in, out := &in.Hard, &out.Hard + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]ResourceQuotaScope, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaSpec. +func (in *ResourceQuotaSpec) DeepCopy() *ResourceQuotaSpec { + if in == nil { + return nil + } + out := new(ResourceQuotaSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaStatus) DeepCopyInto(out *ResourceQuotaStatus) { + *out = *in + if in.Hard != nil { + in, out := &in.Hard, &out.Hard + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Used != nil { + in, out := &in.Used, &out.Used + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaStatus. +func (in *ResourceQuotaStatus) DeepCopy() *ResourceQuotaStatus { + if in == nil { + return nil + } + out := new(ResourceQuotaStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceRequirements) DeepCopyInto(out *ResourceRequirements) { + *out = *in + if in.Limits != nil { + in, out := &in.Limits, &out.Limits + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + if in.Requests != nil { + in, out := &in.Requests, &out.Requests + *out = make(ResourceList, len(*in)) + for key, val := range *in { + (*out)[key] = val.DeepCopy() + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequirements. +func (in *ResourceRequirements) DeepCopy() *ResourceRequirements { + if in == nil { + return nil + } + out := new(ResourceRequirements) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SELinuxOptions) DeepCopyInto(out *SELinuxOptions) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SELinuxOptions. +func (in *SELinuxOptions) DeepCopy() *SELinuxOptions { + if in == nil { + return nil + } + out := new(SELinuxOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScaleIOVolumeSource) DeepCopyInto(out *ScaleIOVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_ResourceQuotaSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_ResourceQuotaStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_ResourceQuotaList is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuotaList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaList) - out := out.(*ResourceQuotaList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ResourceQuota, len(*in)) - for i := range *in { - if err := DeepCopy_api_ResourceQuota(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ResourceQuotaSpec is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuotaSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaSpec) - out := out.(*ResourceQuotaSpec) - *out = *in - if in.Hard != nil { - in, out := &in.Hard, &out.Hard - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Scopes != nil { - in, out := &in.Scopes, &out.Scopes - *out = make([]ResourceQuotaScope, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ResourceQuotaStatus is an autogenerated deepcopy function. -func DeepCopy_api_ResourceQuotaStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceQuotaStatus) - out := out.(*ResourceQuotaStatus) - *out = *in - if in.Hard != nil { - in, out := &in.Hard, &out.Hard - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Used != nil { - in, out := &in.Used, &out.Used - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_api_ResourceRequirements is an autogenerated deepcopy function. -func DeepCopy_api_ResourceRequirements(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ResourceRequirements) - out := out.(*ResourceRequirements) - *out = *in - if in.Limits != nil { - in, out := &in.Limits, &out.Limits - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - if in.Requests != nil { - in, out := &in.Requests, &out.Requests - *out = make(ResourceList) - for key, val := range *in { - (*out)[key] = val.DeepCopy() - } - } - return nil - } -} - -// DeepCopy_api_SELinuxOptions is an autogenerated deepcopy function. -func DeepCopy_api_SELinuxOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SELinuxOptions) - out := out.(*SELinuxOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_ScaleIOVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_ScaleIOVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ScaleIOVolumeSource) - out := out.(*ScaleIOVolumeSource) - *out = *in - if in.SecretRef != nil { - in, out := &in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleIOVolumeSource. +func (in *ScaleIOVolumeSource) DeepCopy() *ScaleIOVolumeSource { + if in == nil { + return nil + } + out := new(ScaleIOVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Secret) DeepCopyInto(out *Secret) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Data != nil { + in, out := &in.Data, &out.Data + *out = make(map[string][]byte, len(*in)) + for key, val := range *in { + if val == nil { + (*out)[key] = nil + } else { + (*out)[key] = make([]byte, len(val)) + copy((*out)[key], val) + } + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Secret. +func (in *Secret) DeepCopy() *Secret { + if in == nil { + return nil + } + out := new(Secret) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Secret) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_Secret is an autogenerated deepcopy function. -func DeepCopy_api_Secret(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Secret) - out := out.(*Secret) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretEnvSource) DeepCopyInto(out *SecretEnvSource) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Data != nil { - in, out := &in.Data, &out.Data - *out = make(map[string][]byte) - for key, val := range *in { - if newVal, err := c.DeepCopy(&val); err != nil { - return err - } else { - (*out)[key] = *newVal.(*[]byte) - } - } - } - return nil - } -} - -// DeepCopy_api_SecretEnvSource is an autogenerated deepcopy function. -func DeepCopy_api_SecretEnvSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretEnvSource) - out := out.(*SecretEnvSource) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional *out = new(bool) **out = **in } - return nil } + return } -// DeepCopy_api_SecretKeySelector is an autogenerated deepcopy function. -func DeepCopy_api_SecretKeySelector(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretKeySelector) - out := out.(*SecretKeySelector) - *out = *in - if in.Optional != nil { - in, out := &in.Optional, &out.Optional +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretEnvSource. +func (in *SecretEnvSource) DeepCopy() *SecretEnvSource { + if in == nil { + return nil + } + out := new(SecretEnvSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretKeySelector) DeepCopyInto(out *SecretKeySelector) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretKeySelector. +func (in *SecretKeySelector) DeepCopy() *SecretKeySelector { + if in == nil { + return nil + } + out := new(SecretKeySelector) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretList) DeepCopyInto(out *SecretList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Secret, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretList. +func (in *SecretList) DeepCopy() *SecretList { + if in == nil { + return nil + } + out := new(SecretList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SecretList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_SecretList is an autogenerated deepcopy function. -func DeepCopy_api_SecretList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretList) - out := out.(*SecretList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Secret, len(*in)) - for i := range *in { - if err := DeepCopy_api_Secret(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretProjection) DeepCopyInto(out *SecretProjection) { + *out = *in + out.LocalObjectReference = in.LocalObjectReference + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - return nil } -} - -// DeepCopy_api_SecretProjection is an autogenerated deepcopy function. -func DeepCopy_api_SecretProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretProjection) - out := out.(*SecretProjection) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - return nil } + return } -// DeepCopy_api_SecretVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_SecretVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecretVolumeSource) - out := out.(*SecretVolumeSource) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KeyToPath, len(*in)) - for i := range *in { - if err := DeepCopy_api_KeyToPath(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretProjection. +func (in *SecretProjection) DeepCopy() *SecretProjection { + if in == nil { + return nil + } + out := new(SecretProjection) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretVolumeSource) DeepCopyInto(out *SecretVolumeSource) { + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KeyToPath, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } - if in.DefaultMode != nil { - in, out := &in.DefaultMode, &out.DefaultMode + } + if in.DefaultMode != nil { + in, out := &in.DefaultMode, &out.DefaultMode + if *in == nil { + *out = nil + } else { *out = new(int32) **out = **in } - if in.Optional != nil { - in, out := &in.Optional, &out.Optional + } + if in.Optional != nil { + in, out := &in.Optional, &out.Optional + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - return nil } + return } -// DeepCopy_api_SecurityContext is an autogenerated deepcopy function. -func DeepCopy_api_SecurityContext(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SecurityContext) - out := out.(*SecurityContext) - *out = *in - if in.Capabilities != nil { - in, out := &in.Capabilities, &out.Capabilities +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretVolumeSource. +func (in *SecretVolumeSource) DeepCopy() *SecretVolumeSource { + if in == nil { + return nil + } + out := new(SecretVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityContext) DeepCopyInto(out *SecurityContext) { + *out = *in + if in.Capabilities != nil { + in, out := &in.Capabilities, &out.Capabilities + if *in == nil { + *out = nil + } else { *out = new(Capabilities) - if err := DeepCopy_api_Capabilities(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Privileged != nil { - in, out := &in.Privileged, &out.Privileged + } + if in.Privileged != nil { + in, out := &in.Privileged, &out.Privileged + if *in == nil { + *out = nil + } else { *out = new(bool) **out = **in } - if in.SELinuxOptions != nil { - in, out := &in.SELinuxOptions, &out.SELinuxOptions + } + if in.SELinuxOptions != nil { + in, out := &in.SELinuxOptions, &out.SELinuxOptions + if *in == nil { + *out = nil + } else { *out = new(SELinuxOptions) **out = **in } - if in.RunAsUser != nil { - in, out := &in.RunAsUser, &out.RunAsUser - *out = new(types.UnixUserID) - **out = **in - } - if in.RunAsNonRoot != nil { - in, out := &in.RunAsNonRoot, &out.RunAsNonRoot - *out = new(bool) - **out = **in - } - if in.ReadOnlyRootFilesystem != nil { - in, out := &in.ReadOnlyRootFilesystem, &out.ReadOnlyRootFilesystem - *out = new(bool) - **out = **in - } - return nil } -} - -// DeepCopy_api_SerializedReference is an autogenerated deepcopy function. -func DeepCopy_api_SerializedReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SerializedReference) - out := out.(*SerializedReference) - *out = *in - return nil - } -} - -// DeepCopy_api_Service is an autogenerated deepcopy function. -func DeepCopy_api_Service(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Service) - out := out.(*Service) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err + if in.RunAsUser != nil { + in, out := &in.RunAsUser, &out.RunAsUser + if *in == nil { + *out = nil } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_api_ServiceSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_api_ServiceStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -// DeepCopy_api_ServiceAccount is an autogenerated deepcopy function. -func DeepCopy_api_ServiceAccount(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceAccount) - out := out.(*ServiceAccount) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if in.Secrets != nil { - in, out := &in.Secrets, &out.Secrets - *out = make([]ObjectReference, len(*in)) - copy(*out, *in) - } - if in.ImagePullSecrets != nil { - in, out := &in.ImagePullSecrets, &out.ImagePullSecrets - *out = make([]LocalObjectReference, len(*in)) - copy(*out, *in) - } - if in.AutomountServiceAccountToken != nil { - in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken - *out = new(bool) - **out = **in - } - return nil - } -} - -// DeepCopy_api_ServiceAccountList is an autogenerated deepcopy function. -func DeepCopy_api_ServiceAccountList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceAccountList) - out := out.(*ServiceAccountList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ServiceAccount, len(*in)) - for i := range *in { - if err := DeepCopy_api_ServiceAccount(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ServiceList is an autogenerated deepcopy function. -func DeepCopy_api_ServiceList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceList) - out := out.(*ServiceList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Service, len(*in)) - for i := range *in { - if err := DeepCopy_api_Service(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -// DeepCopy_api_ServicePort is an autogenerated deepcopy function. -func DeepCopy_api_ServicePort(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServicePort) - out := out.(*ServicePort) - *out = *in - return nil - } -} - -// DeepCopy_api_ServiceProxyOptions is an autogenerated deepcopy function. -func DeepCopy_api_ServiceProxyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceProxyOptions) - out := out.(*ServiceProxyOptions) - *out = *in - return nil - } -} - -// DeepCopy_api_ServiceSpec is an autogenerated deepcopy function. -func DeepCopy_api_ServiceSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceSpec) - out := out.(*ServiceSpec) - *out = *in - if in.Ports != nil { - in, out := &in.Ports, &out.Ports - *out = make([]ServicePort, len(*in)) - copy(*out, *in) - } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = make(map[string]string) - for key, val := range *in { - (*out)[key] = val - } - } - if in.ExternalIPs != nil { - in, out := &in.ExternalIPs, &out.ExternalIPs - *out = make([]string, len(*in)) - copy(*out, *in) - } - if in.LoadBalancerSourceRanges != nil { - in, out := &in.LoadBalancerSourceRanges, &out.LoadBalancerSourceRanges - *out = make([]string, len(*in)) - copy(*out, *in) - } - return nil - } -} - -// DeepCopy_api_ServiceStatus is an autogenerated deepcopy function. -func DeepCopy_api_ServiceStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*ServiceStatus) - out := out.(*ServiceStatus) - *out = *in - if err := DeepCopy_api_LoadBalancerStatus(&in.LoadBalancer, &out.LoadBalancer, c); err != nil { - return err - } - return nil - } -} - -// 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 { - { - in := in.(*Sysctl) - out := out.(*Sysctl) - *out = *in - return nil - } -} - -// DeepCopy_api_TCPSocketAction is an autogenerated deepcopy function. -func DeepCopy_api_TCPSocketAction(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*TCPSocketAction) - out := out.(*TCPSocketAction) - *out = *in - return nil - } -} - -// DeepCopy_api_Taint is an autogenerated deepcopy function. -func DeepCopy_api_Taint(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Taint) - out := out.(*Taint) - *out = *in - out.TimeAdded = in.TimeAdded.DeepCopy() - return nil - } -} - -// DeepCopy_api_Toleration is an autogenerated deepcopy function. -func DeepCopy_api_Toleration(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Toleration) - out := out.(*Toleration) - *out = *in - if in.TolerationSeconds != nil { - in, out := &in.TolerationSeconds, &out.TolerationSeconds *out = new(int64) **out = **in } - return nil } -} - -// DeepCopy_api_Volume is an autogenerated deepcopy function. -func DeepCopy_api_Volume(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*Volume) - out := out.(*Volume) - *out = *in - if err := DeepCopy_api_VolumeSource(&in.VolumeSource, &out.VolumeSource, c); err != nil { - return err + if in.RunAsNonRoot != nil { + in, out := &in.RunAsNonRoot, &out.RunAsNonRoot + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in } + } + if in.ReadOnlyRootFilesystem != nil { + in, out := &in.ReadOnlyRootFilesystem, &out.ReadOnlyRootFilesystem + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + if in.AllowPrivilegeEscalation != nil { + in, out := &in.AllowPrivilegeEscalation, &out.AllowPrivilegeEscalation + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityContext. +func (in *SecurityContext) DeepCopy() *SecurityContext { + if in == nil { + return nil + } + out := new(SecurityContext) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SerializedReference) DeepCopyInto(out *SerializedReference) { + *out = *in + out.TypeMeta = in.TypeMeta + out.Reference = in.Reference + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerializedReference. +func (in *SerializedReference) DeepCopy() *SerializedReference { + if in == nil { + return nil + } + out := new(SerializedReference) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SerializedReference) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_VolumeMount is an autogenerated deepcopy function. -func DeepCopy_api_VolumeMount(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeMount) - out := out.(*VolumeMount) - *out = *in +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Service) DeepCopyInto(out *Service) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service. +func (in *Service) DeepCopy() *Service { + if in == nil { + return nil + } + out := new(Service) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Service) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { return nil } } -// DeepCopy_api_VolumeProjection is an autogenerated deepcopy function. -func DeepCopy_api_VolumeProjection(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeProjection) - out := out.(*VolumeProjection) - *out = *in - if in.Secret != nil { - in, out := &in.Secret, &out.Secret +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccount) DeepCopyInto(out *ServiceAccount) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + if in.Secrets != nil { + in, out := &in.Secrets, &out.Secrets + *out = make([]ObjectReference, len(*in)) + copy(*out, *in) + } + if in.ImagePullSecrets != nil { + in, out := &in.ImagePullSecrets, &out.ImagePullSecrets + *out = make([]LocalObjectReference, len(*in)) + copy(*out, *in) + } + if in.AutomountServiceAccountToken != nil { + in, out := &in.AutomountServiceAccountToken, &out.AutomountServiceAccountToken + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccount. +func (in *ServiceAccount) DeepCopy() *ServiceAccount { + if in == nil { + return nil + } + out := new(ServiceAccount) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ServiceAccount) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceAccountList) DeepCopyInto(out *ServiceAccountList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ServiceAccount, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountList. +func (in *ServiceAccountList) DeepCopy() *ServiceAccountList { + if in == nil { + return nil + } + out := new(ServiceAccountList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ServiceAccountList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceList) DeepCopyInto(out *ServiceList) { + *out = *in + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Service, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceList. +func (in *ServiceList) DeepCopy() *ServiceList { + if in == nil { + return nil + } + out := new(ServiceList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ServiceList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicePort) DeepCopyInto(out *ServicePort) { + *out = *in + out.TargetPort = in.TargetPort + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePort. +func (in *ServicePort) DeepCopy() *ServicePort { + if in == nil { + return nil + } + out := new(ServicePort) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceProxyOptions) DeepCopyInto(out *ServiceProxyOptions) { + *out = *in + out.TypeMeta = in.TypeMeta + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceProxyOptions. +func (in *ServiceProxyOptions) DeepCopy() *ServiceProxyOptions { + if in == nil { + return nil + } + out := new(ServiceProxyOptions) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ServiceProxyOptions) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } else { + return nil + } +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec) { + *out = *in + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]ServicePort, len(*in)) + copy(*out, *in) + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.ExternalIPs != nil { + in, out := &in.ExternalIPs, &out.ExternalIPs + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.LoadBalancerSourceRanges != nil { + in, out := &in.LoadBalancerSourceRanges, &out.LoadBalancerSourceRanges + *out = make([]string, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec. +func (in *ServiceSpec) DeepCopy() *ServiceSpec { + if in == nil { + return nil + } + out := new(ServiceSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus) { + *out = *in + in.LoadBalancer.DeepCopyInto(&out.LoadBalancer) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceStatus. +func (in *ServiceStatus) DeepCopy() *ServiceStatus { + if in == nil { + return nil + } + out := new(ServiceStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageOSPersistentVolumeSource) DeepCopyInto(out *StorageOSPersistentVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(ObjectReference) + **out = **in + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageOSPersistentVolumeSource. +func (in *StorageOSPersistentVolumeSource) DeepCopy() *StorageOSPersistentVolumeSource { + if in == nil { + return nil + } + out := new(StorageOSPersistentVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageOSVolumeSource) DeepCopyInto(out *StorageOSVolumeSource) { + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + if *in == nil { + *out = nil + } else { + *out = new(LocalObjectReference) + **out = **in + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageOSVolumeSource. +func (in *StorageOSVolumeSource) DeepCopy() *StorageOSVolumeSource { + if in == nil { + return nil + } + out := new(StorageOSVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Sysctl) DeepCopyInto(out *Sysctl) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sysctl. +func (in *Sysctl) DeepCopy() *Sysctl { + if in == nil { + return nil + } + out := new(Sysctl) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TCPSocketAction) DeepCopyInto(out *TCPSocketAction) { + *out = *in + out.Port = in.Port + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TCPSocketAction. +func (in *TCPSocketAction) DeepCopy() *TCPSocketAction { + if in == nil { + return nil + } + out := new(TCPSocketAction) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Taint) DeepCopyInto(out *Taint) { + *out = *in + in.TimeAdded.DeepCopyInto(&out.TimeAdded) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Taint. +func (in *Taint) DeepCopy() *Taint { + if in == nil { + return nil + } + out := new(Taint) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Toleration) DeepCopyInto(out *Toleration) { + *out = *in + if in.TolerationSeconds != nil { + in, out := &in.TolerationSeconds, &out.TolerationSeconds + if *in == nil { + *out = nil + } else { + *out = new(int64) + **out = **in + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Toleration. +func (in *Toleration) DeepCopy() *Toleration { + if in == nil { + return nil + } + out := new(Toleration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Volume) DeepCopyInto(out *Volume) { + *out = *in + in.VolumeSource.DeepCopyInto(&out.VolumeSource) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume. +func (in *Volume) DeepCopy() *Volume { + if in == nil { + return nil + } + out := new(Volume) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeMount) DeepCopyInto(out *VolumeMount) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount. +func (in *VolumeMount) DeepCopy() *VolumeMount { + if in == nil { + return nil + } + out := new(VolumeMount) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeProjection) DeepCopyInto(out *VolumeProjection) { + *out = *in + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + if *in == nil { + *out = nil + } else { *out = new(SecretProjection) - if err := DeepCopy_api_SecretProjection(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.DownwardAPI != nil { - in, out := &in.DownwardAPI, &out.DownwardAPI - *out = new(DownwardAPIProjection) - if err := DeepCopy_api_DownwardAPIProjection(*in, *out, c); err != nil { - return err - } - } - if in.ConfigMap != nil { - in, out := &in.ConfigMap, &out.ConfigMap - *out = new(ConfigMapProjection) - if err := DeepCopy_api_ConfigMapProjection(*in, *out, c); err != nil { - return err - } - } - return nil } + if in.DownwardAPI != nil { + in, out := &in.DownwardAPI, &out.DownwardAPI + if *in == nil { + *out = nil + } else { + *out = new(DownwardAPIProjection) + (*in).DeepCopyInto(*out) + } + } + if in.ConfigMap != nil { + in, out := &in.ConfigMap, &out.ConfigMap + if *in == nil { + *out = nil + } else { + *out = new(ConfigMapProjection) + (*in).DeepCopyInto(*out) + } + } + return } -// DeepCopy_api_VolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_VolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VolumeSource) - out := out.(*VolumeSource) - *out = *in - if in.HostPath != nil { - in, out := &in.HostPath, &out.HostPath +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeProjection. +func (in *VolumeProjection) DeepCopy() *VolumeProjection { + if in == nil { + return nil + } + out := new(VolumeProjection) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeSource) DeepCopyInto(out *VolumeSource) { + *out = *in + if in.HostPath != nil { + in, out := &in.HostPath, &out.HostPath + if *in == nil { + *out = nil + } else { *out = new(HostPathVolumeSource) **out = **in } - if in.EmptyDir != nil { - in, out := &in.EmptyDir, &out.EmptyDir + } + if in.EmptyDir != nil { + in, out := &in.EmptyDir, &out.EmptyDir + if *in == nil { + *out = nil + } else { *out = new(EmptyDirVolumeSource) - if err := DeepCopy_api_EmptyDirVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.GCEPersistentDisk != nil { - in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk + } + if in.GCEPersistentDisk != nil { + in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk + if *in == nil { + *out = nil + } else { *out = new(GCEPersistentDiskVolumeSource) **out = **in } - if in.AWSElasticBlockStore != nil { - in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore + } + if in.AWSElasticBlockStore != nil { + in, out := &in.AWSElasticBlockStore, &out.AWSElasticBlockStore + if *in == nil { + *out = nil + } else { *out = new(AWSElasticBlockStoreVolumeSource) **out = **in } - if in.GitRepo != nil { - in, out := &in.GitRepo, &out.GitRepo + } + if in.GitRepo != nil { + in, out := &in.GitRepo, &out.GitRepo + if *in == nil { + *out = nil + } else { *out = new(GitRepoVolumeSource) **out = **in } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + if *in == nil { + *out = nil + } else { *out = new(SecretVolumeSource) - if err := DeepCopy_api_SecretVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.NFS != nil { - in, out := &in.NFS, &out.NFS + } + if in.NFS != nil { + in, out := &in.NFS, &out.NFS + if *in == nil { + *out = nil + } else { *out = new(NFSVolumeSource) **out = **in } - if in.ISCSI != nil { - in, out := &in.ISCSI, &out.ISCSI + } + if in.ISCSI != nil { + in, out := &in.ISCSI, &out.ISCSI + if *in == nil { + *out = nil + } else { *out = new(ISCSIVolumeSource) - if err := DeepCopy_api_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Glusterfs != nil { - in, out := &in.Glusterfs, &out.Glusterfs + } + if in.Glusterfs != nil { + in, out := &in.Glusterfs, &out.Glusterfs + if *in == nil { + *out = nil + } else { *out = new(GlusterfsVolumeSource) **out = **in } - if in.PersistentVolumeClaim != nil { - in, out := &in.PersistentVolumeClaim, &out.PersistentVolumeClaim + } + if in.PersistentVolumeClaim != nil { + in, out := &in.PersistentVolumeClaim, &out.PersistentVolumeClaim + if *in == nil { + *out = nil + } else { *out = new(PersistentVolumeClaimVolumeSource) **out = **in } - if in.RBD != nil { - in, out := &in.RBD, &out.RBD + } + if in.RBD != nil { + in, out := &in.RBD, &out.RBD + if *in == nil { + *out = nil + } else { *out = new(RBDVolumeSource) - if err := DeepCopy_api_RBDVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Quobyte != nil { - in, out := &in.Quobyte, &out.Quobyte + } + if in.Quobyte != nil { + in, out := &in.Quobyte, &out.Quobyte + if *in == nil { + *out = nil + } else { *out = new(QuobyteVolumeSource) **out = **in } - if in.FlexVolume != nil { - in, out := &in.FlexVolume, &out.FlexVolume + } + if in.FlexVolume != nil { + in, out := &in.FlexVolume, &out.FlexVolume + if *in == nil { + *out = nil + } else { *out = new(FlexVolumeSource) - if err := DeepCopy_api_FlexVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Cinder != nil { - in, out := &in.Cinder, &out.Cinder + } + if in.Cinder != nil { + in, out := &in.Cinder, &out.Cinder + if *in == nil { + *out = nil + } else { *out = new(CinderVolumeSource) **out = **in } - if in.CephFS != nil { - in, out := &in.CephFS, &out.CephFS + } + if in.CephFS != nil { + in, out := &in.CephFS, &out.CephFS + if *in == nil { + *out = nil + } else { *out = new(CephFSVolumeSource) - if err := DeepCopy_api_CephFSVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.Flocker != nil { - in, out := &in.Flocker, &out.Flocker + } + if in.Flocker != nil { + in, out := &in.Flocker, &out.Flocker + if *in == nil { + *out = nil + } else { *out = new(FlockerVolumeSource) **out = **in } - if in.DownwardAPI != nil { - in, out := &in.DownwardAPI, &out.DownwardAPI + } + if in.DownwardAPI != nil { + in, out := &in.DownwardAPI, &out.DownwardAPI + if *in == nil { + *out = nil + } else { *out = new(DownwardAPIVolumeSource) - if err := DeepCopy_api_DownwardAPIVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.FC != nil { - in, out := &in.FC, &out.FC + } + if in.FC != nil { + in, out := &in.FC, &out.FC + if *in == nil { + *out = nil + } else { *out = new(FCVolumeSource) - if err := DeepCopy_api_FCVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.AzureFile != nil { - in, out := &in.AzureFile, &out.AzureFile + } + if in.AzureFile != nil { + in, out := &in.AzureFile, &out.AzureFile + if *in == nil { + *out = nil + } else { *out = new(AzureFileVolumeSource) **out = **in } - if in.ConfigMap != nil { - in, out := &in.ConfigMap, &out.ConfigMap + } + if in.ConfigMap != nil { + in, out := &in.ConfigMap, &out.ConfigMap + if *in == nil { + *out = nil + } else { *out = new(ConfigMapVolumeSource) - if err := DeepCopy_api_ConfigMapVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.VsphereVolume != nil { - in, out := &in.VsphereVolume, &out.VsphereVolume + } + if in.VsphereVolume != nil { + in, out := &in.VsphereVolume, &out.VsphereVolume + if *in == nil { + *out = nil + } else { *out = new(VsphereVirtualDiskVolumeSource) **out = **in } - if in.AzureDisk != nil { - in, out := &in.AzureDisk, &out.AzureDisk + } + if in.AzureDisk != nil { + in, out := &in.AzureDisk, &out.AzureDisk + if *in == nil { + *out = nil + } else { *out = new(AzureDiskVolumeSource) - if err := DeepCopy_api_AzureDiskVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.PhotonPersistentDisk != nil { - in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk + } + if in.PhotonPersistentDisk != nil { + in, out := &in.PhotonPersistentDisk, &out.PhotonPersistentDisk + if *in == nil { + *out = nil + } else { *out = new(PhotonPersistentDiskVolumeSource) **out = **in } - if in.Projected != nil { - in, out := &in.Projected, &out.Projected + } + if in.Projected != nil { + in, out := &in.Projected, &out.Projected + if *in == nil { + *out = nil + } else { *out = new(ProjectedVolumeSource) - if err := DeepCopy_api_ProjectedVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.PortworxVolume != nil { - in, out := &in.PortworxVolume, &out.PortworxVolume + } + if in.PortworxVolume != nil { + in, out := &in.PortworxVolume, &out.PortworxVolume + if *in == nil { + *out = nil + } else { *out = new(PortworxVolumeSource) **out = **in } - if in.ScaleIO != nil { - in, out := &in.ScaleIO, &out.ScaleIO + } + if in.ScaleIO != nil { + in, out := &in.ScaleIO, &out.ScaleIO + if *in == nil { + *out = nil + } else { *out = new(ScaleIOVolumeSource) - if err := DeepCopy_api_ScaleIOVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - if in.StorageOS != nil { - in, out := &in.StorageOS, &out.StorageOS + } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + if *in == nil { + *out = nil + } else { *out = new(StorageOSVolumeSource) - if err := DeepCopy_api_StorageOSVolumeSource(*in, *out, c); err != nil { - return err - } + (*in).DeepCopyInto(*out) } - return nil } + return } -// DeepCopy_api_VsphereVirtualDiskVolumeSource is an autogenerated deepcopy function. -func DeepCopy_api_VsphereVirtualDiskVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*VsphereVirtualDiskVolumeSource) - out := out.(*VsphereVirtualDiskVolumeSource) - *out = *in +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSource. +func (in *VolumeSource) DeepCopy() *VolumeSource { + if in == nil { return nil } + out := new(VolumeSource) + in.DeepCopyInto(out) + return out } -// DeepCopy_api_WeightedPodAffinityTerm is an autogenerated deepcopy function. -func DeepCopy_api_WeightedPodAffinityTerm(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*WeightedPodAffinityTerm) - out := out.(*WeightedPodAffinityTerm) - *out = *in - if err := DeepCopy_api_PodAffinityTerm(&in.PodAffinityTerm, &out.PodAffinityTerm, c); err != nil { - return err - } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VsphereVirtualDiskVolumeSource) DeepCopyInto(out *VsphereVirtualDiskVolumeSource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VsphereVirtualDiskVolumeSource. +func (in *VsphereVirtualDiskVolumeSource) DeepCopy() *VsphereVirtualDiskVolumeSource { + if in == nil { return nil } + out := new(VsphereVirtualDiskVolumeSource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WeightedPodAffinityTerm) DeepCopyInto(out *WeightedPodAffinityTerm) { + *out = *in + in.PodAffinityTerm.DeepCopyInto(&out.PodAffinityTerm) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WeightedPodAffinityTerm. +func (in *WeightedPodAffinityTerm) DeepCopy() *WeightedPodAffinityTerm { + if in == nil { + return nil + } + out := new(WeightedPodAffinityTerm) + in.DeepCopyInto(out) + return out } diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.pb.go b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.pb.go index 8377cd33b..92c6189d3 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.pb.go @@ -79,6 +79,8 @@ limitations under the License. ContainerStatusRequest ContainerStatus ContainerStatusResponse + UpdateContainerResourcesRequest + UpdateContainerResourcesResponse ExecSyncRequest ExecSyncResponse ExecRequest @@ -480,6 +482,13 @@ type LinuxSandboxSecurityContext struct { // This allows a sandbox to take additional security precautions if no // privileged containers are expected to be run. Privileged bool `protobuf:"varint,6,opt,name=privileged,proto3" json:"privileged,omitempty"` + // Seccomp profile for the sandbox, candidate values are: + // * docker/default: the default profile for the docker container runtime + // * unconfined: unconfined profile, ie, no seccomp sandboxing + // * localhost/: the profile installed on the node. + // is the full path of the profile. + // Default: "", which is identical with unconfined. + SeccompProfilePath string `protobuf:"bytes,7,opt,name=seccomp_profile_path,json=seccompProfilePath,proto3" json:"seccomp_profile_path,omitempty"` } func (m *LinuxSandboxSecurityContext) Reset() { *m = LinuxSandboxSecurityContext{} } @@ -528,6 +537,13 @@ func (m *LinuxSandboxSecurityContext) GetPrivileged() bool { return false } +func (m *LinuxSandboxSecurityContext) GetSeccompProfilePath() string { + if m != nil { + return m.SeccompProfilePath + } + return "" +} + // LinuxPodSandboxConfig holds platform-specific configurations for Linux // host platforms and Linux-based containers. type LinuxPodSandboxConfig struct { @@ -655,32 +671,12 @@ type PodSandboxConfig struct { // // In general, in order to preserve a well-defined interface between the // kubelet and the container runtime, annotations SHOULD NOT influence - // runtime behaviour. For legacy reasons, there are some annotations which - // currently explicitly break this rule, listed below; in future versions - // of the interface these will be promoted to typed features. + // runtime behaviour. // // Annotations can also be useful for runtime authors to experiment with // new features that are opaque to the Kubernetes APIs (both user-facing // and the CRI). Whenever possible, however, runtime authors SHOULD // consider proposing new typed fields for any new features instead. - // - // 1. Seccomp - // - // key: security.alpha.kubernetes.io/seccomp/pod - // description: the seccomp profile for the containers of an entire pod. - // value: see below. - // - // key: security.alpha.kubernetes.io/seccomp/container/ - // description: the seccomp profile for the container (overrides pod). - // value: see below - // - // The value of seccomp is runtime agnostic: - // * runtime/default: the default profile for the container runtime - // * unconfined: unconfined profile, ie, no seccomp sandboxing - // * localhost/: the profile installed to the node's - // local seccomp profile root. Note that profile root is set in - // kubelet, and it is not passed in CRI yet, see https://issues.k8s.io/36997. - // Annotations map[string]string `protobuf:"bytes,7,rep,name=annotations" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Optional configurations specific to Linux hosts. Linux *LinuxPodSandboxConfig `protobuf:"bytes,8,opt,name=linux" json:"linux,omitempty"` @@ -1198,6 +1194,10 @@ type LinuxContainerResources struct { MemoryLimitInBytes int64 `protobuf:"varint,4,opt,name=memory_limit_in_bytes,json=memoryLimitInBytes,proto3" json:"memory_limit_in_bytes,omitempty"` // OOMScoreAdj adjusts the oom-killer score. Default: 0 (not specified). OomScoreAdj int64 `protobuf:"varint,5,opt,name=oom_score_adj,json=oomScoreAdj,proto3" json:"oom_score_adj,omitempty"` + // CpusetCpus constrains the allowed set of logical CPUs. Default: "" (not specified). + CpusetCpus string `protobuf:"bytes,6,opt,name=cpuset_cpus,json=cpusetCpus,proto3" json:"cpuset_cpus,omitempty"` + // CpusetMems constrains the allowed set of memory nodes. Default: "" (not specified). + CpusetMems string `protobuf:"bytes,7,opt,name=cpuset_mems,json=cpusetMems,proto3" json:"cpuset_mems,omitempty"` } func (m *LinuxContainerResources) Reset() { *m = LinuxContainerResources{} } @@ -1239,6 +1239,20 @@ func (m *LinuxContainerResources) GetOomScoreAdj() int64 { return 0 } +func (m *LinuxContainerResources) GetCpusetCpus() string { + if m != nil { + return m.CpusetCpus + } + return "" +} + +func (m *LinuxContainerResources) GetCpusetMems() string { + if m != nil { + return m.CpusetMems + } + return "" +} + // SELinuxOption are the labels to be applied to the container. type SELinuxOption struct { User string `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` @@ -1350,6 +1364,16 @@ type LinuxContainerSecurityContext struct { // (localhost) by name. The possible profile names are detailed at // http://wiki.apparmor.net/index.php/AppArmor_Core_Policy_Reference ApparmorProfile string `protobuf:"bytes,9,opt,name=apparmor_profile,json=apparmorProfile,proto3" json:"apparmor_profile,omitempty"` + // Seccomp profile for the container, candidate values are: + // * docker/default: the default profile for the docker container runtime + // * unconfined: unconfined profile, ie, no seccomp sandboxing + // * localhost/: the profile installed on the node. + // is the full path of the profile. + // Default: "", which is identical with unconfined. + SeccompProfilePath string `protobuf:"bytes,10,opt,name=seccomp_profile_path,json=seccompProfilePath,proto3" json:"seccomp_profile_path,omitempty"` + // no_new_privs defines if the flag for no_new_privs should be set on the + // container. + NoNewPrivs bool `protobuf:"varint,11,opt,name=no_new_privs,json=noNewPrivs,proto3" json:"no_new_privs,omitempty"` } func (m *LinuxContainerSecurityContext) Reset() { *m = LinuxContainerSecurityContext{} } @@ -1421,6 +1445,20 @@ func (m *LinuxContainerSecurityContext) GetApparmorProfile() string { return "" } +func (m *LinuxContainerSecurityContext) GetSeccompProfilePath() string { + if m != nil { + return m.SeccompProfilePath + } + return "" +} + +func (m *LinuxContainerSecurityContext) GetNoNewPrivs() bool { + if m != nil { + return m.NoNewPrivs + } + return false +} + // LinuxContainerConfig contains platform-specific configuration for // Linux-based containers. type LinuxContainerConfig struct { @@ -2189,6 +2227,42 @@ func (m *ContainerStatusResponse) GetStatus() *ContainerStatus { return nil } +type UpdateContainerResourcesRequest struct { + // ID of the container to update. + ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` + // Resource configuration specific to Linux containers. + Linux *LinuxContainerResources `protobuf:"bytes,2,opt,name=linux" json:"linux,omitempty"` +} + +func (m *UpdateContainerResourcesRequest) Reset() { *m = UpdateContainerResourcesRequest{} } +func (*UpdateContainerResourcesRequest) ProtoMessage() {} +func (*UpdateContainerResourcesRequest) Descriptor() ([]byte, []int) { + return fileDescriptorApi, []int{54} +} + +func (m *UpdateContainerResourcesRequest) GetContainerId() string { + if m != nil { + return m.ContainerId + } + return "" +} + +func (m *UpdateContainerResourcesRequest) GetLinux() *LinuxContainerResources { + if m != nil { + return m.Linux + } + return nil +} + +type UpdateContainerResourcesResponse struct { +} + +func (m *UpdateContainerResourcesResponse) Reset() { *m = UpdateContainerResourcesResponse{} } +func (*UpdateContainerResourcesResponse) ProtoMessage() {} +func (*UpdateContainerResourcesResponse) Descriptor() ([]byte, []int) { + return fileDescriptorApi, []int{55} +} + type ExecSyncRequest struct { // ID of the container. ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` @@ -2200,7 +2274,7 @@ type ExecSyncRequest struct { func (m *ExecSyncRequest) Reset() { *m = ExecSyncRequest{} } func (*ExecSyncRequest) ProtoMessage() {} -func (*ExecSyncRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{54} } +func (*ExecSyncRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{56} } func (m *ExecSyncRequest) GetContainerId() string { if m != nil { @@ -2234,7 +2308,7 @@ type ExecSyncResponse struct { func (m *ExecSyncResponse) Reset() { *m = ExecSyncResponse{} } func (*ExecSyncResponse) ProtoMessage() {} -func (*ExecSyncResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{55} } +func (*ExecSyncResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{57} } func (m *ExecSyncResponse) GetStdout() []byte { if m != nil { @@ -2270,7 +2344,7 @@ type ExecRequest struct { func (m *ExecRequest) Reset() { *m = ExecRequest{} } func (*ExecRequest) ProtoMessage() {} -func (*ExecRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{56} } +func (*ExecRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{58} } func (m *ExecRequest) GetContainerId() string { if m != nil { @@ -2307,7 +2381,7 @@ type ExecResponse struct { func (m *ExecResponse) Reset() { *m = ExecResponse{} } func (*ExecResponse) ProtoMessage() {} -func (*ExecResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{57} } +func (*ExecResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{59} } func (m *ExecResponse) GetUrl() string { if m != nil { @@ -2328,7 +2402,7 @@ type AttachRequest struct { func (m *AttachRequest) Reset() { *m = AttachRequest{} } func (*AttachRequest) ProtoMessage() {} -func (*AttachRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{58} } +func (*AttachRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{60} } func (m *AttachRequest) GetContainerId() string { if m != nil { @@ -2358,7 +2432,7 @@ type AttachResponse struct { func (m *AttachResponse) Reset() { *m = AttachResponse{} } func (*AttachResponse) ProtoMessage() {} -func (*AttachResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{59} } +func (*AttachResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{61} } func (m *AttachResponse) GetUrl() string { if m != nil { @@ -2376,7 +2450,7 @@ type PortForwardRequest struct { func (m *PortForwardRequest) Reset() { *m = PortForwardRequest{} } func (*PortForwardRequest) ProtoMessage() {} -func (*PortForwardRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{60} } +func (*PortForwardRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{62} } func (m *PortForwardRequest) GetPodSandboxId() string { if m != nil { @@ -2399,7 +2473,7 @@ type PortForwardResponse struct { func (m *PortForwardResponse) Reset() { *m = PortForwardResponse{} } func (*PortForwardResponse) ProtoMessage() {} -func (*PortForwardResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{61} } +func (*PortForwardResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{63} } func (m *PortForwardResponse) GetUrl() string { if m != nil { @@ -2415,7 +2489,7 @@ type ImageFilter struct { func (m *ImageFilter) Reset() { *m = ImageFilter{} } func (*ImageFilter) ProtoMessage() {} -func (*ImageFilter) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{62} } +func (*ImageFilter) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{64} } func (m *ImageFilter) GetImage() *ImageSpec { if m != nil { @@ -2431,7 +2505,7 @@ type ListImagesRequest struct { func (m *ListImagesRequest) Reset() { *m = ListImagesRequest{} } func (*ListImagesRequest) ProtoMessage() {} -func (*ListImagesRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{63} } +func (*ListImagesRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{65} } func (m *ListImagesRequest) GetFilter() *ImageFilter { if m != nil { @@ -2461,7 +2535,7 @@ type Image struct { func (m *Image) Reset() { *m = Image{} } func (*Image) ProtoMessage() {} -func (*Image) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{64} } +func (*Image) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{66} } func (m *Image) GetId() string { if m != nil { @@ -2512,7 +2586,7 @@ type ListImagesResponse struct { func (m *ListImagesResponse) Reset() { *m = ListImagesResponse{} } func (*ListImagesResponse) ProtoMessage() {} -func (*ListImagesResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{65} } +func (*ListImagesResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{67} } func (m *ListImagesResponse) GetImages() []*Image { if m != nil { @@ -2528,7 +2602,7 @@ type ImageStatusRequest struct { func (m *ImageStatusRequest) Reset() { *m = ImageStatusRequest{} } func (*ImageStatusRequest) ProtoMessage() {} -func (*ImageStatusRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{66} } +func (*ImageStatusRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{68} } func (m *ImageStatusRequest) GetImage() *ImageSpec { if m != nil { @@ -2544,7 +2618,7 @@ type ImageStatusResponse struct { func (m *ImageStatusResponse) Reset() { *m = ImageStatusResponse{} } func (*ImageStatusResponse) ProtoMessage() {} -func (*ImageStatusResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{67} } +func (*ImageStatusResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{69} } func (m *ImageStatusResponse) GetImage() *Image { if m != nil { @@ -2568,7 +2642,7 @@ type AuthConfig struct { func (m *AuthConfig) Reset() { *m = AuthConfig{} } func (*AuthConfig) ProtoMessage() {} -func (*AuthConfig) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{68} } +func (*AuthConfig) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{70} } func (m *AuthConfig) GetUsername() string { if m != nil { @@ -2623,7 +2697,7 @@ type PullImageRequest struct { func (m *PullImageRequest) Reset() { *m = PullImageRequest{} } func (*PullImageRequest) ProtoMessage() {} -func (*PullImageRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{69} } +func (*PullImageRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{71} } func (m *PullImageRequest) GetImage() *ImageSpec { if m != nil { @@ -2654,7 +2728,7 @@ type PullImageResponse struct { func (m *PullImageResponse) Reset() { *m = PullImageResponse{} } func (*PullImageResponse) ProtoMessage() {} -func (*PullImageResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{70} } +func (*PullImageResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{72} } func (m *PullImageResponse) GetImageRef() string { if m != nil { @@ -2670,7 +2744,7 @@ type RemoveImageRequest struct { func (m *RemoveImageRequest) Reset() { *m = RemoveImageRequest{} } func (*RemoveImageRequest) ProtoMessage() {} -func (*RemoveImageRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{71} } +func (*RemoveImageRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{73} } func (m *RemoveImageRequest) GetImage() *ImageSpec { if m != nil { @@ -2684,7 +2758,7 @@ type RemoveImageResponse struct { func (m *RemoveImageResponse) Reset() { *m = RemoveImageResponse{} } func (*RemoveImageResponse) ProtoMessage() {} -func (*RemoveImageResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{72} } +func (*RemoveImageResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{74} } type NetworkConfig struct { // CIDR to use for pod IP addresses. @@ -2693,7 +2767,7 @@ type NetworkConfig struct { func (m *NetworkConfig) Reset() { *m = NetworkConfig{} } func (*NetworkConfig) ProtoMessage() {} -func (*NetworkConfig) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{73} } +func (*NetworkConfig) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{75} } func (m *NetworkConfig) GetPodCidr() string { if m != nil { @@ -2708,7 +2782,7 @@ type RuntimeConfig struct { func (m *RuntimeConfig) Reset() { *m = RuntimeConfig{} } func (*RuntimeConfig) ProtoMessage() {} -func (*RuntimeConfig) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{74} } +func (*RuntimeConfig) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{76} } func (m *RuntimeConfig) GetNetworkConfig() *NetworkConfig { if m != nil { @@ -2723,7 +2797,7 @@ type UpdateRuntimeConfigRequest struct { func (m *UpdateRuntimeConfigRequest) Reset() { *m = UpdateRuntimeConfigRequest{} } func (*UpdateRuntimeConfigRequest) ProtoMessage() {} -func (*UpdateRuntimeConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{75} } +func (*UpdateRuntimeConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{77} } func (m *UpdateRuntimeConfigRequest) GetRuntimeConfig() *RuntimeConfig { if m != nil { @@ -2737,7 +2811,7 @@ type UpdateRuntimeConfigResponse struct { func (m *UpdateRuntimeConfigResponse) Reset() { *m = UpdateRuntimeConfigResponse{} } func (*UpdateRuntimeConfigResponse) ProtoMessage() {} -func (*UpdateRuntimeConfigResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{76} } +func (*UpdateRuntimeConfigResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{78} } // RuntimeCondition contains condition information for the runtime. // There are 2 kinds of runtime conditions: @@ -2765,7 +2839,7 @@ type RuntimeCondition struct { func (m *RuntimeCondition) Reset() { *m = RuntimeCondition{} } func (*RuntimeCondition) ProtoMessage() {} -func (*RuntimeCondition) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{77} } +func (*RuntimeCondition) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{79} } func (m *RuntimeCondition) GetType() string { if m != nil { @@ -2803,7 +2877,7 @@ type RuntimeStatus struct { func (m *RuntimeStatus) Reset() { *m = RuntimeStatus{} } func (*RuntimeStatus) ProtoMessage() {} -func (*RuntimeStatus) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{78} } +func (*RuntimeStatus) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{80} } func (m *RuntimeStatus) GetConditions() []*RuntimeCondition { if m != nil { @@ -2817,7 +2891,7 @@ type StatusRequest struct { func (m *StatusRequest) Reset() { *m = StatusRequest{} } func (*StatusRequest) ProtoMessage() {} -func (*StatusRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{79} } +func (*StatusRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{81} } type StatusResponse struct { // Status of the Runtime. @@ -2826,7 +2900,7 @@ type StatusResponse struct { func (m *StatusResponse) Reset() { *m = StatusResponse{} } func (*StatusResponse) ProtoMessage() {} -func (*StatusResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{80} } +func (*StatusResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{82} } func (m *StatusResponse) GetStatus() *RuntimeStatus { if m != nil { @@ -2840,7 +2914,7 @@ type ImageFsInfoRequest struct { func (m *ImageFsInfoRequest) Reset() { *m = ImageFsInfoRequest{} } func (*ImageFsInfoRequest) ProtoMessage() {} -func (*ImageFsInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{81} } +func (*ImageFsInfoRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{83} } // UInt64Value is the wrapper of uint64. type UInt64Value struct { @@ -2850,7 +2924,7 @@ type UInt64Value struct { func (m *UInt64Value) Reset() { *m = UInt64Value{} } func (*UInt64Value) ProtoMessage() {} -func (*UInt64Value) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{82} } +func (*UInt64Value) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{84} } func (m *UInt64Value) GetValue() uint64 { if m != nil { @@ -2867,7 +2941,7 @@ type StorageIdentifier struct { func (m *StorageIdentifier) Reset() { *m = StorageIdentifier{} } func (*StorageIdentifier) ProtoMessage() {} -func (*StorageIdentifier) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{83} } +func (*StorageIdentifier) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{85} } func (m *StorageIdentifier) GetUuid() string { if m != nil { @@ -2894,7 +2968,7 @@ type FilesystemUsage struct { func (m *FilesystemUsage) Reset() { *m = FilesystemUsage{} } func (*FilesystemUsage) ProtoMessage() {} -func (*FilesystemUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{84} } +func (*FilesystemUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{86} } func (m *FilesystemUsage) GetTimestamp() int64 { if m != nil { @@ -2931,7 +3005,7 @@ type ImageFsInfoResponse struct { func (m *ImageFsInfoResponse) Reset() { *m = ImageFsInfoResponse{} } func (*ImageFsInfoResponse) ProtoMessage() {} -func (*ImageFsInfoResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{85} } +func (*ImageFsInfoResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{87} } func (m *ImageFsInfoResponse) GetImageFilesystems() []*FilesystemUsage { if m != nil { @@ -2947,7 +3021,7 @@ type ContainerStatsRequest struct { func (m *ContainerStatsRequest) Reset() { *m = ContainerStatsRequest{} } func (*ContainerStatsRequest) ProtoMessage() {} -func (*ContainerStatsRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{86} } +func (*ContainerStatsRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{88} } func (m *ContainerStatsRequest) GetContainerId() string { if m != nil { @@ -2963,7 +3037,7 @@ type ContainerStatsResponse struct { func (m *ContainerStatsResponse) Reset() { *m = ContainerStatsResponse{} } func (*ContainerStatsResponse) ProtoMessage() {} -func (*ContainerStatsResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{87} } +func (*ContainerStatsResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{89} } func (m *ContainerStatsResponse) GetStats() *ContainerStats { if m != nil { @@ -2979,7 +3053,7 @@ type ListContainerStatsRequest struct { func (m *ListContainerStatsRequest) Reset() { *m = ListContainerStatsRequest{} } func (*ListContainerStatsRequest) ProtoMessage() {} -func (*ListContainerStatsRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{88} } +func (*ListContainerStatsRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{90} } func (m *ListContainerStatsRequest) GetFilter() *ContainerStatsFilter { if m != nil { @@ -3003,7 +3077,7 @@ type ContainerStatsFilter struct { func (m *ContainerStatsFilter) Reset() { *m = ContainerStatsFilter{} } func (*ContainerStatsFilter) ProtoMessage() {} -func (*ContainerStatsFilter) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{89} } +func (*ContainerStatsFilter) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{91} } func (m *ContainerStatsFilter) GetId() string { if m != nil { @@ -3033,7 +3107,7 @@ type ListContainerStatsResponse struct { func (m *ListContainerStatsResponse) Reset() { *m = ListContainerStatsResponse{} } func (*ListContainerStatsResponse) ProtoMessage() {} -func (*ListContainerStatsResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{90} } +func (*ListContainerStatsResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{92} } func (m *ListContainerStatsResponse) GetStats() []*ContainerStats { if m != nil { @@ -3059,7 +3133,7 @@ type ContainerAttributes struct { func (m *ContainerAttributes) Reset() { *m = ContainerAttributes{} } func (*ContainerAttributes) ProtoMessage() {} -func (*ContainerAttributes) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{91} } +func (*ContainerAttributes) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{93} } func (m *ContainerAttributes) GetId() string { if m != nil { @@ -3103,7 +3177,7 @@ type ContainerStats struct { func (m *ContainerStats) Reset() { *m = ContainerStats{} } func (*ContainerStats) ProtoMessage() {} -func (*ContainerStats) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{92} } +func (*ContainerStats) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{94} } func (m *ContainerStats) GetAttributes() *ContainerAttributes { if m != nil { @@ -3143,7 +3217,7 @@ type CpuUsage struct { func (m *CpuUsage) Reset() { *m = CpuUsage{} } func (*CpuUsage) ProtoMessage() {} -func (*CpuUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{93} } +func (*CpuUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{95} } func (m *CpuUsage) GetTimestamp() int64 { if m != nil { @@ -3169,7 +3243,7 @@ type MemoryUsage struct { func (m *MemoryUsage) Reset() { *m = MemoryUsage{} } func (*MemoryUsage) ProtoMessage() {} -func (*MemoryUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{94} } +func (*MemoryUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{96} } func (m *MemoryUsage) GetTimestamp() int64 { if m != nil { @@ -3240,6 +3314,8 @@ func init() { proto.RegisterType((*ContainerStatusRequest)(nil), "runtime.ContainerStatusRequest") proto.RegisterType((*ContainerStatus)(nil), "runtime.ContainerStatus") proto.RegisterType((*ContainerStatusResponse)(nil), "runtime.ContainerStatusResponse") + proto.RegisterType((*UpdateContainerResourcesRequest)(nil), "runtime.UpdateContainerResourcesRequest") + proto.RegisterType((*UpdateContainerResourcesResponse)(nil), "runtime.UpdateContainerResourcesResponse") proto.RegisterType((*ExecSyncRequest)(nil), "runtime.ExecSyncRequest") proto.RegisterType((*ExecSyncResponse)(nil), "runtime.ExecSyncResponse") proto.RegisterType((*ExecRequest)(nil), "runtime.ExecRequest") @@ -3341,6 +3417,8 @@ type RuntimeServiceClient interface { // ContainerStatus returns status of the container. If the container is not // present, returns an error. ContainerStatus(ctx context.Context, in *ContainerStatusRequest, opts ...grpc.CallOption) (*ContainerStatusResponse, error) + // UpdateContainerResources updates ContainerConfig of the container. + UpdateContainerResources(ctx context.Context, in *UpdateContainerResourcesRequest, opts ...grpc.CallOption) (*UpdateContainerResourcesResponse, error) // ExecSync runs a command in a container synchronously. ExecSync(ctx context.Context, in *ExecSyncRequest, opts ...grpc.CallOption) (*ExecSyncResponse, error) // Exec prepares a streaming endpoint to execute a command in the container. @@ -3476,6 +3554,15 @@ func (c *runtimeServiceClient) ContainerStatus(ctx context.Context, in *Containe return out, nil } +func (c *runtimeServiceClient) UpdateContainerResources(ctx context.Context, in *UpdateContainerResourcesRequest, opts ...grpc.CallOption) (*UpdateContainerResourcesResponse, error) { + out := new(UpdateContainerResourcesResponse) + err := grpc.Invoke(ctx, "/runtime.RuntimeService/UpdateContainerResources", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *runtimeServiceClient) ExecSync(ctx context.Context, in *ExecSyncRequest, opts ...grpc.CallOption) (*ExecSyncResponse, error) { out := new(ExecSyncResponse) err := grpc.Invoke(ctx, "/runtime.RuntimeService/ExecSync", in, out, c.cc, opts...) @@ -3595,6 +3682,8 @@ type RuntimeServiceServer interface { // ContainerStatus returns status of the container. If the container is not // present, returns an error. ContainerStatus(context.Context, *ContainerStatusRequest) (*ContainerStatusResponse, error) + // UpdateContainerResources updates ContainerConfig of the container. + UpdateContainerResources(context.Context, *UpdateContainerResourcesRequest) (*UpdateContainerResourcesResponse, error) // ExecSync runs a command in a container synchronously. ExecSync(context.Context, *ExecSyncRequest) (*ExecSyncResponse, error) // Exec prepares a streaming endpoint to execute a command in the container. @@ -3834,6 +3923,24 @@ func _RuntimeService_ContainerStatus_Handler(srv interface{}, ctx context.Contex return interceptor(ctx, in, info, handler) } +func _RuntimeService_UpdateContainerResources_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateContainerResourcesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(RuntimeServiceServer).UpdateContainerResources(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/runtime.RuntimeService/UpdateContainerResources", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(RuntimeServiceServer).UpdateContainerResources(ctx, req.(*UpdateContainerResourcesRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _RuntimeService_ExecSync_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ExecSyncRequest) if err := dec(in); err != nil { @@ -4030,6 +4137,10 @@ var _RuntimeService_serviceDesc = grpc.ServiceDesc{ MethodName: "ContainerStatus", Handler: _RuntimeService_ContainerStatus_Handler, }, + { + MethodName: "UpdateContainerResources", + Handler: _RuntimeService_UpdateContainerResources_Handler, + }, { MethodName: "ExecSync", Handler: _RuntimeService_ExecSync_Handler, @@ -4653,6 +4764,12 @@ func (m *LinuxSandboxSecurityContext) MarshalTo(dAtA []byte) (int, error) { } i++ } + if len(m.SeccompProfilePath) > 0 { + dAtA[i] = 0x3a + i++ + i = encodeVarintApi(dAtA, i, uint64(len(m.SeccompProfilePath))) + i += copy(dAtA[i:], m.SeccompProfilePath) + } return i, nil } @@ -5524,6 +5641,18 @@ func (m *LinuxContainerResources) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintApi(dAtA, i, uint64(m.OomScoreAdj)) } + if len(m.CpusetCpus) > 0 { + dAtA[i] = 0x32 + i++ + i = encodeVarintApi(dAtA, i, uint64(len(m.CpusetCpus))) + i += copy(dAtA[i:], m.CpusetCpus) + } + if len(m.CpusetMems) > 0 { + dAtA[i] = 0x3a + i++ + i = encodeVarintApi(dAtA, i, uint64(len(m.CpusetMems))) + i += copy(dAtA[i:], m.CpusetMems) + } return i, nil } @@ -5722,6 +5851,22 @@ func (m *LinuxContainerSecurityContext) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintApi(dAtA, i, uint64(len(m.ApparmorProfile))) i += copy(dAtA[i:], m.ApparmorProfile) } + if len(m.SeccompProfilePath) > 0 { + dAtA[i] = 0x52 + i++ + i = encodeVarintApi(dAtA, i, uint64(len(m.SeccompProfilePath))) + i += copy(dAtA[i:], m.SeccompProfilePath) + } + if m.NoNewPrivs { + dAtA[i] = 0x58 + i++ + if m.NoNewPrivs { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i++ + } return i, nil } @@ -6646,6 +6791,58 @@ func (m *ContainerStatusResponse) MarshalTo(dAtA []byte) (int, error) { return i, nil } +func (m *UpdateContainerResourcesRequest) 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 *UpdateContainerResourcesRequest) 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(len(m.ContainerId))) + i += copy(dAtA[i:], m.ContainerId) + } + if m.Linux != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Linux.Size())) + n40, err := m.Linux.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n40 + } + return i, nil +} + +func (m *UpdateContainerResourcesResponse) 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 *UpdateContainerResourcesResponse) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + return i, nil +} + func (m *ExecSyncRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -6898,22 +7095,22 @@ func (m *PortForwardRequest) MarshalTo(dAtA []byte) (int, error) { i += copy(dAtA[i:], m.PodSandboxId) } if len(m.Port) > 0 { - dAtA41 := make([]byte, len(m.Port)*10) - var j40 int + dAtA42 := make([]byte, len(m.Port)*10) + var j41 int for _, num1 := range m.Port { num := uint64(num1) for num >= 1<<7 { - dAtA41[j40] = uint8(uint64(num)&0x7f | 0x80) + dAtA42[j41] = uint8(uint64(num)&0x7f | 0x80) num >>= 7 - j40++ + j41++ } - dAtA41[j40] = uint8(num) - j40++ + dAtA42[j41] = uint8(num) + j41++ } dAtA[i] = 0x12 i++ - i = encodeVarintApi(dAtA, i, uint64(j40)) - i += copy(dAtA[i:], dAtA41[:j40]) + i = encodeVarintApi(dAtA, i, uint64(j41)) + i += copy(dAtA[i:], dAtA42[:j41]) } return i, nil } @@ -6961,11 +7158,11 @@ func (m *ImageFilter) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Image.Size())) - n42, err := m.Image.MarshalTo(dAtA[i:]) + n43, err := m.Image.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n42 + i += n43 } return i, nil } @@ -6989,11 +7186,11 @@ func (m *ListImagesRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Filter.Size())) - n43, err := m.Filter.MarshalTo(dAtA[i:]) + n44, err := m.Filter.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n43 + i += n44 } return i, nil } @@ -7058,11 +7255,11 @@ func (m *Image) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x2a i++ i = encodeVarintApi(dAtA, i, uint64(m.Uid.Size())) - n44, err := m.Uid.MarshalTo(dAtA[i:]) + n45, err := m.Uid.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n44 + i += n45 } if len(m.Username) > 0 { dAtA[i] = 0x32 @@ -7122,11 +7319,11 @@ func (m *ImageStatusRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Image.Size())) - n45, err := m.Image.MarshalTo(dAtA[i:]) + n46, err := m.Image.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n45 + i += n46 } return i, nil } @@ -7150,11 +7347,11 @@ func (m *ImageStatusResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Image.Size())) - n46, err := m.Image.MarshalTo(dAtA[i:]) + n47, err := m.Image.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n46 + i += n47 } return i, nil } @@ -7232,32 +7429,32 @@ func (m *PullImageRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Image.Size())) - n47, err := m.Image.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n47 - } - if m.Auth != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintApi(dAtA, i, uint64(m.Auth.Size())) - n48, err := m.Auth.MarshalTo(dAtA[i:]) + n48, err := m.Image.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n48 } - if m.SandboxConfig != nil { - dAtA[i] = 0x1a + if m.Auth != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintApi(dAtA, i, uint64(m.SandboxConfig.Size())) - n49, err := m.SandboxConfig.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(m.Auth.Size())) + n49, err := m.Auth.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n49 } + if m.SandboxConfig != nil { + dAtA[i] = 0x1a + i++ + i = encodeVarintApi(dAtA, i, uint64(m.SandboxConfig.Size())) + n50, err := m.SandboxConfig.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n50 + } return i, nil } @@ -7304,11 +7501,11 @@ func (m *RemoveImageRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Image.Size())) - n50, err := m.Image.MarshalTo(dAtA[i:]) + n51, err := m.Image.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n50 + i += n51 } return i, nil } @@ -7374,11 +7571,11 @@ func (m *RuntimeConfig) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.NetworkConfig.Size())) - n51, err := m.NetworkConfig.MarshalTo(dAtA[i:]) + n52, err := m.NetworkConfig.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n51 + i += n52 } return i, nil } @@ -7402,11 +7599,11 @@ func (m *UpdateRuntimeConfigRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.RuntimeConfig.Size())) - n52, err := m.RuntimeConfig.MarshalTo(dAtA[i:]) + n53, err := m.RuntimeConfig.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n52 + i += n53 } return i, nil } @@ -7542,11 +7739,11 @@ func (m *StatusResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Status.Size())) - n53, err := m.Status.MarshalTo(dAtA[i:]) + n54, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n53 + i += n54 } return i, nil } @@ -7640,32 +7837,32 @@ func (m *FilesystemUsage) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 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.UsedBytes != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintApi(dAtA, i, uint64(m.UsedBytes.Size())) - n55, err := m.UsedBytes.MarshalTo(dAtA[i:]) + n55, err := m.StorageId.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n55 } - if m.InodesUsed != nil { - dAtA[i] = 0x22 + if m.UsedBytes != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintApi(dAtA, i, uint64(m.InodesUsed.Size())) - n56, err := m.InodesUsed.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(m.UsedBytes.Size())) + n56, err := m.UsedBytes.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n56 } + if m.InodesUsed != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.InodesUsed.Size())) + n57, err := m.InodesUsed.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n57 + } return i, nil } @@ -7742,11 +7939,11 @@ func (m *ContainerStatsResponse) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Stats.Size())) - n57, err := m.Stats.MarshalTo(dAtA[i:]) + n58, err := m.Stats.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n57 + i += n58 } return i, nil } @@ -7770,11 +7967,11 @@ func (m *ListContainerStatsRequest) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintApi(dAtA, i, uint64(m.Filter.Size())) - n58, err := m.Filter.MarshalTo(dAtA[i:]) + n59, err := m.Filter.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n58 + i += n59 } return i, nil } @@ -7881,11 +8078,11 @@ func (m *ContainerAttributes) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintApi(dAtA, i, uint64(m.Metadata.Size())) - n59, err := m.Metadata.MarshalTo(dAtA[i:]) + n60, err := m.Metadata.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n59 + i += n60 } if len(m.Labels) > 0 { for k := range m.Labels { @@ -7943,42 +8140,42 @@ func (m *ContainerStats) MarshalTo(dAtA []byte) (int, error) { 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:]) + n61, err := m.Attributes.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n61 } - if m.Memory != nil { - dAtA[i] = 0x1a + if m.Cpu != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintApi(dAtA, i, uint64(m.Memory.Size())) - n62, err := m.Memory.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(m.Cpu.Size())) + n62, err := m.Cpu.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n62 } - if m.WritableLayer != nil { - dAtA[i] = 0x22 + if m.Memory != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintApi(dAtA, i, uint64(m.WritableLayer.Size())) - n63, err := m.WritableLayer.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(m.Memory.Size())) + n63, err := m.Memory.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n63 } + if m.WritableLayer != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.WritableLayer.Size())) + n64, err := m.WritableLayer.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n64 + } return i, nil } @@ -8006,11 +8203,11 @@ func (m *CpuUsage) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintApi(dAtA, i, uint64(m.UsageCoreNanoSeconds.Size())) - n64, err := m.UsageCoreNanoSeconds.MarshalTo(dAtA[i:]) + n65, err := m.UsageCoreNanoSeconds.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n64 + i += n65 } return i, nil } @@ -8039,11 +8236,11 @@ func (m *MemoryUsage) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintApi(dAtA, i, uint64(m.WorkingSetBytes.Size())) - n65, err := m.WorkingSetBytes.MarshalTo(dAtA[i:]) + n66, err := m.WorkingSetBytes.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n65 + i += n66 } return i, nil } @@ -8222,6 +8419,10 @@ func (m *LinuxSandboxSecurityContext) Size() (n int) { if m.Privileged { n += 2 } + l = len(m.SeccompProfilePath) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } return n } @@ -8593,6 +8794,14 @@ func (m *LinuxContainerResources) Size() (n int) { if m.OomScoreAdj != 0 { n += 1 + sovApi(uint64(m.OomScoreAdj)) } + l = len(m.CpusetCpus) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.CpusetMems) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } return n } @@ -8676,6 +8885,13 @@ func (m *LinuxContainerSecurityContext) Size() (n int) { if l > 0 { n += 1 + l + sovApi(uint64(l)) } + l = len(m.SeccompProfilePath) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } + if m.NoNewPrivs { + n += 2 + } return n } @@ -9080,6 +9296,26 @@ func (m *ContainerStatusResponse) Size() (n int) { return n } +func (m *UpdateContainerResourcesRequest) Size() (n int) { + var l int + _ = l + l = len(m.ContainerId) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } + if m.Linux != nil { + l = m.Linux.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *UpdateContainerResourcesResponse) Size() (n int) { + var l int + _ = l + return n +} + func (m *ExecSyncRequest) Size() (n int) { var l int _ = l @@ -9752,6 +9988,7 @@ func (this *LinuxSandboxSecurityContext) String() string { `ReadonlyRootfs:` + fmt.Sprintf("%v", this.ReadonlyRootfs) + `,`, `SupplementalGroups:` + fmt.Sprintf("%v", this.SupplementalGroups) + `,`, `Privileged:` + fmt.Sprintf("%v", this.Privileged) + `,`, + `SeccompProfilePath:` + fmt.Sprintf("%v", this.SeccompProfilePath) + `,`, `}`, }, "") return s @@ -10091,6 +10328,8 @@ func (this *LinuxContainerResources) String() string { `CpuShares:` + fmt.Sprintf("%v", this.CpuShares) + `,`, `MemoryLimitInBytes:` + fmt.Sprintf("%v", this.MemoryLimitInBytes) + `,`, `OomScoreAdj:` + fmt.Sprintf("%v", this.OomScoreAdj) + `,`, + `CpusetCpus:` + fmt.Sprintf("%v", this.CpusetCpus) + `,`, + `CpusetMems:` + fmt.Sprintf("%v", this.CpusetMems) + `,`, `}`, }, "") return s @@ -10133,6 +10372,8 @@ func (this *LinuxContainerSecurityContext) String() string { `ReadonlyRootfs:` + fmt.Sprintf("%v", this.ReadonlyRootfs) + `,`, `SupplementalGroups:` + fmt.Sprintf("%v", this.SupplementalGroups) + `,`, `ApparmorProfile:` + fmt.Sprintf("%v", this.ApparmorProfile) + `,`, + `SeccompProfilePath:` + fmt.Sprintf("%v", this.SeccompProfilePath) + `,`, + `NoNewPrivs:` + fmt.Sprintf("%v", this.NoNewPrivs) + `,`, `}`, }, "") return s @@ -10450,6 +10691,26 @@ func (this *ContainerStatusResponse) String() string { }, "") return s } +func (this *UpdateContainerResourcesRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UpdateContainerResourcesRequest{`, + `ContainerId:` + fmt.Sprintf("%v", this.ContainerId) + `,`, + `Linux:` + strings.Replace(fmt.Sprintf("%v", this.Linux), "LinuxContainerResources", "LinuxContainerResources", 1) + `,`, + `}`, + }, "") + return s +} +func (this *UpdateContainerResourcesResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&UpdateContainerResourcesResponse{`, + `}`, + }, "") + return s +} func (this *ExecSyncRequest) String() string { if this == nil { return "nil" @@ -12007,6 +12268,35 @@ func (m *LinuxSandboxSecurityContext) Unmarshal(dAtA []byte) error { } } m.Privileged = bool(v != 0) + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SeccompProfilePath", 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.SeccompProfilePath = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipApi(dAtA[iNdEx:]) @@ -15311,6 +15601,64 @@ func (m *LinuxContainerResources) Unmarshal(dAtA []byte) error { break } } + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CpusetCpus", 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.CpusetCpus = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CpusetMems", 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.CpusetMems = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipApi(dAtA[iNdEx:]) @@ -15927,6 +16275,55 @@ func (m *LinuxContainerSecurityContext) Unmarshal(dAtA []byte) error { } m.ApparmorProfile = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SeccompProfilePath", 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.SeccompProfilePath = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 11: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NoNewPrivs", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.NoNewPrivs = bool(v != 0) default: iNdEx = preIndex skippy, err := skipApi(dAtA[iNdEx:]) @@ -19323,6 +19720,168 @@ func (m *ContainerStatusResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *UpdateContainerResourcesRequest) 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: UpdateContainerResourcesRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UpdateContainerResourcesRequest: 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 + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Linux", 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.Linux == nil { + m.Linux = &LinuxContainerResources{} + } + if err := m.Linux.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 *UpdateContainerResourcesResponse) 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: UpdateContainerResourcesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UpdateContainerResourcesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + 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 *ExecSyncRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -23943,259 +24502,267 @@ var ( func init() { proto.RegisterFile("api.proto", fileDescriptorApi) } var fileDescriptorApi = []byte{ - // 4051 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x3b, 0x4d, 0x73, 0x1b, 0x47, - 0x76, 0x04, 0xc0, 0x0f, 0xe0, 0x81, 0x00, 0xc1, 0x16, 0x45, 0x42, 0x90, 0x44, 0xd3, 0x23, 0xcb, - 0x96, 0xb4, 0x2b, 0x59, 0xa6, 0xd7, 0x76, 0x2c, 0x7f, 0x09, 0x26, 0x29, 0x17, 0x2d, 0x89, 0xe4, - 0x0e, 0x44, 0xef, 0x6e, 0x36, 0x55, 0x93, 0x21, 0xa6, 0x09, 0x8e, 0x0d, 0x4c, 0xcf, 0xce, 0xf4, - 0xc8, 0x62, 0x4e, 0xc9, 0x2d, 0x47, 0xe7, 0x98, 0x5b, 0x0e, 0xa9, 0xda, 0xca, 0x25, 0x87, 0x9c, - 0xf2, 0x0b, 0x52, 0x5b, 0x95, 0x4a, 0x55, 0x0e, 0xa9, 0x54, 0x72, 0xdb, 0x55, 0x0e, 0x39, 0xa4, - 0x2a, 0xbf, 0x61, 0xab, 0xbf, 0x66, 0x7a, 0xbe, 0x20, 0x52, 0x76, 0xed, 0xea, 0x36, 0xfd, 0xfa, - 0xbd, 0xd7, 0xaf, 0xfb, 0xbd, 0x7e, 0xfd, 0xde, 0xeb, 0x1e, 0x68, 0xd8, 0xbe, 0x7b, 0xc7, 0x0f, - 0x08, 0x25, 0x68, 0x21, 0x88, 0x3c, 0xea, 0x4e, 0x70, 0xef, 0xf6, 0xc8, 0xa5, 0x27, 0xd1, 0xd1, - 0x9d, 0x21, 0x99, 0xbc, 0x3d, 0x22, 0x23, 0xf2, 0x36, 0xef, 0x3f, 0x8a, 0x8e, 0x79, 0x8b, 0x37, - 0xf8, 0x97, 0xa0, 0x33, 0x6e, 0x41, 0xfb, 0x2b, 0x1c, 0x84, 0x2e, 0xf1, 0x4c, 0xfc, 0xab, 0x08, - 0x87, 0x14, 0x75, 0x61, 0xe1, 0xa9, 0x80, 0x74, 0x2b, 0x1b, 0x95, 0x1b, 0x0d, 0x53, 0x35, 0x8d, - 0x5f, 0x57, 0x60, 0x29, 0x46, 0x0e, 0x7d, 0xe2, 0x85, 0xb8, 0x1c, 0x1b, 0xbd, 0x0e, 0x8b, 0x52, - 0x26, 0xcb, 0xb3, 0x27, 0xb8, 0x5b, 0xe5, 0xdd, 0x4d, 0x09, 0xdb, 0xb3, 0x27, 0x18, 0xbd, 0x05, - 0x4b, 0x0a, 0x45, 0x31, 0xa9, 0x71, 0xac, 0xb6, 0x04, 0xcb, 0xd1, 0xd0, 0x1d, 0xb8, 0xa0, 0x10, - 0x6d, 0xdf, 0x8d, 0x91, 0x67, 0x39, 0xf2, 0xb2, 0xec, 0xea, 0xfb, 0xae, 0xc4, 0x37, 0x7e, 0x09, - 0x8d, 0xed, 0xbd, 0xc1, 0x16, 0xf1, 0x8e, 0xdd, 0x11, 0x13, 0x31, 0xc4, 0x01, 0xa3, 0xe9, 0x56, - 0x36, 0x6a, 0x4c, 0x44, 0xd9, 0x44, 0x3d, 0xa8, 0x87, 0xd8, 0x0e, 0x86, 0x27, 0x38, 0xec, 0x56, - 0x79, 0x57, 0xdc, 0x66, 0x54, 0xc4, 0xa7, 0x2e, 0xf1, 0xc2, 0x6e, 0x4d, 0x50, 0xc9, 0xa6, 0xf1, - 0xb7, 0x15, 0x68, 0x1e, 0x90, 0x80, 0x3e, 0xb6, 0x7d, 0xdf, 0xf5, 0x46, 0xe8, 0x36, 0xd4, 0xf9, - 0x5a, 0x0e, 0xc9, 0x98, 0xaf, 0x41, 0x7b, 0x73, 0xf9, 0x8e, 0x14, 0xe9, 0xce, 0x81, 0xec, 0x30, - 0x63, 0x14, 0x74, 0x1d, 0xda, 0x43, 0xe2, 0x51, 0xdb, 0xf5, 0x70, 0x60, 0xf9, 0x24, 0xa0, 0x7c, - 0x65, 0xe6, 0xcc, 0x56, 0x0c, 0x65, 0xcc, 0xd1, 0x65, 0x68, 0x9c, 0x90, 0x90, 0x0a, 0x8c, 0x1a, - 0xc7, 0xa8, 0x33, 0x00, 0xef, 0x5c, 0x83, 0x05, 0xde, 0xe9, 0xfa, 0x72, 0x0d, 0xe6, 0x59, 0x73, - 0xd7, 0x37, 0xbe, 0xab, 0xc0, 0xdc, 0x63, 0x12, 0x79, 0x34, 0x33, 0x8c, 0x4d, 0x4f, 0xa4, 0x7e, - 0xb4, 0x61, 0x6c, 0x7a, 0x92, 0x0c, 0xc3, 0x30, 0x84, 0x8a, 0xc4, 0x30, 0xac, 0xb3, 0x07, 0xf5, - 0x00, 0xdb, 0x0e, 0xf1, 0xc6, 0xa7, 0x5c, 0x84, 0xba, 0x19, 0xb7, 0x99, 0xee, 0x42, 0x3c, 0x76, - 0xbd, 0xe8, 0x99, 0x15, 0xe0, 0xb1, 0x7d, 0x84, 0xc7, 0x5c, 0x94, 0xba, 0xd9, 0x96, 0x60, 0x53, - 0x40, 0x8d, 0xaf, 0x61, 0x89, 0x29, 0x3b, 0xf4, 0xed, 0x21, 0xde, 0xe7, 0x4b, 0xc8, 0x4c, 0x83, - 0x0f, 0xea, 0x61, 0xfa, 0x2d, 0x09, 0xbe, 0xe1, 0x92, 0xd5, 0xcd, 0x26, 0x83, 0xed, 0x09, 0x10, - 0xba, 0x04, 0x75, 0x21, 0x97, 0xeb, 0x70, 0xb1, 0xea, 0x26, 0x9f, 0xf1, 0x81, 0xeb, 0xc4, 0x5d, - 0xae, 0x3f, 0x94, 0x52, 0x2d, 0x88, 0xd9, 0x0f, 0x0d, 0x03, 0x60, 0xd7, 0xa3, 0xef, 0xff, 0xe4, - 0x2b, 0x7b, 0x1c, 0x61, 0xb4, 0x02, 0x73, 0x4f, 0xd9, 0x07, 0xe7, 0x5f, 0x33, 0x45, 0xc3, 0xf8, - 0x8f, 0x2a, 0x5c, 0x7e, 0xc4, 0x04, 0x1c, 0xd8, 0x9e, 0x73, 0x44, 0x9e, 0x0d, 0xf0, 0x30, 0x0a, - 0x5c, 0x7a, 0xba, 0x45, 0x3c, 0x8a, 0x9f, 0x51, 0xb4, 0x03, 0xcb, 0x9e, 0x92, 0xd7, 0x52, 0x26, - 0xc0, 0x38, 0x34, 0x37, 0xbb, 0xb1, 0x5e, 0x33, 0x33, 0x32, 0x3b, 0x5e, 0x1a, 0x10, 0xa2, 0xcf, - 0x92, 0xf5, 0x51, 0x4c, 0xaa, 0x9c, 0xc9, 0x6a, 0xcc, 0x64, 0xb0, 0xc3, 0xe5, 0x90, 0x2c, 0xd4, - 0xba, 0x29, 0x06, 0xef, 0x02, 0xdb, 0x2b, 0x96, 0x1d, 0x5a, 0x51, 0x88, 0x03, 0x3e, 0xd3, 0xe6, - 0xe6, 0x85, 0x98, 0x38, 0x99, 0xa7, 0xd9, 0x08, 0x22, 0xaf, 0x1f, 0x1e, 0x86, 0x38, 0xe0, 0x3b, - 0x4a, 0x6a, 0xc8, 0x0a, 0x08, 0xa1, 0xc7, 0xa1, 0xd2, 0x8a, 0x02, 0x9b, 0x1c, 0x8a, 0xde, 0x86, - 0x0b, 0x61, 0xe4, 0xfb, 0x63, 0x3c, 0xc1, 0x1e, 0xb5, 0xc7, 0xd6, 0x28, 0x20, 0x91, 0x1f, 0x76, - 0xe7, 0x36, 0x6a, 0x37, 0x6a, 0x26, 0xd2, 0xbb, 0xbe, 0xe0, 0x3d, 0x68, 0x1d, 0xc0, 0x0f, 0xdc, - 0xa7, 0xee, 0x18, 0x8f, 0xb0, 0xd3, 0x9d, 0xe7, 0x4c, 0x35, 0x88, 0xf1, 0x5d, 0x15, 0x2e, 0xf2, - 0xe9, 0x1c, 0x10, 0x47, 0xae, 0xac, 0xdc, 0x7f, 0xd7, 0xa0, 0x35, 0xe4, 0xec, 0x2d, 0xdf, 0x0e, - 0xb0, 0x47, 0xa5, 0x21, 0x2e, 0x0a, 0xe0, 0x01, 0x87, 0xa1, 0x7d, 0xe8, 0x84, 0x52, 0x11, 0xd6, - 0x50, 0x68, 0x42, 0xae, 0xd7, 0x1b, 0xf1, 0x94, 0xa7, 0x68, 0xcd, 0x5c, 0x0a, 0x73, 0x6a, 0x5c, - 0x08, 0x4f, 0xc3, 0x21, 0x1d, 0x8b, 0xfd, 0xdb, 0xdc, 0xfc, 0x51, 0x9a, 0x4f, 0x56, 0xcc, 0x3b, - 0x03, 0x81, 0xbd, 0xe3, 0xd1, 0xe0, 0xd4, 0x54, 0xb4, 0xbd, 0x7b, 0xb0, 0xa8, 0x77, 0xa0, 0x0e, - 0xd4, 0xbe, 0xc1, 0xa7, 0x72, 0x0a, 0xec, 0x33, 0xb1, 0x32, 0xb1, 0x7b, 0x44, 0xe3, 0x5e, 0xf5, - 0x4f, 0x2a, 0x46, 0x00, 0x28, 0x19, 0xe5, 0x31, 0xa6, 0xb6, 0x63, 0x53, 0x1b, 0x21, 0x98, 0xe5, - 0xfe, 0x50, 0xb0, 0xe0, 0xdf, 0x8c, 0x6b, 0x24, 0x0d, 0xbd, 0x61, 0xb2, 0x4f, 0x74, 0x05, 0x1a, - 0xb1, 0x49, 0x49, 0xa7, 0x98, 0x00, 0x98, 0x73, 0xb2, 0x29, 0xc5, 0x13, 0x9f, 0x72, 0xf5, 0xb6, - 0x4c, 0xd5, 0x34, 0xfe, 0x79, 0x16, 0x3a, 0x39, 0x0d, 0x7c, 0x00, 0xf5, 0x89, 0x1c, 0x5e, 0x5a, - 0xf2, 0xe5, 0xc4, 0x43, 0xe5, 0x24, 0x34, 0x63, 0x64, 0xe6, 0x00, 0xd8, 0xd6, 0xd2, 0xfc, 0x77, - 0xdc, 0x66, 0x6a, 0x1d, 0x93, 0x91, 0xe5, 0xb8, 0x01, 0x1e, 0x52, 0x12, 0x9c, 0x4a, 0x29, 0x17, - 0xc7, 0x64, 0xb4, 0xad, 0x60, 0xe8, 0x1d, 0x00, 0xc7, 0x0b, 0x99, 0x46, 0x8f, 0xdd, 0x11, 0x97, - 0xb5, 0xb9, 0x89, 0xe2, 0xb1, 0x63, 0x1f, 0x6d, 0x36, 0x1c, 0x2f, 0x94, 0xc2, 0x7e, 0x08, 0x2d, - 0xe6, 0xf3, 0xac, 0x89, 0x70, 0xaf, 0xc2, 0x26, 0x9b, 0x9b, 0x2b, 0x9a, 0xc4, 0xb1, 0xef, 0x35, - 0x17, 0xfd, 0xa4, 0x11, 0xa2, 0x4f, 0x60, 0x9e, 0xfb, 0x9c, 0xb0, 0x3b, 0xcf, 0x69, 0xae, 0x17, - 0xcc, 0x52, 0x6a, 0xfb, 0x11, 0xc7, 0x13, 0xca, 0x96, 0x44, 0xe8, 0x11, 0x34, 0x6d, 0xcf, 0x23, - 0xd4, 0x16, 0xdb, 0x75, 0x81, 0xf3, 0xb8, 0x55, 0xce, 0xa3, 0x9f, 0x20, 0x0b, 0x46, 0x3a, 0x39, - 0xfa, 0x09, 0xcc, 0xf1, 0xfd, 0xdc, 0xad, 0xf3, 0x59, 0xaf, 0x4f, 0x37, 0x3f, 0x53, 0x20, 0xf7, - 0x3e, 0x84, 0xa6, 0x26, 0xda, 0x79, 0xcc, 0xad, 0xf7, 0x29, 0x74, 0xb2, 0x12, 0x9d, 0xcb, 0x5c, - 0x77, 0x61, 0xc5, 0x8c, 0xbc, 0x44, 0x30, 0x15, 0x10, 0xbc, 0x03, 0xf3, 0x52, 0x7f, 0xc2, 0x76, - 0x2e, 0x95, 0xae, 0x88, 0x29, 0x11, 0x8d, 0x4f, 0xe0, 0x62, 0x86, 0x95, 0x0c, 0x17, 0xde, 0x80, - 0xb6, 0x4f, 0x1c, 0x2b, 0x14, 0x60, 0xcb, 0x75, 0x94, 0x33, 0xf0, 0x63, 0xdc, 0x5d, 0x87, 0x91, - 0x0f, 0x28, 0xf1, 0xf3, 0xa2, 0x9c, 0x8d, 0xbc, 0x0b, 0xab, 0x59, 0x72, 0x31, 0xbc, 0xf1, 0x19, - 0xac, 0x99, 0x78, 0x42, 0x9e, 0xe2, 0x97, 0x65, 0xdd, 0x83, 0x6e, 0x9e, 0x41, 0xc2, 0x3c, 0x81, - 0x0e, 0xa8, 0x4d, 0xa3, 0xf0, 0x7c, 0xcc, 0x6f, 0xea, 0x0c, 0xe4, 0x41, 0x28, 0xf8, 0xa0, 0x36, - 0x54, 0x5d, 0x5f, 0x12, 0x55, 0x5d, 0xdf, 0xf8, 0x0c, 0x1a, 0xf1, 0x11, 0x84, 0x36, 0x93, 0x50, - 0xa5, 0xfa, 0x82, 0x73, 0x2a, 0x0e, 0x62, 0x1e, 0xe6, 0xbc, 0xb5, 0x1c, 0x69, 0x13, 0x20, 0xf6, - 0x33, 0xea, 0xdc, 0x43, 0x79, 0x7e, 0xa6, 0x86, 0x65, 0xfc, 0x7d, 0xca, 0xe9, 0x68, 0x22, 0x3b, - 0xb1, 0xc8, 0x4e, 0xca, 0x09, 0x55, 0xcf, 0xe3, 0x84, 0xee, 0xc0, 0x5c, 0x48, 0x6d, 0x2a, 0xdc, - 0x60, 0x5b, 0x9b, 0x5c, 0x7a, 0x48, 0x6c, 0x0a, 0x34, 0x74, 0x15, 0x60, 0x18, 0x60, 0x9b, 0x62, - 0xc7, 0xb2, 0x85, 0x7f, 0xac, 0x99, 0x0d, 0x09, 0xe9, 0x53, 0x74, 0x0f, 0x16, 0x54, 0xdc, 0x31, - 0xc7, 0xc5, 0xd8, 0x28, 0x60, 0x98, 0x5a, 0x7d, 0x53, 0x11, 0x24, 0x7b, 0x7a, 0x7e, 0xfa, 0x9e, - 0x96, 0x74, 0x02, 0x59, 0x73, 0x4b, 0x0b, 0xa5, 0x6e, 0x49, 0x50, 0x9c, 0xc5, 0x2d, 0xd5, 0x4b, - 0xdd, 0x92, 0xe4, 0x31, 0xd5, 0x2d, 0xfd, 0x31, 0x1d, 0xcc, 0x63, 0xe8, 0xe6, 0x37, 0x88, 0x74, - 0x0c, 0xef, 0xc0, 0x7c, 0xc8, 0x21, 0x53, 0x9c, 0x8c, 0x24, 0x91, 0x88, 0xc6, 0x03, 0x58, 0xc9, - 0x58, 0x80, 0x08, 0xfb, 0x62, 0x7b, 0xa9, 0x9c, 0xc9, 0x5e, 0x8c, 0xff, 0xaf, 0xe8, 0xd6, 0xfb, - 0xc0, 0x1d, 0x53, 0x1c, 0xe4, 0xac, 0xf7, 0x5d, 0xc5, 0x54, 0x98, 0xee, 0xd5, 0x32, 0xa6, 0x22, - 0x22, 0x93, 0x96, 0x38, 0x80, 0x36, 0xd7, 0xa1, 0x15, 0xe2, 0x31, 0x3f, 0x10, 0x65, 0x28, 0xf2, - 0xe3, 0x02, 0x6a, 0x31, 0xae, 0x30, 0x80, 0x81, 0x44, 0x17, 0xea, 0x6b, 0x8d, 0x75, 0x58, 0xef, - 0x3e, 0xa0, 0x3c, 0xd2, 0xb9, 0xf4, 0xf0, 0x25, 0xdb, 0xfb, 0x2c, 0x93, 0x28, 0xf0, 0xf4, 0xc7, - 0x5c, 0x8c, 0x29, 0x4a, 0x10, 0x72, 0x9a, 0x12, 0xd1, 0xf8, 0xbb, 0x1a, 0x40, 0xd2, 0xf9, 0xca, - 0x6e, 0xfa, 0x0f, 0xe2, 0x2d, 0x28, 0xa2, 0x89, 0xd7, 0x0a, 0xf8, 0x15, 0x6e, 0xbe, 0x07, 0xe9, - 0xcd, 0x27, 0xe2, 0x8a, 0x37, 0x8a, 0xa8, 0x5f, 0xd9, 0x6d, 0xb7, 0x05, 0xab, 0x59, 0x75, 0xcb, - 0x4d, 0x77, 0x13, 0xe6, 0x5c, 0x8a, 0x27, 0x22, 0x2f, 0xd6, 0x93, 0x0b, 0x0d, 0x57, 0x60, 0x18, - 0xaf, 0x43, 0x63, 0x77, 0x62, 0x8f, 0xf0, 0xc0, 0xc7, 0x43, 0x36, 0x96, 0xcb, 0x1a, 0x72, 0x7c, - 0xd1, 0x30, 0x36, 0xa1, 0xfe, 0x10, 0x9f, 0x8a, 0x3d, 0x78, 0x46, 0xf9, 0x8c, 0x7f, 0xad, 0xc0, - 0x1a, 0xf7, 0x9d, 0x5b, 0x2a, 0x2b, 0x35, 0x71, 0x48, 0xa2, 0x60, 0x88, 0x43, 0xae, 0x52, 0x3f, - 0xb2, 0x7c, 0x1c, 0xb8, 0xc4, 0x91, 0x39, 0x5c, 0x63, 0xe8, 0x47, 0x07, 0x1c, 0xc0, 0x32, 0x57, - 0xd6, 0xfd, 0xab, 0x88, 0x48, 0xdb, 0xaa, 0x99, 0xf5, 0xa1, 0x1f, 0xfd, 0x94, 0xb5, 0x15, 0x6d, - 0x78, 0x62, 0x07, 0x38, 0xe4, 0x36, 0x24, 0x68, 0x07, 0x1c, 0x80, 0xde, 0x81, 0x8b, 0x13, 0x3c, - 0x21, 0xc1, 0xa9, 0x35, 0x76, 0x27, 0x2e, 0xb5, 0x5c, 0xcf, 0x3a, 0x3a, 0xa5, 0x38, 0x94, 0x86, - 0x83, 0x44, 0xe7, 0x23, 0xd6, 0xb7, 0xeb, 0x7d, 0xce, 0x7a, 0x90, 0x01, 0x2d, 0x42, 0x26, 0x56, - 0x38, 0x24, 0x01, 0xb6, 0x6c, 0xe7, 0x6b, 0x7e, 0x78, 0xd4, 0xcc, 0x26, 0x21, 0x93, 0x01, 0x83, - 0xf5, 0x9d, 0xaf, 0x0d, 0x1b, 0x5a, 0xa9, 0x9c, 0x8e, 0xc5, 0xfa, 0x3c, 0x79, 0x93, 0xb1, 0x3e, - 0xfb, 0x66, 0xb0, 0x80, 0x8c, 0xd5, 0x3a, 0xf0, 0x6f, 0x06, 0xa3, 0xa7, 0xbe, 0x0a, 0xf4, 0xf9, - 0x37, 0x5b, 0xb0, 0x31, 0x7e, 0x2a, 0xd3, 0xea, 0x86, 0x29, 0x1a, 0x86, 0x03, 0xb0, 0x65, 0xfb, - 0xf6, 0x91, 0x3b, 0x76, 0xe9, 0x29, 0xba, 0x09, 0x1d, 0xdb, 0x71, 0xac, 0xa1, 0x82, 0xb8, 0x58, - 0xd5, 0x38, 0x96, 0x6c, 0xc7, 0xd9, 0xd2, 0xc0, 0xe8, 0x47, 0xb0, 0xec, 0x04, 0xc4, 0x4f, 0xe3, - 0x8a, 0xa2, 0x47, 0x87, 0x75, 0xe8, 0xc8, 0xc6, 0xf3, 0x1a, 0x5c, 0x4d, 0xab, 0x25, 0x9b, 0x25, - 0x7f, 0x00, 0x8b, 0x99, 0x51, 0xd3, 0xe9, 0x69, 0x22, 0xa4, 0x99, 0x42, 0xcc, 0xe4, 0x91, 0xd5, - 0x6c, 0x1e, 0x59, 0x9c, 0x7e, 0xd7, 0x7e, 0x88, 0xf4, 0x7b, 0xf6, 0xfb, 0xa4, 0xdf, 0x73, 0x67, - 0x4a, 0xbf, 0xdf, 0xe4, 0x05, 0x2d, 0x45, 0xc4, 0xd3, 0xa6, 0x79, 0x51, 0x75, 0x89, 0x71, 0x3c, - 0x55, 0xf8, 0xca, 0xa4, 0xe9, 0x0b, 0xe7, 0x49, 0xd3, 0xeb, 0xa5, 0x69, 0x3a, 0xb3, 0x08, 0xdf, - 0xb7, 0x83, 0x09, 0x09, 0x2c, 0x3f, 0x20, 0xc7, 0xee, 0x18, 0x77, 0x1b, 0x5c, 0x84, 0x25, 0x05, - 0x3f, 0x10, 0x60, 0xe3, 0x1f, 0x2a, 0xb0, 0x92, 0x56, 0xb2, 0xcc, 0xc0, 0x3e, 0x85, 0x46, 0xa0, - 0x76, 0xa1, 0x54, 0xec, 0x46, 0x3a, 0xd2, 0xc9, 0xef, 0x56, 0x33, 0x21, 0x41, 0x3f, 0x2d, 0xcd, - 0xe5, 0xdf, 0x2c, 0x61, 0xf3, 0xa2, 0x6c, 0xde, 0xe8, 0xc3, 0x72, 0x8c, 0x3c, 0x35, 0x93, 0xd6, - 0x32, 0xe3, 0x6a, 0x3a, 0x33, 0xf6, 0x60, 0x7e, 0x1b, 0x3f, 0x75, 0x87, 0xf8, 0x07, 0x29, 0x8d, - 0x6d, 0x40, 0xd3, 0xc7, 0xc1, 0xc4, 0x0d, 0xc3, 0xd8, 0x40, 0x1b, 0xa6, 0x0e, 0x32, 0xfe, 0x7b, - 0x0e, 0x96, 0xb2, 0x2b, 0xfb, 0x7e, 0x2e, 0x11, 0xef, 0x25, 0x3b, 0x26, 0x3b, 0x3f, 0xed, 0x34, - 0xbc, 0xa1, 0x1c, 0x6e, 0x35, 0x13, 0x8f, 0xc7, 0x3e, 0x59, 0x3a, 0x61, 0x36, 0xff, 0x21, 0x99, - 0x4c, 0x6c, 0xcf, 0x51, 0x65, 0x4b, 0xd9, 0x64, 0xab, 0x65, 0x07, 0x23, 0xb6, 0x0d, 0x18, 0x98, - 0x7f, 0xa3, 0xd7, 0xa0, 0xc9, 0xe2, 0x5a, 0xd7, 0xe3, 0x79, 0x3c, 0x37, 0xf2, 0x86, 0x09, 0x12, - 0xb4, 0xed, 0x06, 0xe8, 0x3a, 0xcc, 0x62, 0xef, 0xa9, 0x3a, 0xf7, 0x92, 0xba, 0xa6, 0x72, 0xf4, - 0x26, 0xef, 0x46, 0x6f, 0xc2, 0xfc, 0x84, 0x44, 0x1e, 0x55, 0x11, 0x6e, 0x3b, 0x46, 0xe4, 0xc5, - 0x48, 0x53, 0xf6, 0xa2, 0x9b, 0xb0, 0xe0, 0x70, 0x1d, 0xa8, 0x30, 0x76, 0x29, 0xa9, 0x05, 0x70, - 0xb8, 0xa9, 0xfa, 0xd1, 0xc7, 0xf1, 0x89, 0xdd, 0xc8, 0x9c, 0xb9, 0x99, 0x45, 0x2d, 0x3c, 0xb6, - 0x1f, 0xa6, 0x8f, 0x6d, 0xe0, 0x2c, 0x6e, 0x96, 0xb2, 0x98, 0x9e, 0xc9, 0x5f, 0x82, 0xfa, 0x98, - 0x8c, 0x84, 0x1d, 0x34, 0x45, 0x91, 0x7b, 0x4c, 0x46, 0xdc, 0x0c, 0x56, 0x58, 0x98, 0xe2, 0xb8, - 0x5e, 0x77, 0x91, 0x6f, 0x5f, 0xd1, 0x60, 0xa7, 0x0f, 0xff, 0xb0, 0x88, 0x37, 0xc4, 0xdd, 0x16, - 0xef, 0x6a, 0x70, 0xc8, 0xbe, 0x37, 0xe4, 0x87, 0x23, 0xa5, 0xa7, 0xdd, 0x36, 0x87, 0xb3, 0x4f, - 0x16, 0x5d, 0x8a, 0xbc, 0x62, 0x29, 0x13, 0x5d, 0x16, 0xed, 0xcf, 0x57, 0xa0, 0x54, 0xf0, 0x4f, - 0x15, 0x58, 0xdd, 0xe2, 0xc1, 0x95, 0xe6, 0x09, 0xce, 0x91, 0xea, 0xa2, 0xbb, 0x71, 0x4d, 0x21, - 0x9b, 0xb1, 0x66, 0x27, 0x2b, 0xf1, 0xd0, 0x7d, 0x68, 0x2b, 0x9e, 0x92, 0xb2, 0xf6, 0xa2, 0x6a, - 0x44, 0x2b, 0xd4, 0x9b, 0xc6, 0xc7, 0xb0, 0x96, 0x93, 0x59, 0x06, 0x42, 0xaf, 0xc3, 0x62, 0xe2, - 0x11, 0x62, 0x91, 0x9b, 0x31, 0x6c, 0xd7, 0x31, 0xee, 0xc1, 0xc5, 0x01, 0xb5, 0x03, 0x9a, 0x9b, - 0xf0, 0x19, 0x68, 0x79, 0x41, 0x22, 0x4d, 0x2b, 0x6b, 0x06, 0x03, 0x58, 0x19, 0x50, 0xe2, 0xbf, - 0x04, 0x53, 0xb6, 0xd3, 0xd9, 0xb4, 0x49, 0x44, 0x65, 0xf4, 0xa3, 0x9a, 0xc6, 0x9a, 0x28, 0x9f, - 0xe4, 0x47, 0xfb, 0x08, 0x56, 0x45, 0xf5, 0xe2, 0x65, 0x26, 0x71, 0x49, 0xd5, 0x4e, 0xf2, 0x7c, - 0xb7, 0xe1, 0x42, 0xe2, 0xca, 0x93, 0x44, 0xec, 0x76, 0x3a, 0x11, 0x5b, 0xcb, 0xeb, 0x38, 0x95, - 0x87, 0xfd, 0x4d, 0x55, 0x73, 0x98, 0x25, 0x69, 0xd8, 0x66, 0x3a, 0x0d, 0xbb, 0x52, 0xc2, 0x32, - 0x95, 0x85, 0xe5, 0x2d, 0xb2, 0x56, 0x60, 0x91, 0x66, 0x2e, 0x57, 0x9b, 0xcd, 0x94, 0x8d, 0x33, - 0xb2, 0xfd, 0x41, 0x52, 0xb5, 0x5d, 0x91, 0xaa, 0xc5, 0x43, 0xc7, 0x15, 0xa5, 0xbb, 0x99, 0x54, - 0xad, 0x5b, 0x26, 0x66, 0x9c, 0xa9, 0xfd, 0xf5, 0x2c, 0x34, 0xe2, 0xbe, 0xdc, 0xc2, 0xe6, 0x17, - 0xa9, 0x5a, 0xb0, 0x48, 0xfa, 0xf9, 0x55, 0x7b, 0x99, 0xf3, 0x6b, 0xf6, 0x45, 0xe7, 0xd7, 0x65, - 0x68, 0xf0, 0x0f, 0x2b, 0xc0, 0xc7, 0xf2, 0x3c, 0xaa, 0x73, 0x80, 0x89, 0x8f, 0x13, 0x83, 0x9a, - 0x3f, 0x8b, 0x41, 0x65, 0x72, 0xc2, 0x85, 0x6c, 0x4e, 0xf8, 0x7e, 0x7c, 0xc2, 0x88, 0xb3, 0x68, - 0x3d, 0xcf, 0xae, 0xf0, 0x6c, 0xd9, 0x49, 0x9f, 0x2d, 0xe2, 0x78, 0xba, 0x56, 0x40, 0xfc, 0xca, - 0x66, 0x84, 0x8f, 0x44, 0x46, 0xa8, 0x5b, 0x95, 0x74, 0x84, 0x9b, 0x00, 0xf1, 0x9e, 0x57, 0x69, - 0x21, 0xca, 0x4f, 0xcd, 0xd4, 0xb0, 0x98, 0x57, 0x49, 0xad, 0x7f, 0x52, 0xf6, 0x3c, 0x83, 0x57, - 0xf9, 0x17, 0x3d, 0x4a, 0x2a, 0xa9, 0x1c, 0xbe, 0x9f, 0x2b, 0x22, 0x9c, 0xcd, 0xea, 0x6e, 0xa7, - 0x6b, 0x08, 0xe7, 0x33, 0x97, 0x5c, 0x09, 0x81, 0x1f, 0xea, 0x76, 0x20, 0xbb, 0x45, 0xf6, 0xd7, - 0x90, 0x90, 0x3e, 0x65, 0xa1, 0xd4, 0xb1, 0xeb, 0xb9, 0xe1, 0x89, 0xe8, 0x9f, 0xe7, 0xfd, 0xa0, - 0x40, 0x7d, 0x7e, 0xa1, 0x8b, 0x9f, 0xb9, 0xd4, 0x1a, 0x12, 0x07, 0x73, 0x63, 0x9c, 0x33, 0xeb, - 0x0c, 0xb0, 0x45, 0x1c, 0x9c, 0x6c, 0x90, 0xfa, 0xb9, 0x36, 0x48, 0x23, 0xb3, 0x41, 0x56, 0x61, - 0x3e, 0xc0, 0x76, 0x48, 0xbc, 0x2e, 0x88, 0x6b, 0x61, 0xd1, 0x62, 0x67, 0xc5, 0x04, 0x87, 0x21, - 0x1b, 0x40, 0x06, 0x30, 0xb2, 0xa9, 0x85, 0x59, 0x8b, 0x65, 0x61, 0xd6, 0x94, 0xd2, 0x64, 0x26, - 0xcc, 0x6a, 0x95, 0x85, 0x59, 0x67, 0xa9, 0x4c, 0x6a, 0x41, 0x64, 0x7b, 0x6a, 0x10, 0xa9, 0x87, - 0x63, 0x4b, 0xa9, 0x70, 0xec, 0x8f, 0xb9, 0xa7, 0x1e, 0xc2, 0x5a, 0x6e, 0x17, 0xc8, 0x4d, 0x75, - 0x37, 0x53, 0xdb, 0xec, 0x96, 0x2d, 0x50, 0x5c, 0xda, 0xfc, 0x73, 0x58, 0xda, 0x79, 0x86, 0x87, - 0x83, 0x53, 0x6f, 0x78, 0x8e, 0x88, 0xa0, 0x03, 0xb5, 0xe1, 0xc4, 0x91, 0x49, 0x3d, 0xfb, 0xd4, - 0x63, 0x84, 0x5a, 0x3a, 0x46, 0xb0, 0xa0, 0x93, 0x8c, 0x20, 0xe5, 0x5c, 0x65, 0x72, 0x3a, 0x0c, - 0x99, 0x31, 0x5f, 0x34, 0x65, 0x4b, 0xc2, 0x71, 0x10, 0xf0, 0x59, 0x0b, 0x38, 0x0e, 0x82, 0xb4, - 0x45, 0xd7, 0xd2, 0x16, 0x6d, 0x7c, 0x0d, 0x4d, 0x36, 0xc0, 0xf7, 0x12, 0x5f, 0x06, 0xca, 0xb5, - 0x24, 0x50, 0x8e, 0xe3, 0xed, 0x59, 0x2d, 0xde, 0x36, 0x36, 0x60, 0x51, 0x8c, 0x25, 0x27, 0xd2, - 0x81, 0x5a, 0x14, 0x8c, 0x95, 0xde, 0xa2, 0x60, 0x6c, 0xfc, 0x29, 0xb4, 0xfa, 0x94, 0xda, 0xc3, - 0x93, 0x73, 0xc8, 0x13, 0x8f, 0x55, 0xd5, 0x63, 0xfb, 0x9c, 0x4c, 0x86, 0x01, 0x6d, 0xc5, 0xbb, - 0x74, 0xfc, 0x3d, 0x40, 0x07, 0x24, 0xa0, 0x0f, 0x48, 0xf0, 0xad, 0x1d, 0x38, 0xe7, 0x8b, 0x95, - 0x11, 0xcc, 0xca, 0x67, 0x22, 0xb5, 0x1b, 0x73, 0x26, 0xff, 0x36, 0xde, 0x82, 0x0b, 0x29, 0x7e, - 0xa5, 0x03, 0x7f, 0x00, 0x4d, 0xee, 0x42, 0x64, 0x3c, 0x75, 0x43, 0xaf, 0xdc, 0x4d, 0xf3, 0x33, - 0x2c, 0xe3, 0x66, 0x67, 0x04, 0x87, 0xc7, 0x0e, 0xfd, 0xc7, 0x99, 0xa8, 0x63, 0x25, 0x4d, 0x9f, - 0x89, 0x38, 0xfe, 0xb1, 0x02, 0x73, 0x1c, 0x9e, 0xf3, 0xe8, 0x97, 0xa1, 0x11, 0x60, 0x9f, 0x58, - 0xd4, 0x1e, 0xc5, 0x2f, 0x6f, 0x18, 0xe0, 0x89, 0x3d, 0x0a, 0xf9, 0xc3, 0x21, 0xd6, 0xe9, 0xb8, - 0x23, 0x1c, 0x52, 0xf5, 0xfc, 0xa6, 0xc9, 0x60, 0xdb, 0x02, 0xc4, 0x96, 0x24, 0x74, 0xff, 0x42, - 0x84, 0x13, 0xb3, 0x26, 0xff, 0x46, 0xd7, 0xc5, 0x1d, 0xfa, 0x94, 0x42, 0x0d, 0xbf, 0x58, 0xef, - 0x41, 0x3d, 0x53, 0x9b, 0x89, 0xdb, 0xc6, 0xc7, 0x80, 0xf4, 0x39, 0xcb, 0x45, 0x7d, 0x13, 0xe6, - 0xf9, 0x92, 0xa8, 0xf3, 0xb0, 0x9d, 0x9e, 0xb4, 0x29, 0x7b, 0x8d, 0x4f, 0x01, 0x89, 0x55, 0x4c, - 0x9d, 0x81, 0x67, 0x5f, 0xf1, 0x8f, 0xe0, 0x42, 0x8a, 0x3e, 0xbe, 0x32, 0x4d, 0x31, 0xc8, 0x8e, - 0x2e, 0x89, 0xff, 0xad, 0x02, 0xd0, 0x8f, 0xe8, 0x89, 0x2c, 0x34, 0xe8, 0xb3, 0xac, 0xa4, 0x67, - 0xc9, 0xfa, 0x7c, 0x3b, 0x0c, 0xbf, 0x25, 0x81, 0x0a, 0xf2, 0xe2, 0x36, 0x2f, 0x12, 0x44, 0xf4, - 0x44, 0x15, 0x22, 0xd9, 0x37, 0xba, 0x0e, 0x6d, 0xf1, 0x60, 0xca, 0xb2, 0x1d, 0x27, 0xc0, 0x61, - 0x28, 0x2b, 0x92, 0x2d, 0x01, 0xed, 0x0b, 0x20, 0x43, 0x73, 0x1d, 0xec, 0x51, 0x97, 0x9e, 0x5a, - 0x94, 0x7c, 0x83, 0x3d, 0x19, 0xbe, 0xb5, 0x14, 0xf4, 0x09, 0x03, 0x32, 0xb4, 0x00, 0x8f, 0xdc, - 0x90, 0x06, 0x0a, 0x4d, 0x55, 0xc8, 0x24, 0x94, 0xa3, 0x19, 0xbf, 0xae, 0x40, 0xe7, 0x20, 0x1a, - 0x8f, 0xc5, 0x24, 0xcf, 0xbb, 0x96, 0xe8, 0x2d, 0x39, 0x8f, 0x6a, 0xc6, 0x1a, 0x92, 0x25, 0x92, - 0x93, 0xfb, 0xfe, 0x69, 0xe5, 0x5d, 0x58, 0xd6, 0x04, 0x95, 0x4a, 0x4b, 0x9d, 0xd2, 0x95, 0xf4, - 0x29, 0xcd, 0x0c, 0x45, 0x64, 0x52, 0x2f, 0x37, 0x39, 0xe3, 0x22, 0x5c, 0x48, 0xd1, 0xcb, 0x2c, - 0xec, 0x16, 0xb4, 0xe4, 0xb5, 0xa5, 0x34, 0x82, 0x4b, 0x50, 0x67, 0xee, 0x65, 0xe8, 0x3a, 0xaa, - 0x02, 0xbd, 0xe0, 0x13, 0x67, 0xcb, 0x75, 0x02, 0x63, 0x0f, 0x5a, 0xa6, 0x60, 0x2f, 0x71, 0x3f, - 0x81, 0xb6, 0xbc, 0xe4, 0xb4, 0x52, 0x97, 0xfd, 0x49, 0xb9, 0x34, 0xc5, 0xdb, 0x6c, 0x79, 0x7a, - 0xd3, 0xf8, 0x25, 0xf4, 0x0e, 0x7d, 0x87, 0x05, 0x53, 0x3a, 0x57, 0x35, 0xb5, 0x4f, 0x40, 0x3d, - 0xe8, 0x2b, 0x63, 0x9e, 0x26, 0x6b, 0x05, 0x7a, 0xd3, 0xb8, 0x0a, 0x97, 0x0b, 0x99, 0xcb, 0x79, - 0xfb, 0xd0, 0x49, 0x3a, 0x1c, 0x57, 0x15, 0xde, 0x79, 0x41, 0xbd, 0xa2, 0x15, 0xd4, 0x57, 0xe3, - 0x63, 0x58, 0x38, 0x74, 0xd9, 0xd2, 0x82, 0xa6, 0x5a, 0x59, 0xd0, 0x34, 0x9b, 0x0a, 0x9a, 0x8c, - 0x2f, 0xe3, 0xd5, 0x93, 0x11, 0xeb, 0x87, 0x3c, 0x6c, 0x16, 0x63, 0x2b, 0x37, 0x71, 0xa9, 0x60, - 0x72, 0x02, 0xc3, 0xd4, 0x90, 0x8d, 0x25, 0x68, 0xa5, 0x1c, 0x86, 0x71, 0x1f, 0xda, 0x19, 0x0f, - 0x70, 0x27, 0x13, 0x3f, 0xe4, 0x96, 0x2d, 0x13, 0x3d, 0xac, 0x48, 0x47, 0xf4, 0x20, 0xdc, 0xf5, - 0x8e, 0x89, 0xe2, 0x7b, 0x0d, 0x9a, 0x87, 0x65, 0x8f, 0xe3, 0x66, 0xd5, 0x7d, 0xcc, 0x5b, 0xb0, - 0x3c, 0xa0, 0x24, 0xb0, 0x47, 0x78, 0x97, 0xef, 0xda, 0x63, 0x57, 0xdc, 0x58, 0x44, 0x51, 0xec, - 0xbf, 0xf9, 0xb7, 0xf1, 0x9f, 0x15, 0x58, 0x7a, 0xe0, 0x8e, 0x71, 0x78, 0x1a, 0x52, 0x3c, 0x39, - 0xe4, 0xb1, 0xe4, 0x15, 0x68, 0x30, 0x69, 0x42, 0x6a, 0x4f, 0x7c, 0x75, 0x5f, 0x13, 0x03, 0xd8, - 0x1a, 0x85, 0x82, 0xb5, 0xca, 0x2e, 0xf5, 0x38, 0x3e, 0x37, 0x2a, 0x8b, 0xad, 0x25, 0x08, 0xbd, - 0x0b, 0x10, 0x85, 0xd8, 0x91, 0x77, 0x34, 0xb5, 0xcc, 0xd1, 0x73, 0xa8, 0xd7, 0xe2, 0x19, 0x9e, - 0xb8, 0xb0, 0x79, 0x0f, 0x9a, 0xae, 0x47, 0x1c, 0xcc, 0x6b, 0xf1, 0x8e, 0xcc, 0x3c, 0x8b, 0xa9, - 0x40, 0x20, 0x1e, 0x86, 0xd8, 0x31, 0xfe, 0x4c, 0x7a, 0x61, 0xb5, 0x78, 0x52, 0x07, 0x3b, 0xb0, - 0x2c, 0x36, 0xf4, 0x71, 0x3c, 0x69, 0xa5, 0xe8, 0x24, 0x9c, 0xcb, 0x2c, 0x88, 0xd9, 0x71, 0xe5, - 0xa9, 0xa8, 0x28, 0x8c, 0x7b, 0x70, 0x31, 0x15, 0xf3, 0x9d, 0x27, 0x55, 0xfa, 0x22, 0x93, 0x67, - 0x25, 0x06, 0x22, 0x13, 0x1d, 0x65, 0x1f, 0x25, 0x89, 0x4e, 0x28, 0x12, 0x9d, 0xd0, 0x30, 0xe1, - 0x52, 0x2a, 0xfd, 0x4b, 0x09, 0xf2, 0x5e, 0xe6, 0x88, 0xbf, 0x5a, 0xc2, 0x2c, 0x73, 0xd6, 0xff, - 0x6f, 0x05, 0x56, 0x8a, 0x10, 0x5e, 0xb2, 0xd0, 0xf0, 0xb3, 0x92, 0x9b, 0xf3, 0xbb, 0x53, 0xa5, - 0xf9, 0x83, 0x94, 0x64, 0x1e, 0x42, 0xaf, 0x68, 0xf5, 0xf2, 0xaa, 0xa8, 0x9d, 0x41, 0x15, 0xff, - 0x57, 0xd5, 0x4a, 0x67, 0x7d, 0x4a, 0x03, 0xf7, 0x28, 0x62, 0xc6, 0xfb, 0x43, 0xa5, 0xc0, 0xf7, - 0xe3, 0xf4, 0x4e, 0xac, 0xdf, 0x8d, 0x3c, 0x55, 0x32, 0x6a, 0x61, 0x8a, 0xb7, 0x9f, 0x4e, 0xf1, - 0x44, 0x51, 0xec, 0xf6, 0x54, 0x36, 0xaf, 0x6c, 0xdd, 0xe3, 0x79, 0x05, 0xda, 0x69, 0x3d, 0xa0, - 0x8f, 0x01, 0xec, 0x58, 0x72, 0x69, 0xf2, 0x57, 0xa6, 0xcd, 0xce, 0xd4, 0xf0, 0xd1, 0x35, 0xa8, - 0x0d, 0xfd, 0x48, 0x6a, 0x24, 0xb9, 0x1d, 0xd9, 0xf2, 0x23, 0xe1, 0x00, 0x58, 0x2f, 0x0b, 0x9a, - 0xc5, 0x7d, 0x72, 0xce, 0x73, 0x3d, 0xe6, 0x60, 0x81, 0x2a, 0x71, 0xd0, 0x67, 0xd0, 0xfe, 0x36, - 0x70, 0xa9, 0x7d, 0x34, 0xc6, 0xd6, 0xd8, 0x3e, 0xc5, 0x81, 0xf4, 0x5c, 0xe5, 0x5e, 0xa6, 0xa5, - 0xf0, 0x1f, 0x31, 0x74, 0x23, 0x82, 0xba, 0x1a, 0xff, 0x05, 0x1e, 0xf9, 0x21, 0xac, 0x45, 0x0c, - 0xcd, 0xe2, 0x77, 0xda, 0x9e, 0xed, 0x11, 0x2b, 0xc4, 0xec, 0x68, 0x52, 0xef, 0xc8, 0x8a, 0xbd, - 0xe5, 0x0a, 0x27, 0xda, 0x22, 0x01, 0xde, 0xb3, 0x3d, 0x32, 0x10, 0x14, 0xc6, 0x04, 0x9a, 0xda, - 0x74, 0x5e, 0x30, 0xf2, 0x7d, 0x58, 0x56, 0xf7, 0x4e, 0x21, 0xa6, 0xd2, 0xaf, 0x4f, 0x1b, 0x73, - 0x49, 0xa2, 0x0f, 0x30, 0xe5, 0xde, 0xfd, 0xd6, 0x15, 0xa8, 0xab, 0xb7, 0xf5, 0x68, 0x01, 0x6a, - 0x4f, 0xb6, 0x0e, 0x3a, 0x33, 0xec, 0xe3, 0x70, 0xfb, 0xa0, 0x53, 0xb9, 0x75, 0x0f, 0x96, 0x32, - 0xef, 0x44, 0xd0, 0x32, 0xb4, 0x06, 0xfd, 0xbd, 0xed, 0xcf, 0xf7, 0x7f, 0x6e, 0x99, 0x3b, 0xfd, - 0xed, 0x5f, 0x74, 0x66, 0xd0, 0x0a, 0x74, 0x14, 0x68, 0x6f, 0xff, 0x89, 0x80, 0x56, 0x6e, 0x7d, - 0x93, 0xb1, 0x11, 0x8c, 0x2e, 0xc2, 0xf2, 0xd6, 0xfe, 0xde, 0x93, 0xfe, 0xee, 0xde, 0x8e, 0x69, - 0x6d, 0x99, 0x3b, 0xfd, 0x27, 0x3b, 0xdb, 0x9d, 0x99, 0x34, 0xd8, 0x3c, 0xdc, 0xdb, 0xdb, 0xdd, - 0xfb, 0xa2, 0x53, 0x61, 0x5c, 0x13, 0xf0, 0xce, 0xcf, 0x77, 0x19, 0x72, 0x35, 0x8d, 0x7c, 0xb8, - 0xf7, 0x70, 0x6f, 0xff, 0x67, 0x7b, 0x9d, 0xda, 0xe6, 0x6f, 0x17, 0xa1, 0xad, 0x0e, 0x71, 0x1c, - 0xf0, 0xdb, 0xc9, 0x4f, 0x61, 0x41, 0xfd, 0xf6, 0x90, 0x78, 0x8f, 0xf4, 0x3f, 0x1a, 0xbd, 0x6e, - 0xbe, 0x43, 0x06, 0x43, 0x33, 0xe8, 0x80, 0x07, 0x27, 0xda, 0x9b, 0x9c, 0xab, 0x7a, 0xb8, 0x90, - 0x7b, 0xf4, 0xd3, 0x5b, 0x2f, 0xeb, 0x8e, 0x39, 0x0e, 0x58, 0x44, 0xa2, 0xbf, 0xa7, 0x44, 0xeb, - 0xfa, 0xb9, 0x9d, 0x7f, 0xa7, 0xd9, 0x7b, 0xad, 0xb4, 0x3f, 0x66, 0xfa, 0x0b, 0xe8, 0x64, 0x5f, - 0x52, 0xa2, 0xe4, 0x96, 0xb9, 0xe4, 0x95, 0x66, 0xef, 0xf5, 0x29, 0x18, 0x3a, 0xeb, 0xdc, 0x6b, - 0xc4, 0x8d, 0xf2, 0xf7, 0x64, 0x39, 0xd6, 0x65, 0x8f, 0xd4, 0xc4, 0x52, 0xa4, 0xdf, 0xd2, 0x20, - 0xfd, 0x0d, 0x60, 0xc1, 0x9b, 0x2a, 0x6d, 0x29, 0x8a, 0x1f, 0xe1, 0x18, 0x33, 0xe8, 0x2b, 0x58, - 0xca, 0x5c, 0x4c, 0xa1, 0x84, 0xaa, 0xf8, 0x9a, 0xad, 0xb7, 0x51, 0x8e, 0x90, 0xd6, 0x9b, 0x7e, - 0xed, 0x94, 0xd2, 0x5b, 0xc1, 0x5d, 0x56, 0x4a, 0x6f, 0x85, 0xf7, 0x55, 0xdc, 0xbc, 0x52, 0x97, - 0x4b, 0x9a, 0x79, 0x15, 0xdd, 0x64, 0xf5, 0xd6, 0xcb, 0xba, 0xf5, 0xe9, 0x67, 0x2e, 0x96, 0xb4, - 0xe9, 0x17, 0xdf, 0x57, 0xf5, 0x36, 0xca, 0x11, 0xb2, 0xba, 0x4a, 0xaa, 0xdc, 0x19, 0x5d, 0xe5, - 0x2e, 0x55, 0x32, 0xba, 0xca, 0x97, 0xc7, 0xa5, 0xae, 0x32, 0xe5, 0xea, 0xd7, 0x4a, 0xcb, 0x79, - 0x79, 0x5d, 0x15, 0x57, 0x08, 0x8d, 0x19, 0xd4, 0x87, 0xba, 0xaa, 0xc7, 0xa1, 0x64, 0x77, 0x67, - 0x8a, 0x80, 0xbd, 0x4b, 0x05, 0x3d, 0x31, 0x8b, 0xf7, 0x60, 0x96, 0x41, 0xd1, 0x4a, 0x0a, 0x49, - 0x91, 0x5e, 0xcc, 0x40, 0x63, 0xb2, 0x8f, 0x60, 0x5e, 0x94, 0xaf, 0x50, 0x92, 0x57, 0xa4, 0x6a, - 0x65, 0xbd, 0xb5, 0x1c, 0x3c, 0x26, 0xfe, 0x52, 0xfc, 0x0a, 0x25, 0xeb, 0x50, 0xe8, 0x72, 0xea, - 0x91, 0x7e, 0xba, 0xda, 0xd5, 0xbb, 0x52, 0xdc, 0xa9, 0xeb, 0x2b, 0x73, 0x38, 0xaf, 0x97, 0x45, - 0x4f, 0x39, 0x7d, 0x15, 0x47, 0x63, 0xc6, 0x0c, 0xb2, 0x44, 0x49, 0x27, 0xc3, 0xd8, 0x28, 0x56, - 0x74, 0x8a, 0xf9, 0xb5, 0xa9, 0x38, 0xf1, 0x00, 0x47, 0x70, 0xa1, 0x20, 0x39, 0x45, 0x09, 0x75, - 0x79, 0x5e, 0xdc, 0x7b, 0x63, 0x3a, 0x92, 0xae, 0x22, 0x69, 0x6b, 0xab, 0xfa, 0x06, 0xd5, 0x4c, - 0x6c, 0x2d, 0x07, 0x57, 0xc4, 0x9b, 0x7f, 0x55, 0x83, 0x45, 0x51, 0x42, 0x90, 0x07, 0xcc, 0x17, - 0x00, 0x49, 0x95, 0x0b, 0xf5, 0x52, 0xd3, 0x4c, 0x95, 0xfb, 0x7a, 0x97, 0x0b, 0xfb, 0x74, 0xe5, - 0x6b, 0x05, 0x2b, 0x4d, 0xf9, 0xf9, 0x32, 0x98, 0xa6, 0xfc, 0x82, 0x1a, 0x97, 0x31, 0x83, 0xb6, - 0xa1, 0x11, 0x57, 0x51, 0x90, 0x56, 0x7c, 0xc9, 0x94, 0x80, 0x7a, 0xbd, 0xa2, 0x2e, 0x5d, 0x22, - 0xad, 0x32, 0xa2, 0x49, 0x94, 0xaf, 0xb7, 0x68, 0x12, 0x15, 0x15, 0x53, 0x92, 0xd9, 0x89, 0x44, - 0x30, 0x3b, 0xbb, 0x54, 0x6e, 0x9d, 0x9d, 0x5d, 0x3a, 0x77, 0x34, 0x66, 0x3e, 0xbf, 0xf2, 0x9b, - 0xdf, 0xad, 0x57, 0xfe, 0xeb, 0x77, 0xeb, 0x33, 0x7f, 0xf9, 0x7c, 0xbd, 0xf2, 0x9b, 0xe7, 0xeb, - 0x95, 0x7f, 0x7f, 0xbe, 0x5e, 0xf9, 0xed, 0xf3, 0xf5, 0xca, 0x77, 0xff, 0xb3, 0x3e, 0x73, 0x34, - 0xcf, 0xff, 0x0d, 0x7c, 0xf7, 0xf7, 0x01, 0x00, 0x00, 0xff, 0xff, 0xf8, 0xdd, 0x86, 0xaa, 0xcf, - 0x39, 0x00, 0x00, + // 4185 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, 0x0c, 0x87, 0x25, 0x4a, 0x1c, 0x8d, 0x24, 0x8a, 0x6e, + 0x59, 0xb6, 0xa4, 0x5d, 0xc9, 0x32, 0xbd, 0x96, 0x63, 0xf9, 0x4b, 0x63, 0x92, 0x32, 0x68, 0x49, + 0x14, 0xb7, 0x47, 0xf4, 0xee, 0x66, 0x03, 0x74, 0x9a, 0xd3, 0xc5, 0x61, 0xdb, 0x33, 0x5d, 0xed, + 0xee, 0x6a, 0x49, 0x0c, 0x72, 0x48, 0x2e, 0x41, 0x2e, 0x01, 0x9c, 0x63, 0x6e, 0x39, 0x04, 0x58, + 0xe4, 0x92, 0x43, 0x0e, 0x41, 0x7e, 0x41, 0xb0, 0x97, 0x00, 0x01, 0x02, 0x04, 0xc9, 0x2d, 0xab, + 0x1c, 0x72, 0x08, 0x90, 0xdf, 0xb0, 0xa8, 0xaf, 0xee, 0xea, 0xaf, 0x11, 0x29, 0x1b, 0xbb, 0x3a, + 0x4d, 0xd7, 0xab, 0x57, 0xaf, 0x5e, 0xd5, 0x7b, 0xf5, 0xbe, 0xaa, 0x06, 0x1a, 0xb6, 0xef, 0xde, + 0xf2, 0x03, 0x42, 0x09, 0x5a, 0x08, 0x22, 0x8f, 0xba, 0x13, 0xdc, 0xbb, 0x39, 0x72, 0xe9, 0x51, + 0x74, 0x70, 0x6b, 0x48, 0x26, 0xef, 0x8c, 0xc8, 0x88, 0xbc, 0xc3, 0xfb, 0x0f, 0xa2, 0x43, 0xde, + 0xe2, 0x0d, 0xfe, 0x25, 0xc6, 0x19, 0x37, 0xa0, 0xfd, 0x15, 0x0e, 0x42, 0x97, 0x78, 0x26, 0xfe, + 0x36, 0xc2, 0x21, 0x45, 0x5d, 0x58, 0x78, 0x2a, 0x20, 0xdd, 0xca, 0x7a, 0xe5, 0x5a, 0xc3, 0x54, + 0x4d, 0xe3, 0x57, 0x15, 0x58, 0x8a, 0x91, 0x43, 0x9f, 0x78, 0x21, 0x2e, 0xc7, 0x46, 0x6f, 0xc0, + 0xa2, 0xe4, 0xc9, 0xf2, 0xec, 0x09, 0xee, 0x56, 0x79, 0x77, 0x53, 0xc2, 0x76, 0xed, 0x09, 0x46, + 0x6f, 0xc3, 0x92, 0x42, 0x51, 0x44, 0x6a, 0x1c, 0xab, 0x2d, 0xc1, 0x72, 0x36, 0x74, 0x0b, 0xce, + 0x28, 0x44, 0xdb, 0x77, 0x63, 0xe4, 0x59, 0x8e, 0xbc, 0x2c, 0xbb, 0xfa, 0xbe, 0x2b, 0xf1, 0x8d, + 0x5f, 0x42, 0x63, 0x6b, 0x77, 0xb0, 0x49, 0xbc, 0x43, 0x77, 0xc4, 0x58, 0x0c, 0x71, 0xc0, 0xc6, + 0x74, 0x2b, 0xeb, 0x35, 0xc6, 0xa2, 0x6c, 0xa2, 0x1e, 0xd4, 0x43, 0x6c, 0x07, 0xc3, 0x23, 0x1c, + 0x76, 0xab, 0xbc, 0x2b, 0x6e, 0xb3, 0x51, 0xc4, 0xa7, 0x2e, 0xf1, 0xc2, 0x6e, 0x4d, 0x8c, 0x92, + 0x4d, 0xe3, 0x6f, 0x2a, 0xd0, 0xdc, 0x23, 0x01, 0x7d, 0x64, 0xfb, 0xbe, 0xeb, 0x8d, 0xd0, 0x4d, + 0xa8, 0xf3, 0xbd, 0x1c, 0x92, 0x31, 0xdf, 0x83, 0xf6, 0xc6, 0xf2, 0x2d, 0xc9, 0xd2, 0xad, 0x3d, + 0xd9, 0x61, 0xc6, 0x28, 0xe8, 0x2a, 0xb4, 0x87, 0xc4, 0xa3, 0xb6, 0xeb, 0xe1, 0xc0, 0xf2, 0x49, + 0x40, 0xf9, 0xce, 0xcc, 0x99, 0xad, 0x18, 0xca, 0x88, 0xa3, 0x0b, 0xd0, 0x38, 0x22, 0x21, 0x15, + 0x18, 0x35, 0x8e, 0x51, 0x67, 0x00, 0xde, 0xb9, 0x0a, 0x0b, 0xbc, 0xd3, 0xf5, 0xe5, 0x1e, 0xcc, + 0xb3, 0xe6, 0x8e, 0x6f, 0x7c, 0x57, 0x81, 0xb9, 0x47, 0x24, 0xf2, 0x68, 0x66, 0x1a, 0x9b, 0x1e, + 0x49, 0xf9, 0x68, 0xd3, 0xd8, 0xf4, 0x28, 0x99, 0x86, 0x61, 0x08, 0x11, 0x89, 0x69, 0x58, 0x67, + 0x0f, 0xea, 0x01, 0xb6, 0x1d, 0xe2, 0x8d, 0x8f, 0x39, 0x0b, 0x75, 0x33, 0x6e, 0x33, 0xd9, 0x85, + 0x78, 0xec, 0x7a, 0xd1, 0x73, 0x2b, 0xc0, 0x63, 0xfb, 0x00, 0x8f, 0x39, 0x2b, 0x75, 0xb3, 0x2d, + 0xc1, 0xa6, 0x80, 0x1a, 0x5f, 0xc3, 0x12, 0x13, 0x76, 0xe8, 0xdb, 0x43, 0xfc, 0x98, 0x6f, 0x21, + 0x53, 0x0d, 0x3e, 0xa9, 0x87, 0xe9, 0x33, 0x12, 0x7c, 0xc3, 0x39, 0xab, 0x9b, 0x4d, 0x06, 0xdb, + 0x15, 0x20, 0x74, 0x1e, 0xea, 0x82, 0x2f, 0xd7, 0xe1, 0x6c, 0xd5, 0x4d, 0xbe, 0xe2, 0x3d, 0xd7, + 0x89, 0xbb, 0x5c, 0x7f, 0x28, 0xb9, 0x5a, 0x10, 0xab, 0x1f, 0x1a, 0x06, 0xc0, 0x8e, 0x47, 0xef, + 0xfc, 0xe4, 0x2b, 0x7b, 0x1c, 0x61, 0xb4, 0x02, 0x73, 0x4f, 0xd9, 0x07, 0xa7, 0x5f, 0x33, 0x45, + 0xc3, 0xf8, 0x8b, 0x1a, 0x5c, 0x78, 0xc8, 0x18, 0x1c, 0xd8, 0x9e, 0x73, 0x40, 0x9e, 0x0f, 0xf0, + 0x30, 0x0a, 0x5c, 0x7a, 0xbc, 0x49, 0x3c, 0x8a, 0x9f, 0x53, 0xb4, 0x0d, 0xcb, 0x9e, 0xe2, 0xd7, + 0x52, 0x2a, 0xc0, 0x28, 0x34, 0x37, 0xba, 0xb1, 0x5c, 0x33, 0x2b, 0x32, 0x3b, 0x5e, 0x1a, 0x10, + 0xa2, 0xcf, 0x92, 0xfd, 0x51, 0x44, 0xaa, 0x9c, 0xc8, 0xb9, 0x98, 0xc8, 0x60, 0x9b, 0xf3, 0x21, + 0x49, 0xa8, 0x7d, 0x53, 0x04, 0xde, 0x03, 0x76, 0x56, 0x2c, 0x3b, 0xb4, 0xa2, 0x10, 0x07, 0x7c, + 0xa5, 0xcd, 0x8d, 0x33, 0xf1, 0xe0, 0x64, 0x9d, 0x66, 0x23, 0x88, 0xbc, 0x7e, 0xb8, 0x1f, 0xe2, + 0x80, 0x9f, 0x28, 0x29, 0x21, 0x2b, 0x20, 0x84, 0x1e, 0x86, 0x4a, 0x2a, 0x0a, 0x6c, 0x72, 0x28, + 0x7a, 0x07, 0xce, 0x84, 0x91, 0xef, 0x8f, 0xf1, 0x04, 0x7b, 0xd4, 0x1e, 0x5b, 0xa3, 0x80, 0x44, + 0x7e, 0xd8, 0x9d, 0x5b, 0xaf, 0x5d, 0xab, 0x99, 0x48, 0xef, 0xfa, 0x82, 0xf7, 0xa0, 0x35, 0x00, + 0x3f, 0x70, 0x9f, 0xba, 0x63, 0x3c, 0xc2, 0x4e, 0x77, 0x9e, 0x13, 0xd5, 0x20, 0xe8, 0x36, 0xac, + 0x84, 0x78, 0x38, 0x24, 0x13, 0xdf, 0xf2, 0x03, 0x72, 0xe8, 0x8e, 0xb1, 0xd0, 0xa9, 0x05, 0xae, + 0x53, 0x48, 0xf6, 0xed, 0x89, 0x2e, 0xa6, 0x5d, 0xc6, 0x77, 0x55, 0x38, 0xcb, 0x37, 0x60, 0x8f, + 0x38, 0x52, 0x16, 0xf2, 0xc4, 0x5e, 0x81, 0xd6, 0x90, 0x33, 0x64, 0xf9, 0x76, 0x80, 0x3d, 0x2a, + 0x55, 0x77, 0x51, 0x00, 0xf7, 0x38, 0x0c, 0x3d, 0x86, 0x4e, 0x28, 0x45, 0x67, 0x0d, 0x85, 0xec, + 0xe4, 0x0e, 0xbf, 0x19, 0x6f, 0xd2, 0x14, 0x39, 0x9b, 0x4b, 0x61, 0x4e, 0xf0, 0x0b, 0xe1, 0x71, + 0x38, 0xa4, 0x63, 0x71, 0xe2, 0x9b, 0x1b, 0x3f, 0x4a, 0xd3, 0xc9, 0xb2, 0x79, 0x6b, 0x20, 0xb0, + 0xb7, 0x3d, 0x1a, 0x1c, 0x9b, 0x6a, 0x6c, 0xef, 0x2e, 0x2c, 0xea, 0x1d, 0xa8, 0x03, 0xb5, 0x6f, + 0xf0, 0xb1, 0x5c, 0x02, 0xfb, 0x4c, 0xf4, 0x52, 0x9c, 0x37, 0xd1, 0xb8, 0x5b, 0xfd, 0x83, 0x8a, + 0x11, 0x00, 0x4a, 0x66, 0x79, 0x84, 0xa9, 0xed, 0xd8, 0xd4, 0x46, 0x08, 0x66, 0xb9, 0x05, 0x15, + 0x24, 0xf8, 0x37, 0xa3, 0x1a, 0xc9, 0xa3, 0xd1, 0x30, 0xd9, 0x27, 0xba, 0x08, 0x8d, 0x58, 0x09, + 0xa5, 0x19, 0x4d, 0x00, 0xcc, 0x9c, 0xd9, 0x94, 0xe2, 0x89, 0x4f, 0xb9, 0x42, 0xb4, 0x4c, 0xd5, + 0x34, 0xfe, 0x79, 0x16, 0x3a, 0x39, 0x09, 0x7c, 0x00, 0xf5, 0x89, 0x9c, 0x5e, 0xea, 0xfe, 0x85, + 0xc4, 0xa6, 0xe5, 0x38, 0x34, 0x63, 0x64, 0x66, 0x32, 0xd8, 0x61, 0xd4, 0x2c, 0x7e, 0xdc, 0x66, + 0x62, 0x1d, 0x93, 0x91, 0xe5, 0xb8, 0x01, 0x1e, 0x52, 0x12, 0x1c, 0x4b, 0x2e, 0x17, 0xc7, 0x64, + 0xb4, 0xa5, 0x60, 0xe8, 0x5d, 0x00, 0xc7, 0x0b, 0x99, 0x44, 0x0f, 0xdd, 0x11, 0xe7, 0xb5, 0xb9, + 0x81, 0xe2, 0xb9, 0x63, 0xab, 0x6e, 0x36, 0x1c, 0x2f, 0x94, 0xcc, 0x7e, 0x08, 0x2d, 0x66, 0x25, + 0xad, 0x89, 0x30, 0xc8, 0x42, 0x8b, 0x9b, 0x1b, 0x2b, 0x1a, 0xc7, 0xb1, 0xb5, 0x36, 0x17, 0xfd, + 0xa4, 0x11, 0xa2, 0x4f, 0x60, 0x9e, 0x5b, 0xa9, 0xb0, 0x3b, 0xcf, 0xc7, 0x5c, 0x2d, 0x58, 0xa5, + 0x94, 0xf6, 0x43, 0x8e, 0x27, 0x84, 0x2d, 0x07, 0xa1, 0x87, 0xd0, 0xb4, 0x3d, 0x8f, 0x50, 0x5b, + 0x1c, 0xf0, 0x05, 0x4e, 0xe3, 0x46, 0x39, 0x8d, 0x7e, 0x82, 0x2c, 0x08, 0xe9, 0xc3, 0xd1, 0x4f, + 0x60, 0x8e, 0x5b, 0x80, 0x6e, 0x9d, 0xaf, 0x7a, 0x6d, 0xba, 0xfa, 0x99, 0x02, 0xb9, 0xf7, 0x21, + 0x34, 0x35, 0xd6, 0x4e, 0xa3, 0x6e, 0xbd, 0x4f, 0xa1, 0x93, 0xe5, 0xe8, 0x54, 0xea, 0xba, 0x03, + 0x2b, 0x66, 0xe4, 0x25, 0x8c, 0xa9, 0x10, 0xe2, 0x5d, 0x98, 0x97, 0xf2, 0x13, 0xba, 0x73, 0xbe, + 0x74, 0x47, 0x4c, 0x89, 0x68, 0x7c, 0x02, 0x67, 0x33, 0xa4, 0x64, 0x80, 0xf1, 0x26, 0xb4, 0x7d, + 0xe2, 0x58, 0xa1, 0x00, 0x5b, 0xae, 0xa3, 0x8c, 0x81, 0x1f, 0xe3, 0xee, 0x38, 0x6c, 0xf8, 0x80, + 0x12, 0x3f, 0xcf, 0xca, 0xc9, 0x86, 0x77, 0xe1, 0x5c, 0x76, 0xb8, 0x98, 0xde, 0xf8, 0x0c, 0x56, + 0x4d, 0x3c, 0x21, 0x4f, 0xf1, 0xab, 0x92, 0xee, 0x41, 0x37, 0x4f, 0x20, 0x21, 0x9e, 0x40, 0x07, + 0xd4, 0xa6, 0x51, 0x78, 0x3a, 0xe2, 0xd7, 0x75, 0x02, 0xd2, 0x75, 0x0a, 0x3a, 0xa8, 0x0d, 0x55, + 0xd7, 0x97, 0x83, 0xaa, 0xae, 0x6f, 0x7c, 0x06, 0x8d, 0xd8, 0x69, 0xa1, 0x8d, 0x24, 0xb8, 0xa9, + 0xbe, 0xc4, 0xb3, 0xc5, 0x61, 0xcf, 0x83, 0x9c, 0xb5, 0x96, 0x33, 0x6d, 0x00, 0xc4, 0x76, 0x46, + 0x79, 0x4a, 0x94, 0xa7, 0x67, 0x6a, 0x58, 0xc6, 0xdf, 0xa5, 0x8c, 0x8e, 0xc6, 0xb2, 0x13, 0xb3, + 0xec, 0xa4, 0x8c, 0x50, 0xf5, 0x34, 0x46, 0xe8, 0x16, 0xcc, 0x85, 0xd4, 0xa6, 0xc2, 0x0c, 0xb6, + 0xb5, 0xc5, 0xa5, 0xa7, 0xc4, 0xa6, 0x40, 0x43, 0x97, 0x00, 0x86, 0x01, 0xb6, 0x29, 0x76, 0x2c, + 0x5b, 0xd8, 0xc7, 0x9a, 0xd9, 0x90, 0x90, 0x3e, 0x45, 0x77, 0x61, 0x41, 0x45, 0x2a, 0x73, 0x9c, + 0x8d, 0xf5, 0x02, 0x82, 0xa9, 0xdd, 0x37, 0xd5, 0x80, 0xe4, 0x4c, 0xcf, 0x4f, 0x3f, 0xd3, 0x72, + 0x9c, 0x40, 0xd6, 0xcc, 0xd2, 0x42, 0xa9, 0x59, 0x12, 0x23, 0x4e, 0x62, 0x96, 0xea, 0xa5, 0x66, + 0x49, 0xd2, 0x98, 0x6a, 0x96, 0x7e, 0x9f, 0x06, 0xe6, 0x11, 0x74, 0xf3, 0x07, 0x44, 0x1a, 0x86, + 0x77, 0x61, 0x3e, 0xe4, 0x90, 0x29, 0x46, 0x46, 0x0e, 0x91, 0x88, 0xc6, 0x7d, 0x58, 0xc9, 0x68, + 0x80, 0x08, 0x14, 0x63, 0x7d, 0xa9, 0x9c, 0x48, 0x5f, 0x8c, 0xff, 0xaf, 0xe8, 0xda, 0x7b, 0xdf, + 0x1d, 0x53, 0x1c, 0xe4, 0xb4, 0xf7, 0x3d, 0x45, 0x54, 0xa8, 0xee, 0xa5, 0x32, 0xa2, 0x22, 0x86, + 0x93, 0x9a, 0x38, 0x80, 0x36, 0x97, 0xa1, 0x15, 0xe2, 0x31, 0x77, 0x88, 0x32, 0x14, 0xf9, 0x71, + 0xc1, 0x68, 0x31, 0xaf, 0x50, 0x80, 0x81, 0x44, 0x17, 0xe2, 0x6b, 0x8d, 0x75, 0x58, 0xef, 0x1e, + 0xa0, 0x3c, 0xd2, 0xa9, 0xe4, 0xf0, 0x25, 0x3b, 0xfb, 0x2c, 0xf7, 0x28, 0xb0, 0xf4, 0x87, 0x9c, + 0x8d, 0x29, 0x42, 0x10, 0x7c, 0x9a, 0x12, 0xd1, 0xf8, 0xdb, 0x1a, 0x40, 0xd2, 0xf9, 0xda, 0x1e, + 0xfa, 0x0f, 0xe2, 0x23, 0x28, 0xa2, 0x89, 0xcb, 0x05, 0xf4, 0x0a, 0x0f, 0xdf, 0xfd, 0xf4, 0xe1, + 0x13, 0x71, 0xc5, 0x9b, 0x45, 0xa3, 0x5f, 0xdb, 0x63, 0xb7, 0x09, 0xe7, 0xb2, 0xe2, 0x96, 0x87, + 0xee, 0x3a, 0xcc, 0xb9, 0x14, 0x4f, 0x44, 0x26, 0xad, 0xa7, 0x23, 0x1a, 0xae, 0xc0, 0x30, 0xde, + 0x80, 0xc6, 0xce, 0xc4, 0x1e, 0xe1, 0x81, 0x8f, 0x87, 0x6c, 0x2e, 0x97, 0x35, 0xe4, 0xfc, 0xa2, + 0x61, 0x6c, 0x40, 0xfd, 0x01, 0x3e, 0x16, 0x67, 0xf0, 0x84, 0xfc, 0x19, 0x7f, 0x55, 0x85, 0x55, + 0x6e, 0x3b, 0x37, 0x55, 0x1e, 0x6b, 0xe2, 0x90, 0x44, 0xc1, 0x10, 0x87, 0x5c, 0xa4, 0x7e, 0x64, + 0xf9, 0x38, 0x70, 0x89, 0x23, 0xb3, 0xbe, 0xc6, 0xd0, 0x8f, 0xf6, 0x38, 0x80, 0xe5, 0xba, 0xac, + 0xfb, 0xdb, 0x88, 0x48, 0xdd, 0xaa, 0x99, 0xf5, 0xa1, 0x1f, 0xfd, 0x94, 0xb5, 0xd5, 0xd8, 0xf0, + 0xc8, 0x0e, 0x70, 0xc8, 0x75, 0x48, 0x8c, 0x1d, 0x70, 0x00, 0x7a, 0x17, 0xce, 0x4e, 0xf0, 0x84, + 0x04, 0xc7, 0xd6, 0xd8, 0x9d, 0xb8, 0xd4, 0x72, 0x3d, 0xeb, 0xe0, 0x98, 0xe2, 0x50, 0x2a, 0x0e, + 0x12, 0x9d, 0x0f, 0x59, 0xdf, 0x8e, 0xf7, 0x39, 0xeb, 0x41, 0x06, 0xb4, 0x08, 0x99, 0x58, 0xe1, + 0x90, 0x04, 0xd8, 0xb2, 0x9d, 0xaf, 0xb9, 0xf3, 0xa8, 0x99, 0x4d, 0x42, 0x26, 0x03, 0x06, 0xeb, + 0x3b, 0x5f, 0xa3, 0xcb, 0xd0, 0x1c, 0xfa, 0x51, 0x88, 0xa9, 0xc5, 0x7e, 0xb8, 0x93, 0x68, 0x98, + 0x20, 0x40, 0x9b, 0x7e, 0x14, 0x6a, 0x08, 0x13, 0xb6, 0xed, 0x0b, 0x3a, 0xc2, 0x23, 0xb6, 0xcd, + 0x36, 0xb4, 0x52, 0x79, 0x24, 0xcb, 0x16, 0x78, 0xc2, 0x28, 0xb3, 0x05, 0xf6, 0xcd, 0x60, 0x01, + 0x19, 0xab, 0x9d, 0xe4, 0xdf, 0x0c, 0x46, 0x8f, 0x7d, 0x95, 0x2a, 0xf0, 0x6f, 0xb6, 0xe5, 0x63, + 0xfc, 0x54, 0xa6, 0xf2, 0x0d, 0x53, 0x34, 0x0c, 0x07, 0x60, 0xd3, 0xf6, 0xed, 0x03, 0x77, 0xec, + 0xd2, 0x63, 0x74, 0x1d, 0x3a, 0xb6, 0xe3, 0x58, 0x43, 0x05, 0x71, 0xb1, 0xaa, 0xab, 0x2c, 0xd9, + 0x8e, 0xb3, 0xa9, 0x81, 0xd1, 0x8f, 0x60, 0xd9, 0x09, 0x88, 0x9f, 0xc6, 0x15, 0x85, 0x96, 0x0e, + 0xeb, 0xd0, 0x91, 0x8d, 0x7f, 0x9a, 0x85, 0x4b, 0x69, 0xc1, 0x66, 0x33, 0xf3, 0x0f, 0x60, 0x31, + 0x33, 0x6b, 0x3a, 0x25, 0x4e, 0x98, 0x34, 0x53, 0x88, 0x99, 0xdc, 0xb5, 0x9a, 0xcb, 0x5d, 0x0b, + 0x53, 0xfe, 0xda, 0x0f, 0x91, 0xf2, 0xcf, 0x7e, 0x9f, 0x94, 0x7f, 0xee, 0x44, 0x29, 0xff, 0x5b, + 0xbc, 0x88, 0xa6, 0x06, 0xf1, 0xc4, 0x4b, 0xa8, 0x51, 0x2b, 0xc6, 0xf1, 0x54, 0xb1, 0x2d, 0x53, + 0x1a, 0x58, 0x38, 0x4d, 0x69, 0xa0, 0x5e, 0x5a, 0x1a, 0x60, 0x1a, 0xe1, 0xfb, 0x76, 0x30, 0x21, + 0x81, 0xca, 0xfd, 0xbb, 0x0d, 0xce, 0xc2, 0x92, 0x82, 0xcb, 0xbc, 0xbf, 0xb4, 0x4a, 0x00, 0x65, + 0x55, 0x02, 0xb4, 0x0e, 0x8b, 0x1e, 0xb1, 0x3c, 0xfc, 0xcc, 0x62, 0x02, 0x0b, 0xbb, 0x4d, 0x21, + 0x3d, 0x8f, 0xec, 0xe2, 0x67, 0x7b, 0x0c, 0x62, 0xfc, 0x7d, 0x05, 0x56, 0xd2, 0x8a, 0x23, 0xf3, + 0xc2, 0x4f, 0xa1, 0x11, 0x28, 0xdb, 0x20, 0x95, 0x65, 0x3d, 0x1d, 0x7f, 0xe5, 0x6d, 0x88, 0x99, + 0x0c, 0x41, 0x3f, 0x2d, 0xad, 0x30, 0xbc, 0x55, 0x42, 0xe6, 0x65, 0x35, 0x06, 0xa3, 0x0f, 0xcb, + 0x31, 0xf2, 0xd4, 0xfc, 0x5e, 0xcb, 0xd7, 0xab, 0xe9, 0x7c, 0xdd, 0x83, 0xf9, 0x2d, 0xfc, 0xd4, + 0x1d, 0xe2, 0x1f, 0xa4, 0xc4, 0xb7, 0x0e, 0x4d, 0x1f, 0x07, 0x13, 0x37, 0x0c, 0x63, 0xa5, 0x6f, + 0x98, 0x3a, 0xc8, 0xf8, 0xaf, 0x39, 0x58, 0xca, 0xee, 0xec, 0x9d, 0x5c, 0x79, 0xa0, 0x97, 0x9c, + 0xc2, 0xec, 0xfa, 0x34, 0x1f, 0x7d, 0x4d, 0xb9, 0x81, 0x6a, 0x26, 0x4b, 0x88, 0x3d, 0x85, 0x74, + 0x0d, 0x6c, 0xfd, 0x43, 0x32, 0x99, 0xd8, 0x9e, 0xa3, 0xca, 0xaf, 0xb2, 0xc9, 0x76, 0xcb, 0x0e, + 0x46, 0xec, 0x68, 0x31, 0x30, 0xff, 0x66, 0x56, 0x92, 0x45, 0xdb, 0xae, 0xc7, 0xab, 0x0b, 0xfc, + 0xe0, 0x34, 0x4c, 0x90, 0xa0, 0x2d, 0x37, 0x40, 0x57, 0x61, 0x16, 0x7b, 0x4f, 0x95, 0x37, 0x4e, + 0xea, 0xb3, 0xca, 0xfd, 0x98, 0xbc, 0x1b, 0xbd, 0x05, 0xf3, 0x13, 0x12, 0x79, 0x54, 0xc5, 0xdd, + 0xed, 0x18, 0x91, 0x17, 0x55, 0x4d, 0xd9, 0x8b, 0xae, 0xc3, 0x82, 0xc3, 0x65, 0xa0, 0x82, 0xeb, + 0xa5, 0xa4, 0x42, 0xc1, 0xe1, 0xa6, 0xea, 0x47, 0x1f, 0xc7, 0x71, 0x44, 0x23, 0x13, 0x09, 0x64, + 0x36, 0xb5, 0x30, 0x98, 0x78, 0x90, 0x0e, 0x26, 0x80, 0x93, 0xb8, 0x5e, 0x4a, 0x62, 0x7a, 0x7d, + 0xe1, 0x3c, 0xd4, 0xc7, 0x64, 0x24, 0xf4, 0xa0, 0x29, 0x8a, 0xf5, 0x63, 0x32, 0xe2, 0x6a, 0xb0, + 0xc2, 0x82, 0x27, 0xc7, 0xf5, 0xba, 0x8b, 0xfc, 0x78, 0x89, 0x06, 0xf3, 0x89, 0xfc, 0xc3, 0x22, + 0xde, 0x10, 0x77, 0x5b, 0xbc, 0xab, 0xc1, 0x21, 0x8f, 0xbd, 0x21, 0x77, 0xd9, 0x94, 0x1e, 0x77, + 0xdb, 0x1c, 0xce, 0x3e, 0x59, 0xcc, 0x2b, 0xb2, 0x9d, 0xa5, 0x4c, 0xcc, 0x5b, 0x74, 0x3e, 0x5f, + 0x83, 0x02, 0xc6, 0x3f, 0x56, 0xe0, 0xdc, 0x26, 0x0f, 0xf9, 0x34, 0x4b, 0x70, 0x8a, 0x04, 0x1c, + 0xdd, 0x8e, 0x2b, 0x1d, 0xd9, 0x3c, 0x3a, 0xbb, 0x58, 0x89, 0x87, 0xee, 0x41, 0x5b, 0xd1, 0x94, + 0x23, 0x6b, 0x2f, 0xab, 0x91, 0xb4, 0x42, 0xbd, 0x69, 0x7c, 0x0c, 0xab, 0x39, 0x9e, 0x65, 0x78, + 0xf6, 0x06, 0x2c, 0x26, 0x16, 0x21, 0x66, 0xb9, 0x19, 0xc3, 0x76, 0x1c, 0xe3, 0x2e, 0x9c, 0x1d, + 0x50, 0x3b, 0xa0, 0xb9, 0x05, 0x9f, 0x60, 0x2c, 0x2f, 0x93, 0xa4, 0xc7, 0xca, 0x4a, 0xc6, 0x00, + 0x56, 0x06, 0x94, 0xf8, 0xaf, 0x40, 0x94, 0x9d, 0x74, 0xb6, 0x6c, 0x12, 0x51, 0x19, 0x93, 0xa9, + 0xa6, 0xb1, 0x2a, 0x8a, 0x3a, 0xf9, 0xd9, 0x3e, 0x82, 0x73, 0xa2, 0xa6, 0xf2, 0x2a, 0x8b, 0x38, + 0xaf, 0x2a, 0x3a, 0x79, 0xba, 0x5b, 0x70, 0x26, 0x31, 0xe5, 0x49, 0x7a, 0x78, 0x33, 0x9d, 0x1e, + 0xae, 0xe6, 0x65, 0x9c, 0xca, 0x0e, 0xff, 0xba, 0xaa, 0x19, 0xcc, 0x92, 0xe4, 0x70, 0x23, 0x9d, + 0x1c, 0x5e, 0x2c, 0x21, 0x99, 0xca, 0x0d, 0xf3, 0x1a, 0x59, 0x2b, 0xd0, 0x48, 0x33, 0x97, 0x41, + 0xce, 0x66, 0x8a, 0xd9, 0x19, 0xde, 0x7e, 0x27, 0x09, 0xe4, 0x8e, 0x48, 0x20, 0xe3, 0xa9, 0xe3, + 0x3a, 0xd7, 0xed, 0x4c, 0x02, 0xd9, 0x2d, 0x63, 0x33, 0xce, 0x1f, 0xff, 0x72, 0x16, 0x1a, 0x71, + 0x5f, 0x6e, 0x63, 0xf3, 0x9b, 0x54, 0x2d, 0xd8, 0x24, 0xdd, 0x7f, 0xd5, 0x5e, 0xc5, 0x7f, 0xcd, + 0xbe, 0xcc, 0x7f, 0x5d, 0x80, 0x06, 0xff, 0xb0, 0x02, 0x7c, 0x28, 0xfd, 0x51, 0x9d, 0x03, 0x4c, + 0x7c, 0x98, 0x28, 0xd4, 0xfc, 0x49, 0x14, 0x2a, 0x93, 0xa9, 0x2e, 0x64, 0x33, 0xd5, 0x3b, 0xb1, + 0x87, 0x11, 0xbe, 0x68, 0x2d, 0x4f, 0xae, 0xd0, 0xb7, 0x6c, 0xa7, 0x7d, 0x8b, 0x70, 0x4f, 0x57, + 0x0a, 0x06, 0xbf, 0xb6, 0x79, 0xea, 0x43, 0x91, 0xa7, 0xea, 0x5a, 0x25, 0x0d, 0xe1, 0x06, 0x40, + 0x7c, 0xe6, 0x55, 0xb2, 0x8a, 0xf2, 0x4b, 0x33, 0x35, 0x2c, 0x66, 0x55, 0x52, 0xfb, 0x9f, 0x14, + 0x63, 0x4f, 0x60, 0x55, 0xfe, 0x45, 0x8f, 0x92, 0x4a, 0xea, 0x99, 0x77, 0x72, 0xa5, 0x8d, 0x93, + 0x69, 0xdd, 0xcd, 0x74, 0x65, 0xe3, 0x74, 0xea, 0x92, 0x2b, 0x6c, 0x70, 0xa7, 0x6e, 0x07, 0xb2, + 0x5b, 0xe4, 0xa4, 0x0d, 0x09, 0xe9, 0x53, 0x16, 0x4a, 0x1d, 0xba, 0x9e, 0x1b, 0x1e, 0x89, 0xfe, + 0x79, 0xde, 0x0f, 0x0a, 0xd4, 0xe7, 0x17, 0xd3, 0xf8, 0xb9, 0x4b, 0xad, 0x21, 0x71, 0x30, 0x57, + 0xc6, 0x39, 0xb3, 0xce, 0x00, 0x9b, 0xc4, 0xc1, 0xc9, 0x01, 0xa9, 0x9f, 0xea, 0x80, 0x34, 0x32, + 0x07, 0xe4, 0x1c, 0xcc, 0x07, 0xd8, 0x0e, 0x89, 0x27, 0x13, 0x03, 0xd9, 0x62, 0xbe, 0x62, 0x82, + 0xc3, 0x90, 0x4d, 0x20, 0x03, 0x18, 0xd9, 0xd4, 0xc2, 0xac, 0xc5, 0xb2, 0x30, 0x6b, 0x4a, 0xc1, + 0x34, 0x13, 0x66, 0xb5, 0xca, 0xc2, 0xac, 0x93, 0xd4, 0x4b, 0xb5, 0x20, 0xb2, 0x3d, 0x35, 0x88, + 0xd4, 0xc3, 0xb1, 0xa5, 0x54, 0x38, 0xf6, 0xfb, 0x3c, 0x53, 0x0f, 0x60, 0x35, 0x77, 0x0a, 0xe4, + 0xa1, 0xba, 0x9d, 0xa9, 0xb8, 0x76, 0xcb, 0x36, 0x28, 0x2e, 0xb8, 0xfe, 0x29, 0x5c, 0xde, 0xf7, + 0x9d, 0x4c, 0xa8, 0x22, 0x13, 0xad, 0x93, 0x47, 0x08, 0x77, 0x54, 0x54, 0x59, 0x3d, 0x61, 0x0e, + 0x27, 0xd0, 0x0d, 0x03, 0xd6, 0xcb, 0x67, 0x97, 0x2e, 0xff, 0x8f, 0x61, 0x69, 0xfb, 0x39, 0x1e, + 0x0e, 0x8e, 0xbd, 0xe1, 0x29, 0x38, 0xea, 0x40, 0x6d, 0x38, 0x71, 0x64, 0x29, 0x83, 0x7d, 0xea, + 0x51, 0x4c, 0x2d, 0x1d, 0xc5, 0x58, 0xd0, 0x49, 0x66, 0x90, 0x3b, 0x79, 0x8e, 0xed, 0xa4, 0xc3, + 0x90, 0x19, 0xf1, 0x45, 0x53, 0xb6, 0x24, 0x1c, 0x07, 0x01, 0x5f, 0xaa, 0x80, 0xe3, 0x20, 0x48, + 0x9f, 0xb9, 0x5a, 0xfa, 0xcc, 0x19, 0x5f, 0x43, 0x93, 0x4d, 0xf0, 0xbd, 0xd8, 0x97, 0xa1, 0x7c, + 0x2d, 0x09, 0xe5, 0xe3, 0x8c, 0x60, 0x56, 0xcb, 0x08, 0x8c, 0x75, 0x58, 0x14, 0x73, 0xc9, 0x85, + 0x74, 0xa0, 0x16, 0x05, 0x63, 0xa5, 0x59, 0x51, 0x30, 0x36, 0xfe, 0x10, 0x5a, 0x7d, 0x4a, 0xed, + 0xe1, 0xd1, 0x29, 0xf8, 0x89, 0xe7, 0xaa, 0xea, 0xd9, 0x47, 0x8e, 0x27, 0xc3, 0x80, 0xb6, 0xa2, + 0x5d, 0x3a, 0xff, 0x2e, 0xa0, 0x3d, 0x12, 0xd0, 0xfb, 0x24, 0x78, 0x66, 0x07, 0xce, 0xe9, 0xa2, + 0x79, 0x04, 0xb3, 0xf2, 0x41, 0x4e, 0xed, 0xda, 0x9c, 0xc9, 0xbf, 0x8d, 0xb7, 0xe1, 0x4c, 0x8a, + 0x5e, 0xe9, 0xc4, 0x1f, 0x40, 0x93, 0x1b, 0x39, 0x19, 0xf1, 0x5d, 0xd3, 0x2b, 0x9e, 0xd3, 0x2c, + 0xa1, 0xd1, 0x87, 0x65, 0xe6, 0xc5, 0x38, 0x3c, 0x3e, 0x16, 0x3f, 0xce, 0xc4, 0x45, 0x2b, 0xe9, + 0xf1, 0x99, 0x98, 0xe8, 0x1f, 0x2a, 0x30, 0xc7, 0xe1, 0x39, 0x9f, 0x73, 0x01, 0x1a, 0x01, 0xf6, + 0x89, 0x45, 0xed, 0x51, 0xfc, 0xc6, 0x89, 0x01, 0x9e, 0xd8, 0xa3, 0x90, 0x3f, 0xd1, 0x62, 0x9d, + 0x8e, 0x3b, 0xc2, 0x21, 0x55, 0x0f, 0x9d, 0x9a, 0x0c, 0xb6, 0x25, 0x40, 0x6c, 0x4b, 0x42, 0xf7, + 0x4f, 0x44, 0xc0, 0x33, 0x6b, 0xf2, 0x6f, 0x74, 0x55, 0xbc, 0x3d, 0x98, 0x52, 0x9e, 0xe2, 0x0f, + 0x12, 0x7a, 0x50, 0xcf, 0x54, 0xa4, 0xe2, 0xb6, 0xf1, 0x31, 0x20, 0x7d, 0xcd, 0x72, 0x53, 0xdf, + 0x82, 0x79, 0xbe, 0x25, 0xca, 0x63, 0xb7, 0xd3, 0x8b, 0x36, 0x65, 0xaf, 0xf1, 0x29, 0x20, 0xb1, + 0x8b, 0x29, 0x2f, 0x7d, 0xf2, 0x1d, 0xff, 0x08, 0xce, 0xa4, 0xc6, 0xc7, 0x57, 0xcd, 0x29, 0x02, + 0xd9, 0xd9, 0xe5, 0xe0, 0x7f, 0xad, 0x00, 0xf4, 0x23, 0x7a, 0x24, 0x4b, 0x21, 0xfa, 0x2a, 0x2b, + 0xe9, 0x55, 0xb2, 0x3e, 0xdf, 0x0e, 0xc3, 0x67, 0x24, 0x50, 0x61, 0x68, 0xdc, 0xe6, 0x65, 0x8c, + 0x88, 0x1e, 0xa9, 0xf2, 0x2b, 0xfb, 0x46, 0x57, 0xa1, 0x2d, 0x9e, 0xa6, 0x59, 0xb6, 0xe3, 0x04, + 0x38, 0x0c, 0x65, 0x1d, 0xb6, 0x25, 0xa0, 0x7d, 0x01, 0x64, 0x68, 0xae, 0x83, 0x3d, 0xea, 0xd2, + 0x63, 0x8b, 0x92, 0x6f, 0xb0, 0x27, 0x03, 0xcc, 0x96, 0x82, 0x3e, 0x61, 0x40, 0x86, 0x16, 0xe0, + 0x91, 0x1b, 0xd2, 0x40, 0xa1, 0xa9, 0xba, 0xa0, 0x84, 0x72, 0x34, 0xe3, 0x57, 0x15, 0xe8, 0xec, + 0x45, 0xe3, 0xb1, 0x58, 0xe4, 0x69, 0xf7, 0x12, 0xbd, 0x2d, 0xd7, 0x51, 0xcd, 0x68, 0x43, 0xb2, + 0x45, 0x72, 0x71, 0xdf, 0x3f, 0xf1, 0xbd, 0x0d, 0xcb, 0x1a, 0xa3, 0x52, 0x68, 0xa9, 0x38, 0xa2, + 0x92, 0x8e, 0x23, 0x98, 0xa2, 0x88, 0x5c, 0xef, 0xd5, 0x16, 0x67, 0x9c, 0x85, 0x33, 0xa9, 0xf1, + 0xd2, 0x69, 0xdc, 0x80, 0x96, 0xbc, 0xee, 0x95, 0x4a, 0x70, 0x1e, 0xea, 0xcc, 0xbc, 0x0c, 0x5d, + 0x47, 0xd5, 0xdd, 0x17, 0x7c, 0xe2, 0x6c, 0xba, 0x4e, 0x60, 0xec, 0x42, 0xcb, 0x14, 0xe4, 0x25, + 0xee, 0x27, 0xd0, 0x96, 0x97, 0xc3, 0x56, 0xea, 0x91, 0x44, 0x52, 0x24, 0x4e, 0xd1, 0x36, 0x5b, + 0x9e, 0xde, 0x34, 0x7e, 0x09, 0x3d, 0xe1, 0xd4, 0x52, 0x54, 0xd5, 0xd2, 0x3e, 0x01, 0xf5, 0x74, + 0xb2, 0x8c, 0x78, 0x7a, 0x58, 0x2b, 0xd0, 0x9b, 0xc6, 0x25, 0xb8, 0x50, 0x48, 0x5c, 0xae, 0xdb, + 0x87, 0x4e, 0xd2, 0xe1, 0xb8, 0xea, 0xba, 0x81, 0x5f, 0x23, 0x54, 0xb4, 0x6b, 0x84, 0x73, 0x71, + 0xa0, 0x20, 0x0c, 0xba, 0x6c, 0x69, 0x61, 0x5d, 0xad, 0x2c, 0xac, 0x9b, 0x4d, 0x85, 0x75, 0xc6, + 0x97, 0xf1, 0xee, 0xc9, 0x98, 0xfa, 0x43, 0x1e, 0xd8, 0x8b, 0xb9, 0x95, 0x99, 0x38, 0x5f, 0xb0, + 0x38, 0x81, 0x61, 0x6a, 0xc8, 0xc6, 0x12, 0xb4, 0x52, 0x06, 0xc3, 0xb8, 0x07, 0xed, 0x8c, 0x05, + 0xb8, 0x95, 0x89, 0x70, 0x72, 0xdb, 0x96, 0x89, 0x6f, 0x56, 0xa4, 0x21, 0xba, 0x1f, 0xee, 0x78, + 0x87, 0x44, 0xd1, 0xbd, 0x02, 0xcd, 0xfd, 0xb2, 0x67, 0x88, 0xb3, 0xea, 0x1e, 0xeb, 0x6d, 0x58, + 0x1e, 0x50, 0x12, 0xd8, 0x23, 0xbc, 0xc3, 0x4f, 0xed, 0xa1, 0x2b, 0xee, 0x69, 0xa2, 0x28, 0xb6, + 0xdf, 0xfc, 0xdb, 0xf8, 0x8f, 0x0a, 0x2c, 0xdd, 0x77, 0xc7, 0x38, 0x3c, 0x0e, 0x29, 0x9e, 0xec, + 0xf3, 0x68, 0xf7, 0x22, 0x34, 0x18, 0x37, 0x21, 0xb5, 0x27, 0xbe, 0xba, 0xe7, 0x8a, 0x01, 0x6c, + 0x8f, 0x42, 0x41, 0x5a, 0xe5, 0xbf, 0x7a, 0xa6, 0x91, 0x9b, 0x95, 0x45, 0xff, 0x12, 0x84, 0xde, + 0x03, 0x88, 0x42, 0xec, 0xc8, 0xbb, 0xad, 0x5a, 0xc6, 0xf5, 0xec, 0xeb, 0x37, 0x10, 0x0c, 0x4f, + 0x5c, 0x74, 0xbd, 0x0f, 0x4d, 0xd7, 0x23, 0x0e, 0xe6, 0x37, 0x10, 0x8e, 0xcc, 0x8d, 0x8b, 0x47, + 0x81, 0x40, 0xdc, 0x0f, 0xb1, 0x63, 0xfc, 0x91, 0xb4, 0xc2, 0x6a, 0xf3, 0xa4, 0x0c, 0xb6, 0x61, + 0x59, 0x1c, 0xe8, 0xc3, 0x78, 0xd1, 0x4a, 0xd0, 0x49, 0xc0, 0x99, 0xd9, 0x10, 0xb3, 0xe3, 0x4a, + 0xaf, 0xa8, 0x46, 0x18, 0x77, 0xe1, 0x6c, 0x2a, 0x2a, 0x3d, 0x4d, 0x32, 0xf7, 0x45, 0x26, 0x13, + 0x4c, 0x14, 0x44, 0xa6, 0x62, 0x4a, 0x3f, 0x4a, 0x52, 0xb1, 0x50, 0xa4, 0x62, 0xa1, 0x61, 0xc2, + 0xf9, 0x54, 0x82, 0x9a, 0x62, 0xe4, 0xfd, 0x8c, 0x8b, 0xbf, 0x54, 0x42, 0x2c, 0xe3, 0xeb, 0xff, + 0xb7, 0x02, 0x2b, 0x45, 0x08, 0xaf, 0x58, 0x0a, 0xf9, 0x59, 0xc9, 0x8b, 0x83, 0xdb, 0x53, 0xb9, + 0xf9, 0x9d, 0x14, 0x8d, 0x1e, 0x40, 0xaf, 0x68, 0xf7, 0xf2, 0xa2, 0xa8, 0x9d, 0x40, 0x14, 0xff, + 0x57, 0xd5, 0x8a, 0x7b, 0x7d, 0x4a, 0x03, 0xf7, 0x20, 0x62, 0xca, 0xfb, 0x43, 0x25, 0xe9, 0xf7, + 0xe2, 0x04, 0x54, 0xec, 0xdf, 0xb5, 0xfc, 0xa8, 0x64, 0xd6, 0xc2, 0x24, 0xf4, 0x71, 0x3a, 0x09, + 0x15, 0x65, 0xbb, 0x9b, 0x53, 0xc9, 0xbc, 0xb6, 0x95, 0x99, 0x17, 0x15, 0x68, 0xa7, 0xe5, 0x80, + 0x3e, 0x06, 0xb0, 0x63, 0xce, 0xa5, 0xca, 0x5f, 0x9c, 0xb6, 0x3a, 0x53, 0xc3, 0x47, 0x57, 0xa0, + 0x36, 0xf4, 0x23, 0x29, 0x91, 0xe4, 0xfe, 0x66, 0xd3, 0x8f, 0x84, 0x01, 0x60, 0xbd, 0x2c, 0x68, + 0x16, 0xf7, 0xf0, 0x39, 0xcb, 0xf5, 0x88, 0x83, 0x05, 0xaa, 0xc4, 0x41, 0x9f, 0x41, 0xfb, 0x59, + 0xe0, 0x52, 0xfb, 0x60, 0x8c, 0xad, 0xb1, 0x7d, 0x8c, 0x03, 0x69, 0xb9, 0xca, 0xad, 0x4c, 0x4b, + 0xe1, 0x3f, 0x64, 0xe8, 0x46, 0x04, 0x75, 0x35, 0xff, 0x4b, 0x2c, 0xf2, 0x03, 0x58, 0x8d, 0x18, + 0x9a, 0xc5, 0xdf, 0x02, 0x78, 0xb6, 0x47, 0xac, 0x10, 0x33, 0xd7, 0xa4, 0xde, 0xdf, 0x15, 0x5b, + 0xcb, 0x15, 0x3e, 0x68, 0x93, 0x04, 0x78, 0xd7, 0xf6, 0xc8, 0x40, 0x8c, 0x30, 0x26, 0xd0, 0xd4, + 0x96, 0xf3, 0x92, 0x99, 0xef, 0xc1, 0xb2, 0xba, 0x19, 0x0b, 0x31, 0x95, 0x76, 0x7d, 0xda, 0x9c, + 0x4b, 0x12, 0x7d, 0x80, 0x29, 0xb7, 0xee, 0x37, 0x2e, 0x42, 0x5d, 0xfd, 0x8b, 0x01, 0x2d, 0x40, + 0xed, 0xc9, 0xe6, 0x5e, 0x67, 0x86, 0x7d, 0xec, 0x6f, 0xed, 0x75, 0x2a, 0x37, 0xee, 0xc2, 0x52, + 0xe6, 0x7d, 0x0d, 0x5a, 0x86, 0xd6, 0xa0, 0xbf, 0xbb, 0xf5, 0xf9, 0xe3, 0x9f, 0x5b, 0xe6, 0x76, + 0x7f, 0xeb, 0x17, 0x9d, 0x19, 0xb4, 0x02, 0x1d, 0x05, 0xda, 0x7d, 0xfc, 0x44, 0x40, 0x2b, 0x37, + 0xbe, 0xc9, 0xe8, 0x08, 0x46, 0x67, 0x61, 0x79, 0xf3, 0xf1, 0xee, 0x93, 0xfe, 0xce, 0xee, 0xb6, + 0x69, 0x6d, 0x9a, 0xdb, 0xfd, 0x27, 0xdb, 0x5b, 0x9d, 0x99, 0x34, 0xd8, 0xdc, 0xdf, 0xdd, 0xdd, + 0xd9, 0xfd, 0xa2, 0x53, 0x61, 0x54, 0x13, 0xf0, 0xf6, 0xcf, 0x77, 0x18, 0x72, 0x35, 0x8d, 0xbc, + 0xbf, 0xfb, 0x60, 0xf7, 0xf1, 0xcf, 0x76, 0x3b, 0xb5, 0x8d, 0x7f, 0x6f, 0x41, 0x5b, 0x39, 0x71, + 0x1c, 0xf0, 0xfb, 0xd3, 0x4f, 0x61, 0x41, 0xfd, 0xc1, 0x24, 0xb1, 0x1e, 0xe9, 0x7f, 0xc3, 0xf4, + 0xba, 0xf9, 0x0e, 0x19, 0x0c, 0xcd, 0xa0, 0x3d, 0x1e, 0x9c, 0x68, 0x6f, 0x99, 0x2e, 0xe9, 0xe1, + 0x42, 0xee, 0xb1, 0x54, 0x6f, 0xad, 0xac, 0x3b, 0xa6, 0x38, 0x60, 0x11, 0x89, 0xfe, 0x0e, 0x15, + 0xad, 0xe9, 0x7e, 0x3b, 0xff, 0xbe, 0xb5, 0x77, 0xb9, 0xb4, 0x3f, 0x26, 0xfa, 0x0b, 0xe8, 0x64, + 0x5f, 0xa0, 0xa2, 0xa4, 0x86, 0x52, 0xf2, 0xba, 0xb5, 0xf7, 0xc6, 0x14, 0x0c, 0x9d, 0x74, 0xee, + 0x15, 0xe7, 0x7a, 0xf9, 0x3b, 0xbc, 0x1c, 0xe9, 0xb2, 0xc7, 0x7d, 0x62, 0x2b, 0xd2, 0x6f, 0x90, + 0x90, 0xfe, 0x76, 0xb2, 0xe0, 0x2d, 0x9a, 0xb6, 0x15, 0xc5, 0x8f, 0x97, 0x8c, 0x19, 0xf4, 0x15, + 0x2c, 0x65, 0xae, 0xce, 0x50, 0x32, 0xaa, 0xf8, 0x22, 0xb0, 0xb7, 0x5e, 0x8e, 0x90, 0x96, 0x9b, + 0x7e, 0x31, 0x96, 0x92, 0x5b, 0xc1, 0x6d, 0x5b, 0x4a, 0x6e, 0x85, 0x37, 0x6a, 0x5c, 0xbd, 0x52, + 0xd7, 0x5f, 0x9a, 0x7a, 0x15, 0xdd, 0xb5, 0xf5, 0xd6, 0xca, 0xba, 0xf5, 0xe5, 0x67, 0xae, 0xbe, + 0xb4, 0xe5, 0x17, 0xdf, 0xa8, 0xf5, 0xd6, 0xcb, 0x11, 0xb2, 0xb2, 0x4a, 0xea, 0xf0, 0x19, 0x59, + 0xe5, 0xae, 0x7d, 0x32, 0xb2, 0xca, 0x17, 0xf0, 0xa5, 0xac, 0x32, 0x05, 0xf5, 0xcb, 0xa5, 0x05, + 0xc7, 0xbc, 0xac, 0x8a, 0x6b, 0x98, 0xc6, 0x0c, 0xfa, 0x16, 0xba, 0x65, 0x55, 0x41, 0x94, 0x38, + 0xed, 0x97, 0x94, 0x2d, 0x7b, 0xd7, 0x4f, 0x80, 0x19, 0x4f, 0xd9, 0x87, 0xba, 0x2a, 0x01, 0xa2, + 0xc4, 0xa0, 0x64, 0xea, 0x8e, 0xbd, 0xf3, 0x05, 0x3d, 0x31, 0x89, 0xf7, 0x61, 0x96, 0x41, 0xd1, + 0x4a, 0x0a, 0x49, 0x0d, 0x3d, 0x9b, 0x81, 0xc6, 0xc3, 0x3e, 0x82, 0x79, 0x51, 0x31, 0x43, 0x49, + 0x2a, 0x93, 0x2a, 0xcf, 0xf5, 0x56, 0x73, 0xf0, 0x78, 0xf0, 0x97, 0xe2, 0x7f, 0x6e, 0xb2, 0xf4, + 0x85, 0x2e, 0xa4, 0xfe, 0x4f, 0x91, 0x2e, 0xb0, 0xf5, 0x2e, 0x16, 0x77, 0xea, 0x2a, 0x92, 0x89, + 0x07, 0xd6, 0xca, 0x02, 0xb6, 0x9c, 0x8a, 0x14, 0x07, 0x80, 0xc6, 0x0c, 0xb2, 0x44, 0x15, 0x29, + 0x43, 0xd8, 0x28, 0xd6, 0xad, 0x14, 0xf1, 0x2b, 0x53, 0x71, 0xe2, 0x09, 0x0e, 0xe0, 0x4c, 0x41, + 0x3e, 0x8c, 0xae, 0x64, 0x84, 0x5f, 0x94, 0x8a, 0xf7, 0xde, 0x9c, 0x8e, 0xa4, 0x8b, 0x48, 0xaa, + 0xf7, 0x39, 0xdd, 0x26, 0x68, 0x5a, 0xbd, 0x9a, 0x83, 0xab, 0xc1, 0x1b, 0x7f, 0x5e, 0x83, 0x45, + 0x51, 0xb5, 0x90, 0x3e, 0xed, 0x0b, 0x80, 0xa4, 0xb0, 0x86, 0x7a, 0xa9, 0x65, 0xa6, 0x2a, 0x8c, + 0xbd, 0x0b, 0x85, 0x7d, 0xba, 0xf0, 0xb5, 0x1a, 0x99, 0x26, 0xfc, 0x7c, 0xe5, 0x4d, 0x13, 0x7e, + 0x41, 0x59, 0xcd, 0x98, 0x41, 0x5b, 0xd0, 0x88, 0x0b, 0x37, 0x48, 0xab, 0xf7, 0x64, 0xaa, 0x4e, + 0xbd, 0x5e, 0x51, 0x97, 0xce, 0x91, 0x56, 0x8c, 0xd1, 0x38, 0xca, 0x97, 0x78, 0x34, 0x8e, 0x8a, + 0xea, 0x37, 0xc9, 0xea, 0x44, 0xee, 0x99, 0x5d, 0x5d, 0x2a, 0x9d, 0xcf, 0xae, 0x2e, 0x9d, 0xae, + 0x1a, 0x33, 0x9f, 0x5f, 0xfc, 0xf5, 0x6f, 0xd6, 0x2a, 0xff, 0xf9, 0x9b, 0xb5, 0x99, 0x3f, 0x7b, + 0xb1, 0x56, 0xf9, 0xf5, 0x8b, 0xb5, 0xca, 0xbf, 0xbd, 0x58, 0xab, 0xfc, 0xf7, 0x8b, 0xb5, 0xca, + 0x77, 0xff, 0xb3, 0x36, 0x73, 0x30, 0xcf, 0xff, 0xf8, 0xf9, 0xde, 0x6f, 0x03, 0x00, 0x00, 0xff, + 0xff, 0x19, 0x8a, 0xba, 0xfd, 0xac, 0x3b, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto index b34451e2e..950680ed0 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto @@ -61,6 +61,8 @@ service RuntimeService { // ContainerStatus returns status of the container. If the container is not // present, returns an error. rpc ContainerStatus(ContainerStatusRequest) returns (ContainerStatusResponse) {} + // UpdateContainerResources updates ContainerConfig of the container. + rpc UpdateContainerResources(UpdateContainerResourcesRequest) returns (UpdateContainerResourcesResponse) {} // ExecSync runs a command in a container synchronously. rpc ExecSync(ExecSyncRequest) returns (ExecSyncResponse) {} @@ -200,6 +202,13 @@ message LinuxSandboxSecurityContext { // This allows a sandbox to take additional security precautions if no // privileged containers are expected to be run. bool privileged = 6; + // Seccomp profile for the sandbox, candidate values are: + // * docker/default: the default profile for the docker container runtime + // * unconfined: unconfined profile, ie, no seccomp sandboxing + // * localhost/: the profile installed on the node. + // is the full path of the profile. + // Default: "", which is identical with unconfined. + string seccomp_profile_path = 7; } // LinuxPodSandboxConfig holds platform-specific configurations for Linux @@ -272,32 +281,12 @@ message PodSandboxConfig { // // In general, in order to preserve a well-defined interface between the // kubelet and the container runtime, annotations SHOULD NOT influence - // runtime behaviour. For legacy reasons, there are some annotations which - // currently explicitly break this rule, listed below; in future versions - // of the interface these will be promoted to typed features. + // runtime behaviour. // // Annotations can also be useful for runtime authors to experiment with // new features that are opaque to the Kubernetes APIs (both user-facing // and the CRI). Whenever possible, however, runtime authors SHOULD // consider proposing new typed fields for any new features instead. - // - // 1. Seccomp - // - // key: security.alpha.kubernetes.io/seccomp/pod - // description: the seccomp profile for the containers of an entire pod. - // value: see below. - // - // key: security.alpha.kubernetes.io/seccomp/container/ - // description: the seccomp profile for the container (overrides pod). - // value: see below - // - // The value of seccomp is runtime agnostic: - // * runtime/default: the default profile for the container runtime - // * unconfined: unconfined profile, ie, no seccomp sandboxing - // * localhost/: the profile installed to the node's - // local seccomp profile root. Note that profile root is set in - // kubelet, and it is not passed in CRI yet, see https://issues.k8s.io/36997. - // map annotations = 7; // Optional configurations specific to Linux hosts. LinuxPodSandboxConfig linux = 8; @@ -459,6 +448,10 @@ message LinuxContainerResources { int64 memory_limit_in_bytes = 4; // OOMScoreAdj adjusts the oom-killer score. Default: 0 (not specified). int64 oom_score_adj = 5; + // CpusetCpus constrains the allowed set of logical CPUs. Default: "" (not specified). + string cpuset_cpus = 6; + // CpusetMems constrains the allowed set of memory nodes. Default: "" (not specified). + string cpuset_mems = 7; } // SELinuxOption are the labels to be applied to the container. @@ -522,6 +515,16 @@ message LinuxContainerSecurityContext { // (localhost) by name. The possible profile names are detailed at // http://wiki.apparmor.net/index.php/AppArmor_Core_Policy_Reference string apparmor_profile = 9; + // Seccomp profile for the container, candidate values are: + // * docker/default: the default profile for the docker container runtime + // * unconfined: unconfined profile, ie, no seccomp sandboxing + // * localhost/: the profile installed on the node. + // is the full path of the profile. + // Default: "", which is identical with unconfined. + string seccomp_profile_path = 10; + // no_new_privs defines if the flag for no_new_privs should be set on the + // container. + bool no_new_privs = 11; } // LinuxContainerConfig contains platform-specific configuration for @@ -777,6 +780,15 @@ message ContainerStatusResponse { ContainerStatus status = 1; } +message UpdateContainerResourcesRequest { + // ID of the container to update. + string container_id = 1; + // Resource configuration specific to Linux containers. + LinuxContainerResources linux = 2; +} + +message UpdateContainerResourcesResponse {} + message ExecSyncRequest { // ID of the container. string container_id = 1; @@ -990,7 +1002,7 @@ message FilesystemUsage { // 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 + // This may differ from the total bytes used on the filesystem and may not // equal CapacityBytes - AvailableBytes. UInt64Value used_bytes = 3; // InodesUsed represents the inodes used by the images. diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/server/portforward/websocket.go b/vendor/k8s.io/kubernetes/pkg/kubelet/server/portforward/websocket.go index 22d5add06..cb4bca045 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/server/portforward/websocket.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/server/portforward/websocket.go @@ -158,7 +158,6 @@ type websocketStreamPair struct { // request over a websocket connection type websocketStreamHandler struct { conn *wsstream.Conn - ports []int32 streamPairs []*websocketStreamPair pod string uid types.UID diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/exec.go b/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/exec.go index 8d14a937a..8eaf82a6f 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/exec.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/exec.go @@ -28,7 +28,7 @@ import ( remotecommandconsts "k8s.io/apimachinery/pkg/util/remotecommand" "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/tools/remotecommand" - utilexec "k8s.io/kubernetes/pkg/util/exec" + utilexec "k8s.io/utils/exec" ) // Executor knows how to execute a command in a container in a pod. diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/httpstream.go b/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/httpstream.go index f09b5e400..9d4883212 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/httpstream.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/server/remotecommand/httpstream.go @@ -423,7 +423,7 @@ func handleResizeEvents(stream io.Reader, channel chan<- remotecommand.TerminalS } } -func v1WriteStatusFunc(stream io.WriteCloser) func(status *apierrors.StatusError) error { +func v1WriteStatusFunc(stream io.Writer) func(status *apierrors.StatusError) error { return func(status *apierrors.StatusError) error { if status.Status().Status == metav1.StatusSuccess { return nil // send error messages @@ -435,7 +435,7 @@ func v1WriteStatusFunc(stream io.WriteCloser) func(status *apierrors.StatusError // v4WriteStatusFunc returns a WriteStatusFunc that marshals a given api Status // as json in the error channel. -func v4WriteStatusFunc(stream io.WriteCloser) func(status *apierrors.StatusError) error { +func v4WriteStatusFunc(stream io.Writer) func(status *apierrors.StatusError) error { return func(status *apierrors.StatusError) error { bs, err := json.Marshal(status.Status()) if err != nil { 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 875e44462..ed4b65953 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/server/streaming/server.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/server/streaming/server.go @@ -101,7 +101,7 @@ var DefaultConfig = Config{ SupportedPortForwardProtocols: portforward.SupportedProtocols, } -// TODO(timstclair): Add auth(n/z) interface & handling. +// TODO(tallclair): Add auth(n/z) interface & handling. func NewServer(config Config, runtime Runtime) (Server, error) { s := &server{ config: config, @@ -193,7 +193,7 @@ func (s *server) GetPortForward(req *runtimeapi.PortForwardRequest) (*runtimeapi func (s *server) Start(stayUp bool) error { if !stayUp { - // TODO(timstclair): Implement this. + // TODO(tallclair): Implement this. return errors.New("stayUp=false is not yet implemented") } @@ -210,7 +210,7 @@ func (s *server) Start(stayUp bool) error { } func (s *server) Stop() error { - // TODO(timstclair): Implement this. + // TODO(tallclair): Implement this. return errors.New("not yet implemented") } diff --git a/vendor/k8s.io/kubernetes/pkg/util/exec/fake_exec.go b/vendor/k8s.io/kubernetes/pkg/util/exec/fake_exec.go deleted file mode 100644 index c7fcd6cec..000000000 --- a/vendor/k8s.io/kubernetes/pkg/util/exec/fake_exec.go +++ /dev/null @@ -1,145 +0,0 @@ -/* -Copyright 2014 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 exec - -import ( - "fmt" - "io" -) - -// A simple scripted Interface type. -type FakeExec struct { - CommandScript []FakeCommandAction - CommandCalls int - LookPathFunc func(string) (string, error) -} - -type FakeCommandAction func(cmd string, args ...string) Cmd - -func (fake *FakeExec) Command(cmd string, args ...string) Cmd { - if fake.CommandCalls > len(fake.CommandScript)-1 { - panic(fmt.Sprintf("ran out of Command() actions. Could not handle command [%d]: %s args: %v", fake.CommandCalls, cmd, args)) - } - i := fake.CommandCalls - fake.CommandCalls++ - return fake.CommandScript[i](cmd, args...) -} - -func (fake *FakeExec) LookPath(file string) (string, error) { - return fake.LookPathFunc(file) -} - -// A simple scripted Cmd type. -type FakeCmd struct { - Argv []string - CombinedOutputScript []FakeCombinedOutputAction - CombinedOutputCalls int - CombinedOutputLog [][]string - RunScript []FakeRunAction - RunCalls int - RunLog [][]string - Dirs []string - Stdin io.Reader - Stdout io.Writer - Stderr io.Writer -} - -func InitFakeCmd(fake *FakeCmd, cmd string, args ...string) Cmd { - fake.Argv = append([]string{cmd}, args...) - return fake -} - -type FakeCombinedOutputAction func() ([]byte, error) -type FakeRunAction func() ([]byte, []byte, error) - -func (fake *FakeCmd) SetDir(dir string) { - fake.Dirs = append(fake.Dirs, dir) -} - -func (fake *FakeCmd) SetStdin(in io.Reader) { - fake.Stdin = in -} - -func (fake *FakeCmd) SetStdout(out io.Writer) { - fake.Stdout = out -} - -func (fake *FakeCmd) SetStderr(out io.Writer) { - fake.Stderr = out -} - -func (fake *FakeCmd) Run() error { - 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) { - if fake.CombinedOutputCalls > len(fake.CombinedOutputScript)-1 { - panic("ran out of CombinedOutput() actions") - } - if fake.CombinedOutputLog == nil { - fake.CombinedOutputLog = [][]string{} - } - i := fake.CombinedOutputCalls - fake.CombinedOutputLog = append(fake.CombinedOutputLog, append([]string{}, fake.Argv...)) - fake.CombinedOutputCalls++ - return fake.CombinedOutputScript[i]() -} - -func (fake *FakeCmd) Output() ([]byte, error) { - return nil, fmt.Errorf("unimplemented") -} - -func (fake *FakeCmd) Stop() { - // no-op -} - -// A simple fake ExitError type. -type FakeExitError struct { - Status int -} - -func (fake *FakeExitError) String() string { - return fmt.Sprintf("exit %d", fake.Status) -} - -func (fake *FakeExitError) Error() string { - return fake.String() -} - -func (fake *FakeExitError) Exited() bool { - return true -} - -func (fake *FakeExitError) ExitStatus() int { - return fake.Status -} diff --git a/vendor/k8s.io/utils/LICENSE b/vendor/k8s.io/utils/LICENSE new file mode 100644 index 000000000..d64569567 --- /dev/null +++ b/vendor/k8s.io/utils/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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. diff --git a/vendor/k8s.io/utils/README.md b/vendor/k8s.io/utils/README.md new file mode 100644 index 000000000..2504649ef --- /dev/null +++ b/vendor/k8s.io/utils/README.md @@ -0,0 +1,51 @@ +# Utils + +[![Build Status]](https://travis-ci.org/kubernetes/utils) + +A set of Go libraries that provide low-level, +kubernetes-independent packages supplementing the [Go +standard libs]. + +## Purpose + +As Kubernetes grows and spins functionality out of its +[core] and into cooperating repositories like +[apiserver], [kubectl], [kubeadm], etc., the need +arises for leaf repositories to house shared code and +avoid cycles in repository relationships. + +This repository is intended to hold shared utilities +with no Kubernetes dependence that may be of interest +to any Go project. See these [instructions for moving] +an existing package to this repository. + + +## Criteria for adding code here + +- Used by multiple Kubernetes repositories. + +- Full unit test coverage. + +- Go tools compliant (`go get`, `go test`, etc.). + +- Complex enough to be worth vendoring, rather than copying. + +- Stable, or backward compatible, API. + +- _No dependence on any Kubernetes repository_. + +## Libraries + +- [Exec](/exec) provides an interface for `os/exec`. It makes it easier + to mock and replace in tests, especially with + the [FakeExec](exec/testing/fake_exec.go) struct. + +[Build Status]: https://travis-ci.org/kubernetes/utils.svg?branch=master +[Go standard libs]: https://golang.org/pkg/#stdlib +[api]: https://github.com/kubernetes/api +[apiserver]: https://github.com/kubernetes/apiserver +[core]: https://github.com/kubernetes/kubernetes +[ingress]: https://github.com/kubernetes/ingress +[kubeadm]: https://github.com/kubernetes/kubeadm +[kubectl]: https://github.com/kubernetes/kubectl +[instructions for moving]: ./HOWTOMOVE.md diff --git a/vendor/k8s.io/kubernetes/pkg/util/exec/doc.go b/vendor/k8s.io/utils/exec/doc.go similarity index 86% rename from vendor/k8s.io/kubernetes/pkg/util/exec/doc.go rename to vendor/k8s.io/utils/exec/doc.go index de7301c8d..cbb44bdb5 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/exec/doc.go +++ b/vendor/k8s.io/utils/exec/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2014 The Kubernetes Authors. +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. @@ -15,4 +15,4 @@ limitations under the License. */ // Package exec provides an injectable interface and implementations for running commands. -package exec // import "k8s.io/kubernetes/pkg/util/exec" +package exec // import "k8s.io/utils/exec" diff --git a/vendor/k8s.io/kubernetes/pkg/util/exec/exec.go b/vendor/k8s.io/utils/exec/exec.go similarity index 94% rename from vendor/k8s.io/kubernetes/pkg/util/exec/exec.go rename to vendor/k8s.io/utils/exec/exec.go index f43bfa7a1..3b23eceb1 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/exec/exec.go +++ b/vendor/k8s.io/utils/exec/exec.go @@ -1,5 +1,5 @@ /* -Copyright 2014 The Kubernetes Authors. +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. @@ -26,7 +26,7 @@ import ( // ErrExecutableNotFound is returned if the executable is not found. var ErrExecutableNotFound = osexec.ErrNotFound -// Interface is an interface that presents a subset of the os/exec API. Use this +// Interface is an interface that presents a subset of the os/exec API. Use this // when you want to inject fakeable/mockable exec behavior. type Interface interface { // Command returns a Cmd instance which can be used to run a single command. @@ -38,13 +38,13 @@ type Interface interface { } // Cmd is an interface that presents an API that is very similar to Cmd from os/exec. -// As more functionality is needed, this can grow. Since Cmd is a struct, we will have +// As more functionality is needed, this can grow. Since Cmd is a struct, we will have // to replace fields with get/set method pairs. type Cmd interface { // Run runs the command to the completion. Run() error // CombinedOutput runs the command and returns its combined standard output - // and standard error. This follows the pattern of package os/exec. + // and standard error. This follows the pattern of package os/exec. CombinedOutput() ([]byte, error) // Output runs the command and returns standard output, but not standard err Output() ([]byte, error) @@ -60,7 +60,7 @@ type Cmd interface { } // ExitError is an interface that presents an API similar to os.ProcessState, which is -// what ExitError from os/exec is. This is designed to make testing a bit easier and +// what ExitError from os/exec is. This is designed to make testing a bit easier and // probably loses some of the cross-platform properties of the underlying library. type ExitError interface { String() string @@ -90,6 +90,8 @@ func (executor *executor) LookPath(file string) (string, error) { // Wraps exec.Cmd so we can capture errors. type cmdWrapper osexec.Cmd +var _ Cmd = &cmdWrapper{} + func (cmd *cmdWrapper) SetDir(dir string) { cmd.Dir = dir }