func (in *ManualUpdateStrategy) DeepCopy() *ManualUpdateStrategy {
	if in == nil {
		return nil
	}
	out := new(ManualUpdateStrategy)
	in.DeepCopyInto(out)
	return out
}
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManualUpdateStrategy.
package v1alpha1
import (
	v1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
	intstr "k8s.io/apimachinery/pkg/util/intstr"
)
func (in *AvailabilityPolicy) DeepCopyInto(out *AvailabilityPolicy) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	return
}
func (in *AvailabilityPolicy) DeepCopy() *AvailabilityPolicy {
	if in == nil {
		return nil
	}
	out := new(AvailabilityPolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *AvailabilityPolicy) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *AvailabilityPolicyList) DeepCopyInto(out *AvailabilityPolicyList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]AvailabilityPolicy, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *AvailabilityPolicyList) DeepCopy() *AvailabilityPolicyList {
	if in == nil {
		return nil
	}
	out := new(AvailabilityPolicyList)
	in.DeepCopyInto(out)
	return out
}
func (in *AvailabilityPolicyList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *AvailabilityPolicySpec) DeepCopyInto(out *AvailabilityPolicySpec) {
	*out = *in
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.MinAvailable != nil {
		in, out := &in.MinAvailable, &out.MinAvailable
		*out = new(intstr.IntOrString)
		**out = **in
	}
	if in.MaxUnavailable != nil {
		in, out := &in.MaxUnavailable, &out.MaxUnavailable
		*out = new(intstr.IntOrString)
		**out = **in
	}
	in.DeploymentStrategy.DeepCopyInto(&out.DeploymentStrategy)
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(v1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	return
}
func (in *AvailabilityPolicySpec) DeepCopy() *AvailabilityPolicySpec {
	if in == nil {
		return nil
	}
	out := new(AvailabilityPolicySpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ConfigPolicy) DeepCopyInto(out *ConfigPolicy) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *ConfigPolicy) DeepCopy() *ConfigPolicy {
	if in == nil {
		return nil
	}
	out := new(ConfigPolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *ConfigPolicy) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ConfigPolicyList) DeepCopyInto(out *ConfigPolicyList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ConfigPolicy, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *ConfigPolicyList) DeepCopy() *ConfigPolicyList {
	if in == nil {
		return nil
	}
	out := new(ConfigPolicyList)
	in.DeepCopyInto(out)
	return out
}
func (in *ConfigPolicyList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ConfigPolicySpec) DeepCopyInto(out *ConfigPolicySpec) {
	*out = *in
	if in.Args != nil {
		in, out := &in.Args, &out.Args
		*out = make([]string, 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.Env != nil {
		in, out := &in.Env, &out.Env
		*out = make([]v1.EnvVar, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.EnvFrom != nil {
		in, out := &in.EnvFrom, &out.EnvFrom
		*out = make([]v1.EnvFromSource, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.VolumeMounts != nil {
		in, out := &in.VolumeMounts, &out.VolumeMounts
		*out = make([]v1.VolumeMount, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Volumes != nil {
		in, out := &in.Volumes, &out.Volumes
		*out = make([]v1.Volume, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *ConfigPolicySpec) DeepCopy() *ConfigPolicySpec {
	if in == nil {
		return nil
	}
	out := new(ConfigPolicySpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ConfigPolicyStatus) DeepCopyInto(out *ConfigPolicyStatus) {
	*out = *in
	in.LastUpdatedTime.DeepCopyInto(&out.LastUpdatedTime)
	return
}
func (in *ConfigPolicyStatus) DeepCopy() *ConfigPolicyStatus {
	if in == nil {
		return nil
	}
	out := new(ConfigPolicyStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *ContainerRegistry) DeepCopyInto(out *ContainerRegistry) {
	*out = *in
	if in.ImagePullSecrets != nil {
		in, out := &in.ImagePullSecrets, &out.ImagePullSecrets
		*out = make([]v1.LocalObjectReference, len(*in))
		copy(*out, *in)
	}
	return
}
func (in *ContainerRegistry) DeepCopy() *ContainerRegistry {
	if in == nil {
		return nil
	}
	out := new(ContainerRegistry)
	in.DeepCopyInto(out)
	return out
}
func (in *Deployment) DeepCopyInto(out *Deployment) {
	*out = *in
	if in.ID != nil {
		in, out := &in.ID, &out.ID
		*out = new(int64)
		**out = **in
	}
	out.NetworkPolicy = in.NetworkPolicy
	if in.URL != nil {
		in, out := &in.URL, &out.URL
		*out = new(string)
		**out = **in
	}
	return
}
func (in *Deployment) DeepCopy() *Deployment {
	if in == nil {
		return nil
	}
	out := new(Deployment)
	in.DeepCopyInto(out)
	return out
}
func (in *Domain) DeepCopyInto(out *Domain) {
	*out = *in
	if in.SemVer != nil {
		in, out := &in.SemVer, &out.SemVer
		*out = new(SemVerRelease)
		**out = **in
	}
	return
}
func (in *Domain) DeepCopy() *Domain {
	if in == nil {
		return nil
	}
	out := new(Domain)
	in.DeepCopyInto(out)
	return out
}
func (in *ExternalDNS) DeepCopyInto(out *ExternalDNS) {
	*out = *in
	return
}
func (in *ExternalDNS) DeepCopy() *ExternalDNS {
	if in == nil {
		return nil
	}
	out := new(ExternalDNS)
	in.DeepCopyInto(out)
	return out
}
func (in *GitHubHook) DeepCopyInto(out *GitHubHook) {
	*out = *in
	if in.ID != nil {
		in, out := &in.ID, &out.ID
		*out = new(int64)
		**out = **in
	}
	return
}
func (in *GitHubHook) DeepCopy() *GitHubHook {
	if in == nil {
		return nil
	}
	out := new(GitHubHook)
	in.DeepCopyInto(out)
	return out
}
func (in *GitHubRelease) DeepCopyInto(out *GitHubRelease) {
	*out = *in
	in.ReleaseTime.DeepCopyInto(&out.ReleaseTime)
	if in.Deployment != nil {
		in, out := &in.Deployment, &out.Deployment
		*out = new(Deployment)
		(*in).DeepCopyInto(*out)
	}
	return
}
func (in *GitHubRelease) DeepCopy() *GitHubRelease {
	if in == nil {
		return nil
	}
	out := new(GitHubRelease)
	in.DeepCopyInto(out)
	return out
}
func (in *GitHubRepository) DeepCopyInto(out *GitHubRepository) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	out.Spec = in.Spec
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *GitHubRepository) DeepCopy() *GitHubRepository {
	if in == nil {
		return nil
	}
	out := new(GitHubRepository)
	in.DeepCopyInto(out)
	return out
}
func (in *GitHubRepository) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *GitHubRepositoryList) DeepCopyInto(out *GitHubRepositoryList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]GitHubRepository, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *GitHubRepositoryList) DeepCopy() *GitHubRepositoryList {
	if in == nil {
		return nil
	}
	out := new(GitHubRepositoryList)
	in.DeepCopyInto(out)
	return out
}
func (in *GitHubRepositoryList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *GitHubRepositorySpec) DeepCopyInto(out *GitHubRepositorySpec) {
	*out = *in
	out.ConfigSecret = in.ConfigSecret
	return
}
func (in *GitHubRepositorySpec) DeepCopy() *GitHubRepositorySpec {
	if in == nil {
		return nil
	}
	out := new(GitHubRepositorySpec)
	in.DeepCopyInto(out)
	return out
}
func (in *GitHubRepositoryStatus) DeepCopyInto(out *GitHubRepositoryStatus) {
	*out = *in
	if in.Releases != nil {
		in, out := &in.Releases, &out.Releases
		*out = make([]GitHubRelease, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Webhook != nil {
		in, out := &in.Webhook, &out.Webhook
		*out = new(GitHubHook)
		(*in).DeepCopyInto(*out)
	}
	return
}
func (in *GitHubRepositoryStatus) DeepCopy() *GitHubRepositoryStatus {
	if in == nil {
		return nil
	}
	out := new(GitHubRepositoryStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *HealthPolicy) DeepCopyInto(out *HealthPolicy) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	return
}
func (in *HealthPolicy) DeepCopy() *HealthPolicy {
	if in == nil {
		return nil
	}
	out := new(HealthPolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *HealthPolicy) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *HealthPolicyList) DeepCopyInto(out *HealthPolicyList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]HealthPolicy, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *HealthPolicyList) DeepCopy() *HealthPolicyList {
	if in == nil {
		return nil
	}
	out := new(HealthPolicyList)
	in.DeepCopyInto(out)
	return out
}
func (in *HealthPolicyList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *HealthPolicySpec) DeepCopyInto(out *HealthPolicySpec) {
	*out = *in
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(v1.Probe)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(v1.Probe)
		(*in).DeepCopyInto(*out)
	}
	return
}
func (in *HealthPolicySpec) DeepCopy() *HealthPolicySpec {
	if in == nil {
		return nil
	}
	out := new(HealthPolicySpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ImagePolicy) DeepCopyInto(out *ImagePolicy) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
	return
}
func (in *ImagePolicy) DeepCopy() *ImagePolicy {
	if in == nil {
		return nil
	}
	out := new(ImagePolicy)
	in.DeepCopyInto(out)
	return out
}
func (in *ImagePolicy) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ImagePolicyFilter) DeepCopyInto(out *ImagePolicyFilter) {
	*out = *in
	if in.GitHub != nil {
		in, out := &in.GitHub, &out.GitHub
		*out = new(v1.ObjectReference)
		**out = **in
	}
	return
}
func (in *ImagePolicyFilter) DeepCopy() *ImagePolicyFilter {
	if in == nil {
		return nil
	}
	out := new(ImagePolicyFilter)
	in.DeepCopyInto(out)
	return out
}
func (in *ImagePolicyList) DeepCopyInto(out *ImagePolicyList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.ListMeta = in.ListMeta
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]ImagePolicy, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *ImagePolicyList) DeepCopy() *ImagePolicyList {
	if in == nil {
		return nil
	}
	out := new(ImagePolicyList)
	in.DeepCopyInto(out)
	return out
}
func (in *ImagePolicyList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}
func (in *ImagePolicyMatch) DeepCopyInto(out *ImagePolicyMatch) {
	*out = *in
	if in.Name != nil {
		in, out := &in.Name, &out.Name
		*out = new(ImagePolicyMatchMapping)
		**out = **in
	}
	if in.Labels != nil {
		in, out := &in.Labels, &out.Labels
		*out = make(map[string]ImagePolicyMatchMapping, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	return
}
func (in *ImagePolicyMatch) DeepCopy() *ImagePolicyMatch {
	if in == nil {
		return nil
	}
	out := new(ImagePolicyMatch)
	in.DeepCopyInto(out)
	return out
}
func (in *ImagePolicyMatchMapping) DeepCopyInto(out *ImagePolicyMatchMapping) {
	*out = *in
	return
}
func (in *ImagePolicyMatchMapping) DeepCopy() *ImagePolicyMatchMapping {
	if in == nil {
		return nil
	}
	out := new(ImagePolicyMatchMapping)
	in.DeepCopyInto(out)
	return out
}
func (in *ImagePolicySpec) DeepCopyInto(out *ImagePolicySpec) {
	*out = *in
	if in.ImagePullPolicy != nil {
		in, out := &in.ImagePullPolicy, &out.ImagePullPolicy
		*out = new(v1.PullPolicy)
		**out = **in
	}
	out.VersioningPolicy = in.VersioningPolicy
	in.Filter.DeepCopyInto(&out.Filter)
	if in.Match != nil {
		in, out := &in.Match, &out.Match
		*out = new(ImagePolicyMatch)
		(*in).DeepCopyInto(*out)
	}
	if in.ContainerRegistry != nil {
		in, out := &in.ContainerRegistry, &out.ContainerRegistry
		*out = new(ContainerRegistry)
		(*in).DeepCopyInto(*out)
	}
	return
}
func (in *ImagePolicySpec) DeepCopy() *ImagePolicySpec {
	if in == nil {
		return nil
	}
	out := new(ImagePolicySpec)
	in.DeepCopyInto(out)
	return out
}
func (in *ImagePolicyStatus) DeepCopyInto(out *ImagePolicyStatus) {
	*out = *in
	if in.Releases != nil {
		in, out := &in.Releases, &out.Releases
		*out = make([]Release, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	return
}
func (in *ImagePolicyStatus) DeepCopy() *ImagePolicyStatus {
	if in == nil {
		return nil
	}
	out := new(ImagePolicyStatus)
	in.DeepCopyInto(out)
	return out
}
func (in *LatestUpdateStrategy) DeepCopyInto(out *LatestUpdateStrategy) {
	*out = *in
	return
}
func (in *LatestUpdateStrategy) DeepCopy() *LatestUpdateStrategy {
	if in == nil {
		return nil
	}
	out := new(LatestUpdateStrategy)
	in.DeepCopyInto(out)
	return out
}
func (in *ManualUpdateStrategy) DeepCopyInto(out *ManualUpdateStrategy) {
	*out = *in
	if in.SemVer != nil {
		in, out := &in.SemVer, &out.SemVer
		*out = new(SemVerRelease)
		**out = **in
	}
	return
}