pkg/applyconfiguration/utils.go (75 lines of code) (raw):
// Copyright Istio Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by applyconfiguration-gen. DO NOT EDIT.
package applyconfiguration
import (
v1alpha1 "istio.io/client-go/pkg/apis/extensions/v1alpha1"
v1beta1 "istio.io/client-go/pkg/apis/istio/v1beta1"
v1alpha3 "istio.io/client-go/pkg/apis/networking/v1alpha3"
networkingv1beta1 "istio.io/client-go/pkg/apis/networking/v1beta1"
securityv1beta1 "istio.io/client-go/pkg/apis/security/v1beta1"
telemetryv1alpha1 "istio.io/client-go/pkg/apis/telemetry/v1alpha1"
extensionsv1alpha1 "istio.io/client-go/pkg/applyconfiguration/extensions/v1alpha1"
istiov1beta1 "istio.io/client-go/pkg/applyconfiguration/istio/v1beta1"
metav1 "istio.io/client-go/pkg/applyconfiguration/meta/v1"
networkingv1alpha3 "istio.io/client-go/pkg/applyconfiguration/networking/v1alpha3"
applyconfigurationnetworkingv1beta1 "istio.io/client-go/pkg/applyconfiguration/networking/v1beta1"
applyconfigurationsecurityv1beta1 "istio.io/client-go/pkg/applyconfiguration/security/v1beta1"
applyconfigurationtelemetryv1alpha1 "istio.io/client-go/pkg/applyconfiguration/telemetry/v1alpha1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
schema "k8s.io/apimachinery/pkg/runtime/schema"
)
// ForKind returns an apply configuration type for the given GroupVersionKind, or nil if no
// apply configuration type exists for the given GroupVersionKind.
func ForKind(kind schema.GroupVersionKind) interface{} {
switch kind {
// Group=extensions.istio.io, Version=v1alpha1
case v1alpha1.SchemeGroupVersion.WithKind("WasmPlugin"):
return &extensionsv1alpha1.WasmPluginApplyConfiguration{}
// Group=istio.alibabacloud.com, Version=v1beta1
case v1beta1.SchemeGroupVersion.WithKind("TrafficLabel"):
return &istiov1beta1.TrafficLabelApplyConfiguration{}
// Group=meta.k8s.io, Version=v1
case v1.SchemeGroupVersion.WithKind("ManagedFieldsEntry"):
return &metav1.ManagedFieldsEntryApplyConfiguration{}
case v1.SchemeGroupVersion.WithKind("ObjectMeta"):
return &metav1.ObjectMetaApplyConfiguration{}
case v1.SchemeGroupVersion.WithKind("OwnerReference"):
return &metav1.OwnerReferenceApplyConfiguration{}
case v1.SchemeGroupVersion.WithKind("TypeMeta"):
return &metav1.TypeMetaApplyConfiguration{}
// Group=networking.istio.io, Version=v1alpha3
case v1alpha3.SchemeGroupVersion.WithKind("DestinationRule"):
return &networkingv1alpha3.DestinationRuleApplyConfiguration{}
case v1alpha3.SchemeGroupVersion.WithKind("EnvoyFilter"):
return &networkingv1alpha3.EnvoyFilterApplyConfiguration{}
case v1alpha3.SchemeGroupVersion.WithKind("Gateway"):
return &networkingv1alpha3.GatewayApplyConfiguration{}
case v1alpha3.SchemeGroupVersion.WithKind("ServiceEntry"):
return &networkingv1alpha3.ServiceEntryApplyConfiguration{}
case v1alpha3.SchemeGroupVersion.WithKind("Sidecar"):
return &networkingv1alpha3.SidecarApplyConfiguration{}
case v1alpha3.SchemeGroupVersion.WithKind("VirtualService"):
return &networkingv1alpha3.VirtualServiceApplyConfiguration{}
case v1alpha3.SchemeGroupVersion.WithKind("WorkloadEntry"):
return &networkingv1alpha3.WorkloadEntryApplyConfiguration{}
case v1alpha3.SchemeGroupVersion.WithKind("WorkloadGroup"):
return &networkingv1alpha3.WorkloadGroupApplyConfiguration{}
// Group=networking.istio.io, Version=v1beta1
case networkingv1beta1.SchemeGroupVersion.WithKind("DestinationRule"):
return &applyconfigurationnetworkingv1beta1.DestinationRuleApplyConfiguration{}
case networkingv1beta1.SchemeGroupVersion.WithKind("Gateway"):
return &applyconfigurationnetworkingv1beta1.GatewayApplyConfiguration{}
case networkingv1beta1.SchemeGroupVersion.WithKind("ProxyConfig"):
return &applyconfigurationnetworkingv1beta1.ProxyConfigApplyConfiguration{}
case networkingv1beta1.SchemeGroupVersion.WithKind("ServiceEntry"):
return &applyconfigurationnetworkingv1beta1.ServiceEntryApplyConfiguration{}
case networkingv1beta1.SchemeGroupVersion.WithKind("Sidecar"):
return &applyconfigurationnetworkingv1beta1.SidecarApplyConfiguration{}
case networkingv1beta1.SchemeGroupVersion.WithKind("VirtualService"):
return &applyconfigurationnetworkingv1beta1.VirtualServiceApplyConfiguration{}
case networkingv1beta1.SchemeGroupVersion.WithKind("WorkloadEntry"):
return &applyconfigurationnetworkingv1beta1.WorkloadEntryApplyConfiguration{}
case networkingv1beta1.SchemeGroupVersion.WithKind("WorkloadGroup"):
return &applyconfigurationnetworkingv1beta1.WorkloadGroupApplyConfiguration{}
// Group=security.istio.io, Version=v1beta1
case securityv1beta1.SchemeGroupVersion.WithKind("AuthorizationPolicy"):
return &applyconfigurationsecurityv1beta1.AuthorizationPolicyApplyConfiguration{}
case securityv1beta1.SchemeGroupVersion.WithKind("PeerAuthentication"):
return &applyconfigurationsecurityv1beta1.PeerAuthenticationApplyConfiguration{}
case securityv1beta1.SchemeGroupVersion.WithKind("RequestAuthentication"):
return &applyconfigurationsecurityv1beta1.RequestAuthenticationApplyConfiguration{}
// Group=telemetry.istio.io, Version=v1alpha1
case telemetryv1alpha1.SchemeGroupVersion.WithKind("Telemetry"):
return &applyconfigurationtelemetryv1alpha1.TelemetryApplyConfiguration{}
}
return nil
}