func (in *DockerRegistryList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
package v1alpha1
import (
	corev1 "k8s.io/api/core/v1"
	"k8s.io/api/rbac/v1"
	"k8s.io/apimachinery/pkg/runtime"
)
func (in *ACMECloudFlareIssuer) DeepCopyInto(out *ACMECloudFlareIssuer) {
	*out = *in
}
func (in *ACMECloudFlareIssuer) DeepCopy() *ACMECloudFlareIssuer {
	if in == nil {
		return nil
	}
	out := new(ACMECloudFlareIssuer)
	in.DeepCopyInto(out)
	return out
}
func (in *ACMEServer) DeepCopyInto(out *ACMEServer) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	out.Spec = in.Spec
	out.Status = in.Status
}
func (in *ACMEServer) DeepCopy() *ACMEServer {
	if in == nil {
		return nil
	}
	out := new(ACMEServer)
	in.DeepCopyInto(out)
	return out
}
func (in *ACMEServer) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ACMEServerList) DeepCopyInto(out *ACMEServerList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ACMEServer, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *ACMEServerList) DeepCopy() *ACMEServerList {
	if in == nil {
		return nil
	}
	out := new(ACMEServerList)
	in.DeepCopyInto(out)
	return out
}
func (in *ACMEServerList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ACMEServerSpec) DeepCopyInto(out *ACMEServerSpec) {
	*out = *in
}
func (in *ACMEServerSpec) DeepCopy() *ACMEServerSpec {
	if in == nil {
		return nil
	}
	out := new(ACMEServerSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ACMEServerStatus) DeepCopyInto(out *ACMEServerStatus) {
	*out = *in
}
func (in *ACMEServerStatus) DeepCopy() *ACMEServerStatus {
	if in == nil {
		return nil
	}
	out := new(ACMEServerStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *AccessToken) DeepCopyInto(out *AccessToken) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *AccessToken) DeepCopy() *AccessToken {
	if in == nil {
		return nil
	}
	out := new(AccessToken)
	in.DeepCopyInto(out)
	return out
}
func (in *AccessToken) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *AccessTokenList) DeepCopyInto(out *AccessTokenList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]AccessToken, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *AccessTokenList) DeepCopy() *AccessTokenList {
	if in == nil {
		return nil
	}
	out := new(AccessTokenList)
	in.DeepCopyInto(out)
	return out
}
func (in *AccessTokenList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *AccessTokenRule) DeepCopyInto(out *AccessTokenRule) {
	*out = *in
}
func (in *AccessTokenRule) DeepCopy() *AccessTokenRule {
	if in == nil {
		return nil
	}
	out := new(AccessTokenRule)
	in.DeepCopyInto(out)
	return out
}
func (in *AccessTokenSpec) DeepCopyInto(out *AccessTokenSpec) {
	*out = *in
	if in.Rules != nil {
		in, out := &in.Rules, &out.Rules
		*out = make([]AccessTokenRule, len(*in))
		copy(*out, *in)
	}
	if in.ExpiredAt != nil {
		in, out := &in.ExpiredAt, &out.ExpiredAt
		*out = (*in).DeepCopy()
	}
}
func (in *AccessTokenSpec) DeepCopy() *AccessTokenSpec {
	if in == nil {
		return nil
	}
	out := new(AccessTokenSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *AccessTokenStatus) DeepCopyInto(out *AccessTokenStatus) {
	*out = *in
}
func (in *AccessTokenStatus) DeepCopy() *AccessTokenStatus {
	if in == nil {
		return nil
	}
	out := new(AccessTokenStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *CAForTestIssuer) DeepCopyInto(out *CAForTestIssuer) {
	*out = *in
}
func (in *CAForTestIssuer) DeepCopy() *CAForTestIssuer {
	if in == nil {
		return nil
	}
	out := new(CAForTestIssuer)
	in.DeepCopyInto(out)
	return out
}
func (in *Component) DeepCopyInto(out *Component) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *Component) DeepCopy() *Component {
	if in == nil {
		return nil
	}
	out := new(Component)
	in.DeepCopyInto(out)
	return out
}
func (in *Component) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentList) DeepCopyInto(out *ComponentList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]Component, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *ComponentList) DeepCopy() *ComponentList {
	if in == nil {
		return nil
	}
	out := new(ComponentList)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentPlugin) DeepCopyInto(out *ComponentPlugin) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *ComponentPlugin) DeepCopy() *ComponentPlugin {
	if in == nil {
		return nil
	}
	out := new(ComponentPlugin)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentPlugin) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentPluginBinding) DeepCopyInto(out *ComponentPluginBinding) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	out.Status = in.Status
}
func (in *ComponentPluginBinding) DeepCopy() *ComponentPluginBinding {
	if in == nil {
		return nil
	}
	out := new(ComponentPluginBinding)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentPluginBinding) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentPluginBindingList) DeepCopyInto(out *ComponentPluginBindingList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ComponentPluginBinding, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *ComponentPluginBindingList) DeepCopy() *ComponentPluginBindingList {
	if in == nil {
		return nil
	}
	out := new(ComponentPluginBindingList)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentPluginBindingList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentPluginBindingSpec) DeepCopyInto(out *ComponentPluginBindingSpec) {
	*out = *in
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(runtime.RawExtension)
		(*in).DeepCopyInto(*out)
	}
}
func (in *ComponentPluginBindingSpec) DeepCopy() *ComponentPluginBindingSpec {
	if in == nil {
		return nil
	}
	out := new(ComponentPluginBindingSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentPluginBindingStatus) DeepCopyInto(out *ComponentPluginBindingStatus) {
	*out = *in
}
func (in *ComponentPluginBindingStatus) DeepCopy() *ComponentPluginBindingStatus {
	if in == nil {
		return nil
	}
	out := new(ComponentPluginBindingStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentPluginList) DeepCopyInto(out *ComponentPluginList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ComponentPlugin, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *ComponentPluginList) DeepCopy() *ComponentPluginList {
	if in == nil {
		return nil
	}
	out := new(ComponentPluginList)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentPluginList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentPluginSpec) DeepCopyInto(out *ComponentPluginSpec) {
	*out = *in
	if in.AvailableWorkloadType != nil {
		in, out := &in.AvailableWorkloadType, &out.AvailableWorkloadType
		*out = make([]WorkloadType, len(*in))
		copy(*out, *in)
	}
	if in.ConfigSchema != nil {
		in, out := &in.ConfigSchema, &out.ConfigSchema
		*out = new(runtime.RawExtension)
		(*in).DeepCopyInto(*out)
	}
}
func (in *ComponentPluginSpec) DeepCopy() *ComponentPluginSpec {
	if in == nil {
		return nil
	}
	out := new(ComponentPluginSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentPluginStatus) DeepCopyInto(out *ComponentPluginStatus) {
	*out = *in
}
func (in *ComponentPluginStatus) DeepCopy() *ComponentPluginStatus {
	if in == nil {
		return nil
	}
	out := new(ComponentPluginStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentSpec) DeepCopyInto(out *ComponentSpec) {
	*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.Env != nil {
		in, out := &in.Env, &out.Env
		*out = make([]EnvVar, len(*in))
		copy(*out, *in)
	}
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.NodeSelectorLabels != nil {
		in, out := &in.NodeSelectorLabels, &out.NodeSelectorLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.StartAfterComponents != nil {
		in, out := &in.StartAfterComponents, &out.StartAfterComponents
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Ports != nil {
		in, out := &in.Ports, &out.Ports
		*out = make([]Port, len(*in))
		copy(*out, *in)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(corev1.Probe)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(corev1.Probe)
		(*in).DeepCopyInto(*out)
	}
	if in.ResourceRequirements != nil {
		in, out := &in.ResourceRequirements, &out.ResourceRequirements
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.IstioResourceRequirements != nil {
		in, out := &in.IstioResourceRequirements, &out.IstioResourceRequirements
		*out = new(corev1.ResourceRequirements)
		(*in).DeepCopyInto(*out)
	}
	if in.TerminationGracePeriodSeconds != nil {
		in, out := &in.TerminationGracePeriodSeconds, &out.TerminationGracePeriodSeconds
		*out = new(int64)
		**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.RunnerPermission != nil {
		in, out := &in.RunnerPermission, &out.RunnerPermission
		*out = new(RunnerPermission)
		(*in).DeepCopyInto(*out)
	}
	if in.PreInjectedFiles != nil {
		in, out := &in.PreInjectedFiles, &out.PreInjectedFiles
		*out = make([]PreInjectFile, len(*in))
		copy(*out, *in)
	}
}
func (in *ComponentSpec) DeepCopy() *ComponentSpec {
	if in == nil {
		return nil
	}
	out := new(ComponentSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus) {
	*out = *in
}
func (in *ComponentStatus) DeepCopy() *ComponentStatus {
	if in == nil {
		return nil
	}
	out := new(ComponentStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentTemplate) DeepCopyInto(out *ComponentTemplate) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
}
func (in *ComponentTemplate) DeepCopy() *ComponentTemplate {
	if in == nil {
		return nil
	}
	out := new(ComponentTemplate)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentTemplate) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentTemplateList) DeepCopyInto(out *ComponentTemplateList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ComponentTemplate, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *ComponentTemplateList) DeepCopy() *ComponentTemplateList {
	if in == nil {
		return nil
	}
	out := new(ComponentTemplateList)
	in.DeepCopyInto(out)
	return out
}
func (in *ComponentTemplateList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ComponentTemplateSpec) DeepCopyInto(out *ComponentTemplateSpec) {
	*out = *in
	if in.Env != nil {
		in, out := &in.Env, &out.Env
		*out = make([]EnvVar, len(*in))
		copy(*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([]Port, len(*in))
		copy(*out, *in)
	}
	if in.BeforeStart != nil {
		in, out := &in.BeforeStart, &out.BeforeStart
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.AfterStart != nil {
		in, out := &in.AfterStart, &out.AfterStart
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.BeforeDestroy != nil {
		in, out := &in.BeforeDestroy, &out.BeforeDestroy
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	out.CPU = in.CPU.DeepCopy()
	out.Memory = in.Memory.DeepCopy()
	if in.VolumeMounts != nil {
		in, out := &in.VolumeMounts, &out.VolumeMounts
		*out = make([]corev1.VolumeMount, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *ComponentTemplateSpec) DeepCopy() *ComponentTemplateSpec {
	if in == nil {
		return nil
	}
	out := new(ComponentTemplateSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *Config) DeepCopyInto(out *Config) {
	*out = *in
	if in.Paths != nil {
		in, out := &in.Paths, &out.Paths
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}
func (in *Config) DeepCopy() *Config {
	if in == nil {
		return nil
	}
	out := new(Config)
	in.DeepCopyInto(out)
	return out
}
func (in *DNS01Issuer) DeepCopyInto(out *DNS01Issuer) {
	*out = *in
	if in.Configs != nil {
		in, out := &in.Configs, &out.Configs
		*out = make(map[string]DNS01IssuerConfig, len(*in))
		for key, val := range *in {
			(*out)[key] = *val.DeepCopy()
		}
	}
}
func (in *DNS01Issuer) DeepCopy() *DNS01Issuer {
	if in == nil {
		return nil
	}
	out := new(DNS01Issuer)
	in.DeepCopyInto(out)
	return out
}
func (in *DNS01IssuerConfig) DeepCopyInto(out *DNS01IssuerConfig) {
	*out = *in
	if in.AllowFrom != nil {
		in, out := &in.AllowFrom, &out.AllowFrom
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}
func (in *DNS01IssuerConfig) DeepCopy() *DNS01IssuerConfig {
	if in == nil {
		return nil
	}
	out := new(DNS01IssuerConfig)
	in.DeepCopyInto(out)
	return out
}
func (in *DNSRecord) DeepCopyInto(out *DNSRecord) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	out.Spec = in.Spec
	out.Status = in.Status
}
func (in *DNSRecord) DeepCopy() *DNSRecord {
	if in == nil {
		return nil
	}
	out := new(DNSRecord)
	in.DeepCopyInto(out)
	return out
}
func (in *DNSRecord) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *DNSRecordList) DeepCopyInto(out *DNSRecordList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]DNSRecord, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *DNSRecordList) DeepCopy() *DNSRecordList {
	if in == nil {
		return nil
	}
	out := new(DNSRecordList)
	in.DeepCopyInto(out)
	return out
}
func (in *DNSRecordList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *DNSRecordSpec) DeepCopyInto(out *DNSRecordSpec) {
	*out = *in
}
func (in *DNSRecordSpec) DeepCopy() *DNSRecordSpec {
	if in == nil {
		return nil
	}
	out := new(DNSRecordSpec)
	in.DeepCopyInto(out)
	return out
}
func (in *DNSRecordStatus) DeepCopyInto(out *DNSRecordStatus) {
	*out = *in
}
func (in *DNSRecordStatus) DeepCopy() *DNSRecordStatus {
	if in == nil {
		return nil
	}
	out := new(DNSRecordStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *DexConnector) DeepCopyInto(out *DexConnector) {
	*out = *in
	if in.Config != nil {
		in, out := &in.Config, &out.Config
		*out = new(runtime.RawExtension)
		(*in).DeepCopyInto(*out)
	}
}
func (in *DexConnector) DeepCopy() *DexConnector {
	if in == nil {
		return nil
	}
	out := new(DexConnector)
	in.DeepCopyInto(out)
	return out
}
func (in *DirectConfig) DeepCopyInto(out *DirectConfig) {
	*out = *in
}
func (in *DirectConfig) DeepCopy() *DirectConfig {
	if in == nil {
		return nil
	}
	out := new(DirectConfig)
	in.DeepCopyInto(out)
	return out
}
func (in *DockerRegistry) DeepCopyInto(out *DockerRegistry) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}
func (in *DockerRegistry) DeepCopy() *DockerRegistry {
	if in == nil {
		return nil
	}
	out := new(DockerRegistry)
	in.DeepCopyInto(out)
	return out
}
func (in *DockerRegistry) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *DockerRegistryList) DeepCopyInto(out *DockerRegistryList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]DockerRegistry, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}
func (in *DockerRegistryList) DeepCopy() *DockerRegistryList {
	if in == nil {
		return nil
	}
	out := new(DockerRegistryList)
	in.DeepCopyInto(out)
	return out
}