v1alpha1

package
v0.10.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2024 License: Apache-2.0 Imports: 14 Imported by: 13

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the argoproj.io v1alpha1 API group +kubebuilder:object:generate=true +groupName=argoproj.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "argoproj.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func ConvertAlphaToBetaApplicationSet added in v0.8.0

func ConvertAlphaToBetaApplicationSet(src *ArgoCDApplicationSet) *v1beta1.ArgoCDApplicationSet

func ConvertAlphaToBetaController added in v0.8.0

Conversion funcs for v1alpha1 to v1beta1.

func ConvertAlphaToBetaDex added in v0.9.0

func ConvertAlphaToBetaDex(src *ArgoCDDexSpec) *v1beta1.ArgoCDDexSpec

func ConvertAlphaToBetaGRPC added in v0.8.0

func ConvertAlphaToBetaGRPC(src *ArgoCDServerGRPCSpec) *v1beta1.ArgoCDServerGRPCSpec

func ConvertAlphaToBetaGrafana added in v0.8.0

func ConvertAlphaToBetaGrafana(src *ArgoCDGrafanaSpec) *v1beta1.ArgoCDGrafanaSpec

func ConvertAlphaToBetaHA added in v0.8.0

func ConvertAlphaToBetaHA(src *ArgoCDHASpec) *v1beta1.ArgoCDHASpec

func ConvertAlphaToBetaKustomizeVersions added in v0.8.0

func ConvertAlphaToBetaKustomizeVersions(src []KustomizeVersionSpec) []v1beta1.KustomizeVersionSpec

func ConvertAlphaToBetaPrometheus added in v0.8.0

func ConvertAlphaToBetaPrometheus(src *ArgoCDPrometheusSpec) *v1beta1.ArgoCDPrometheusSpec

func ConvertAlphaToBetaRedis added in v0.9.0

func ConvertAlphaToBetaRedis(src *ArgoCDRedisSpec) *v1beta1.ArgoCDRedisSpec

func ConvertAlphaToBetaRepo added in v0.9.0

func ConvertAlphaToBetaRepo(src *ArgoCDRepoSpec) *v1beta1.ArgoCDRepoSpec

func ConvertAlphaToBetaResourceActions added in v0.8.0

func ConvertAlphaToBetaResourceActions(src []ResourceAction) []v1beta1.ResourceAction

func ConvertAlphaToBetaResourceHealthChecks added in v0.8.0

func ConvertAlphaToBetaResourceHealthChecks(src []ResourceHealthCheck) []v1beta1.ResourceHealthCheck

func ConvertAlphaToBetaResourceIdentifiers added in v0.8.0

func ConvertAlphaToBetaResourceIdentifiers(src []ResourceIdentifiers) []v1beta1.ResourceIdentifiers

func ConvertAlphaToBetaResourceIgnoreDifferences added in v0.8.0

func ConvertAlphaToBetaResourceIgnoreDifferences(src *ResourceIgnoreDifference) *v1beta1.ResourceIgnoreDifference

func ConvertAlphaToBetaSSO added in v0.8.0

func ConvertAlphaToBetaSSO(src *ArgoCDSSOSpec) *v1beta1.ArgoCDSSOSpec

func ConvertAlphaToBetaServer added in v0.8.0

func ConvertAlphaToBetaServer(src *ArgoCDServerSpec) *v1beta1.ArgoCDServerSpec

func ConvertAlphaToBetaTLS added in v0.8.0

func ConvertAlphaToBetaTLS(src *ArgoCDTLSSpec) *v1beta1.ArgoCDTLSSpec

func ConvertAlphaToBetaWebhookServer added in v0.8.0

func ConvertAlphaToBetaWebhookServer(src *WebhookServerSpec) *v1beta1.WebhookServerSpec

Types

type ArgoCD

type ArgoCD struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ArgoCDSpec   `json:"spec,omitempty"`
	Status ArgoCDStatus `json:"status,omitempty"`
}

ArgoCD is the Schema for the argocds API +k8s:openapi-gen=true +kubebuilder:subresource:status +operator-sdk:csv:customresourcedefinitions:resources={{ArgoCD,v1alpha1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ArgoCDExport,v1alpha1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ConfigMap,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{CronJob,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Deployment,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Ingress,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Job,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{PersistentVolumeClaim,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Pod,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Prometheus,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ReplicaSet,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Route,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Secret,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Service,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ServiceMonitor,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{StatefulSet,v1,""}}

func (*ArgoCD) ApplicationInstanceLabelKey

func (a *ArgoCD) ApplicationInstanceLabelKey() string

ApplicationInstanceLabelKey returns either the custom application instance label key if set, or the default value.

func (*ArgoCD) ConvertFrom added in v0.8.0

func (dst *ArgoCD) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the Hub version (v1beta1) to this (v1alpha1) version.

func (*ArgoCD) ConvertTo added in v0.8.0

func (src *ArgoCD) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this (v1alpha1) ArgoCD to the Hub version (v1beta1).

func (*ArgoCD) DeepCopy

func (in *ArgoCD) DeepCopy() *ArgoCD

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCD.

func (*ArgoCD) DeepCopyInto

func (in *ArgoCD) DeepCopyInto(out *ArgoCD)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArgoCD) DeepCopyObject

func (in *ArgoCD) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ArgoCD) IsDeletionFinalizerPresent

func (argocd *ArgoCD) IsDeletionFinalizerPresent() bool

IsDeletionFinalizerPresent checks if the instance has deletion finalizer

type ArgoCDApplicationControllerProcessorsSpec

type ArgoCDApplicationControllerProcessorsSpec struct {
	// Operation is the number of application operation processors.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Operation Processor Count'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Controller","urn:alm:descriptor:com.tectonic.ui:number"}
	Operation int32 `json:"operation,omitempty"`

	// Status is the number of application status processors.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Status Processor Count'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Controller","urn:alm:descriptor:com.tectonic.ui:number"}
	Status int32 `json:"status,omitempty"`
}

ArgoCDApplicationControllerProcessorsSpec defines the options for the ArgoCD Application Controller processors.

func (*ArgoCDApplicationControllerProcessorsSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDApplicationControllerProcessorsSpec.

func (*ArgoCDApplicationControllerProcessorsSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDApplicationControllerShardSpec

type ArgoCDApplicationControllerShardSpec struct {

	// Enabled defines whether sharding should be enabled on the Application Controller component.
	Enabled bool `json:"enabled,omitempty"`

	// Replicas defines the number of replicas to run in the Application controller shard.
	Replicas int32 `json:"replicas,omitempty"`

	// DynamicScalingEnabled defines whether dynamic scaling should be enabled for Application Controller component
	DynamicScalingEnabled *bool `json:"dynamicScalingEnabled,omitempty"`

	// MinShards defines the minimum number of shards at any given point
	// +kubebuilder:validation:Minimum=1
	MinShards int32 `json:"minShards,omitempty"`

	// MaxShards defines the maximum number of shards at any given point
	MaxShards int32 `json:"maxShards,omitempty"`

	// ClustersPerShard defines the maximum number of clusters managed by each argocd shard
	// +kubebuilder:validation:Minimum=1
	ClustersPerShard int32 `json:"clustersPerShard,omitempty"`
}

ArgoCDApplicationControllerShardSpec defines the options available for enabling sharding for the Application Controller component.

func (*ArgoCDApplicationControllerShardSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDApplicationControllerShardSpec.

func (*ArgoCDApplicationControllerShardSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDApplicationControllerSpec

type ArgoCDApplicationControllerSpec struct {
	// Processors contains the options for the Application Controller processors.
	Processors ArgoCDApplicationControllerProcessorsSpec `json:"processors,omitempty"`

	// LogLevel refers to the log level used by the Application Controller component. Defaults to ArgoCDDefaultLogLevel if not configured. Valid options are debug, info, error, and warn.
	LogLevel string `json:"logLevel,omitempty"`

	// LogFormat refers to the log format used by the Application Controller component. Defaults to ArgoCDDefaultLogFormat if not configured. Valid options are text or json.
	LogFormat string `json:"logFormat,omitempty"`

	// Resources defines the Compute Resources required by the container for the Application Controller.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Controller","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"}
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// ParallelismLimit defines the limit for parallel kubectl operations
	ParallelismLimit int32 `json:"parallelismLimit,omitempty"`

	// AppSync is used to control the sync frequency, by default the ArgoCD
	// controller polls Git every 3m.
	//
	// Set this to a duration, e.g. 10m or 600s to control the synchronisation
	// frequency.
	// +optional
	AppSync *metav1.Duration `json:"appSync,omitempty"`

	// Sharding contains the options for the Application Controller sharding configuration.
	Sharding ArgoCDApplicationControllerShardSpec `json:"sharding,omitempty"`

	// Env lets you specify environment for application controller pods
	Env []corev1.EnvVar `json:"env,omitempty"`
}

ArgoCDApplicationControllerSpec defines the options for the ArgoCD Application Controller component.

func ConvertBetaToAlphaController added in v0.8.0

Conversion funcs for v1beta1 to v1alpha1.

func (*ArgoCDApplicationControllerSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDApplicationControllerSpec.

func (*ArgoCDApplicationControllerSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDApplicationSet

type ArgoCDApplicationSet struct {

	// Env lets you specify environment for applicationSet controller pods
	Env []corev1.EnvVar `json:"env,omitempty"`

	// ExtraCommandArgs allows users to pass command line arguments to ApplicationSet controller.
	// They get added to default command line arguments provided by the operator.
	// Please note that the command line arguments provided as part of ExtraCommandArgs
	// will not overwrite the default command line arguments.
	ExtraCommandArgs []string `json:"extraCommandArgs,omitempty"`

	// Image is the Argo CD ApplicationSet image (optional)
	Image string `json:"image,omitempty"`

	// Version is the Argo CD ApplicationSet image tag. (optional)
	Version string `json:"version,omitempty"`

	// Resources defines the Compute Resources required by the container for ApplicationSet.
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// LogLevel describes the log level that should be used by the ApplicationSet controller. Defaults to ArgoCDDefaultLogLevel if not set.  Valid options are debug,info, error, and warn.
	LogLevel string `json:"logLevel,omitempty"`

	WebhookServer WebhookServerSpec `json:"webhookServer,omitempty"`
}

ArgoCDApplicationSet defines whether the Argo CD ApplicationSet controller should be installed.

func ConvertBetaToAlphaApplicationSet added in v0.8.0

func ConvertBetaToAlphaApplicationSet(src *v1beta1.ArgoCDApplicationSet) *ArgoCDApplicationSet

func (*ArgoCDApplicationSet) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDApplicationSet.

func (*ArgoCDApplicationSet) DeepCopyInto

func (in *ArgoCDApplicationSet) DeepCopyInto(out *ArgoCDApplicationSet)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDCASpec

type ArgoCDCASpec struct {
	// ConfigMapName is the name of the ConfigMap containing the CA Certificate.
	ConfigMapName string `json:"configMapName,omitempty"`

	// SecretName is the name of the Secret containing the CA Certificate and Key.
	SecretName string `json:"secretName,omitempty"`
}

ArgoCDCASpec defines the CA options for ArgCD.

func (*ArgoCDCASpec) DeepCopy

func (in *ArgoCDCASpec) DeepCopy() *ArgoCDCASpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDCASpec.

func (*ArgoCDCASpec) DeepCopyInto

func (in *ArgoCDCASpec) DeepCopyInto(out *ArgoCDCASpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDCertificateSpec

type ArgoCDCertificateSpec struct {
	// SecretName is the name of the Secret containing the Certificate and Key.
	SecretName string `json:"secretName"`
}

ArgoCDCertificateSpec defines the options for the ArgoCD certificates.

func (*ArgoCDCertificateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDCertificateSpec.

func (*ArgoCDCertificateSpec) DeepCopyInto

func (in *ArgoCDCertificateSpec) DeepCopyInto(out *ArgoCDCertificateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDDexSpec

type ArgoCDDexSpec struct {
	//Config is the dex connector configuration.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Configuration",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex","urn:alm:descriptor:com.tectonic.ui:text"}
	Config string `json:"config,omitempty"`

	// Optional list of required groups a user must be a member of
	Groups []string `json:"groups,omitempty"`

	// Image is the Dex container image.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex","urn:alm:descriptor:com.tectonic.ui:text"}
	Image string `json:"image,omitempty"`

	// OpenShiftOAuth enables OpenShift OAuth authentication for the Dex server.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="OpenShift OAuth Enabled'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	OpenShiftOAuth bool `json:"openShiftOAuth,omitempty"`

	// Resources defines the Compute Resources required by the container for Dex.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"}
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// Version is the Dex container image tag.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Version",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex","urn:alm:descriptor:com.tectonic.ui:text"}
	Version string `json:"version,omitempty"`
}

ArgoCDDexSpec defines the desired state for the Dex server component.

func ConvertBetaToAlphaDex added in v0.9.0

func ConvertBetaToAlphaDex(src *v1beta1.ArgoCDDexSpec) *ArgoCDDexSpec

func (*ArgoCDDexSpec) DeepCopy

func (in *ArgoCDDexSpec) DeepCopy() *ArgoCDDexSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDDexSpec.

func (*ArgoCDDexSpec) DeepCopyInto

func (in *ArgoCDDexSpec) DeepCopyInto(out *ArgoCDDexSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDExport

type ArgoCDExport struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ArgoCDExportSpec   `json:"spec,omitempty"`
	Status ArgoCDExportStatus `json:"status,omitempty"`
}

ArgoCDExport is the Schema for the argocdexports API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:path=argocdexports,scope=Namespaced +operator-sdk:csv:customresourcedefinitions:resources={{ArgoCD,v1alpha1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ArgoCDExport,v1alpha1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ConfigMap,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{CronJob,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Deployment,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Ingress,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Job,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{PersistentVolumeClaim,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Pod,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Prometheus,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ReplicaSet,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Route,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Secret,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{Service,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ServiceMonitor,v1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{StatefulSet,v1,""}}

func (*ArgoCDExport) DeepCopy

func (in *ArgoCDExport) DeepCopy() *ArgoCDExport

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDExport.

func (*ArgoCDExport) DeepCopyInto

func (in *ArgoCDExport) DeepCopyInto(out *ArgoCDExport)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArgoCDExport) DeepCopyObject

func (in *ArgoCDExport) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ArgoCDExportList

type ArgoCDExportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ArgoCDExport `json:"items"`
}

ArgoCDExportList contains a list of ArgoCDExport

func (*ArgoCDExportList) DeepCopy

func (in *ArgoCDExportList) DeepCopy() *ArgoCDExportList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDExportList.

func (*ArgoCDExportList) DeepCopyInto

func (in *ArgoCDExportList) DeepCopyInto(out *ArgoCDExportList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArgoCDExportList) DeepCopyObject

func (in *ArgoCDExportList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ArgoCDExportSpec

type ArgoCDExportSpec struct {
	// Argocd is the name of the ArgoCD instance to export.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="ArgoCD",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Argocd string `json:"argocd"`

	// Image is the container image to use for the export Job.
	Image string `json:"image,omitempty"`

	// Schedule in Cron format, see https://en.wikipedia.org/wiki/Cron.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Schedule",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Schedule *string `json:"schedule,omitempty"`

	// Storage defines the storage configuration options.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Storage"
	Storage *ArgoCDExportStorageSpec `json:"storage,omitempty"`

	// Version is the tag/digest to use for the export Job container image.
	Version string `json:"version,omitempty"`
}

ArgoCDExportSpec defines the desired state of ArgoCDExport +k8s:openapi-gen=true

func (*ArgoCDExportSpec) DeepCopy

func (in *ArgoCDExportSpec) DeepCopy() *ArgoCDExportSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDExportSpec.

func (*ArgoCDExportSpec) DeepCopyInto

func (in *ArgoCDExportSpec) DeepCopyInto(out *ArgoCDExportSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDExportStatus

type ArgoCDExportStatus struct {
	// Phase is a simple, high-level summary of where the ArgoCDExport is in its lifecycle.
	// There are five possible phase values:
	// Pending: The ArgoCDExport has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the containers for the ArgoCDExport are still running, or in the process of starting or restarting.
	// Succeeded: All containers for the ArgoCDExport have terminated in success, and will not be restarted.
	// Failed: At least one container has terminated in failure, either exited with non-zero status or was terminated by the system.
	// Unknown: For some reason the state of the ArgoCDExport could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="Phase",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Phase string `json:"phase"`
}

ArgoCDExportStatus defines the observed state of ArgoCDExport +k8s:openapi-gen=true

func (*ArgoCDExportStatus) DeepCopy

func (in *ArgoCDExportStatus) DeepCopy() *ArgoCDExportStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDExportStatus.

func (*ArgoCDExportStatus) DeepCopyInto

func (in *ArgoCDExportStatus) DeepCopyInto(out *ArgoCDExportStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDExportStorageSpec

type ArgoCDExportStorageSpec struct {
	// Backend defines the storage backend to use, must be "local" (the default), "aws", "azure" or "gcp".
	Backend string `json:"backend,omitempty"`

	// PVC is the desired characteristics for a PersistentVolumeClaim.
	PVC *corev1.PersistentVolumeClaimSpec `json:"pvc,omitempty"`

	// SecretName is the name of a Secret with encryption key, credentials, etc.
	SecretName string `json:"secretName,omitempty"`
}

ArgoCDExportStorageSpec defines the desired state for ArgoCDExport storage options.

func (*ArgoCDExportStorageSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDExportStorageSpec.

func (*ArgoCDExportStorageSpec) DeepCopyInto

func (in *ArgoCDExportStorageSpec) DeepCopyInto(out *ArgoCDExportStorageSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDGrafanaSpec

type ArgoCDGrafanaSpec struct {
	// Enabled will toggle Grafana support globally for ArgoCD.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enabled",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Enabled bool `json:"enabled"`

	// Host is the hostname to use for Ingress/Route resources.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Host",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:text"}
	Host string `json:"host,omitempty"`

	// Image is the Grafana container image.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:text"}
	Image string `json:"image,omitempty"`

	// Ingress defines the desired state for an Ingress for the Grafana component.
	Ingress ArgoCDIngressSpec `json:"ingress,omitempty"`

	// Resources defines the Compute Resources required by the container for Grafana.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"}
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// Route defines the desired state for an OpenShift Route for the Grafana component.
	Route ArgoCDRouteSpec `json:"route,omitempty"`

	// Size is the replica count for the Grafana Deployment.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Size",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:podCount"}
	Size *int32 `json:"size,omitempty"`

	// Version is the Grafana container image tag.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Version",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:text"}
	Version string `json:"version,omitempty"`
}

ArgoCDGrafanaSpec defines the desired state for the Grafana component.

func ConvertBetaToAlphaGrafana added in v0.8.0

func ConvertBetaToAlphaGrafana(src *v1beta1.ArgoCDGrafanaSpec) *ArgoCDGrafanaSpec

func (*ArgoCDGrafanaSpec) DeepCopy

func (in *ArgoCDGrafanaSpec) DeepCopy() *ArgoCDGrafanaSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDGrafanaSpec.

func (*ArgoCDGrafanaSpec) DeepCopyInto

func (in *ArgoCDGrafanaSpec) DeepCopyInto(out *ArgoCDGrafanaSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDHASpec

type ArgoCDHASpec struct {
	// Enabled will toggle HA support globally for Argo CD.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enabled",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:HA","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Enabled bool `json:"enabled"`

	// RedisProxyImage is the Redis HAProxy container image.
	RedisProxyImage string `json:"redisProxyImage,omitempty"`

	// RedisProxyVersion is the Redis HAProxy container image tag.
	RedisProxyVersion string `json:"redisProxyVersion,omitempty"`

	// Resources defines the Compute Resources required by the container for HA.
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
}

ArgoCDHASpec defines the desired state for High Availability support for Argo CD.

func ConvertBetaToAlphaHA added in v0.8.0

func ConvertBetaToAlphaHA(src *v1beta1.ArgoCDHASpec) *ArgoCDHASpec

func (*ArgoCDHASpec) DeepCopy

func (in *ArgoCDHASpec) DeepCopy() *ArgoCDHASpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDHASpec.

func (*ArgoCDHASpec) DeepCopyInto

func (in *ArgoCDHASpec) DeepCopyInto(out *ArgoCDHASpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDImportSpec

type ArgoCDImportSpec struct {
	// Name of an ArgoCDExport from which to import data.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Name",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Import","urn:alm:descriptor:com.tectonic.ui:text"}
	Name string `json:"name"`

	// Namespace for the ArgoCDExport, defaults to the same namespace as the ArgoCD.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Namespace",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Import","urn:alm:descriptor:com.tectonic.ui:text"}
	Namespace *string `json:"namespace,omitempty"`
}

ArgoCDImportSpec defines the desired state for the ArgoCD import/restore process.

func (*ArgoCDImportSpec) DeepCopy

func (in *ArgoCDImportSpec) DeepCopy() *ArgoCDImportSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDImportSpec.

func (*ArgoCDImportSpec) DeepCopyInto

func (in *ArgoCDImportSpec) DeepCopyInto(out *ArgoCDImportSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDIngressSpec

type ArgoCDIngressSpec struct {
	// Annotations is the map of annotations to apply to the Ingress.
	Annotations map[string]string `json:"annotations,omitempty"`

	// Enabled will toggle the creation of the Ingress.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Ingress Enabled'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:fieldGroup:Prometheus","urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Enabled bool `json:"enabled"`

	// IngressClassName for the Ingress resource.
	IngressClassName *string `json:"ingressClassName,omitempty"`

	// Path used for the Ingress resource.
	Path string `json:"path,omitempty"`

	// 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 []networkingv1.IngressTLS `json:"tls,omitempty"`
}

ArgoCDIngressSpec defines the desired state for the Ingress resources.

func (*ArgoCDIngressSpec) DeepCopy

func (in *ArgoCDIngressSpec) DeepCopy() *ArgoCDIngressSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDIngressSpec.

func (*ArgoCDIngressSpec) DeepCopyInto

func (in *ArgoCDIngressSpec) DeepCopyInto(out *ArgoCDIngressSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDKeycloakSpec added in v0.4.0

type ArgoCDKeycloakSpec struct {
	// Image is the Keycloak container image.
	Image string `json:"image,omitempty"`

	// Resources defines the Compute Resources required by the container for Keycloak.
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// Custom root CA certificate for communicating with the Keycloak OIDC provider
	RootCA string `json:"rootCA,omitempty"`

	// Version is the Keycloak container image tag.
	Version string `json:"version,omitempty"`

	// VerifyTLS set to false disables strict TLS validation.
	VerifyTLS *bool `json:"verifyTLS,omitempty"`
}

ArgoCDKeycloakSpec defines the desired state for the Keycloak component.

func (*ArgoCDKeycloakSpec) DeepCopy added in v0.4.0

func (in *ArgoCDKeycloakSpec) DeepCopy() *ArgoCDKeycloakSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDKeycloakSpec.

func (*ArgoCDKeycloakSpec) DeepCopyInto added in v0.4.0

func (in *ArgoCDKeycloakSpec) DeepCopyInto(out *ArgoCDKeycloakSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDList

type ArgoCDList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ArgoCD `json:"items"`
}

ArgoCDList contains a list of ArgoCD

func (*ArgoCDList) DeepCopy

func (in *ArgoCDList) DeepCopy() *ArgoCDList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDList.

func (*ArgoCDList) DeepCopyInto

func (in *ArgoCDList) DeepCopyInto(out *ArgoCDList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArgoCDList) DeepCopyObject

func (in *ArgoCDList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ArgoCDMonitoringSpec added in v0.6.0

type ArgoCDMonitoringSpec struct {
	// Enabled defines whether workload status monitoring is enabled for this instance or not
	Enabled bool `json:"enabled"`
}

ArgoCDMonitoringSpec is used to configure workload status monitoring for a given Argo CD instance. It triggers creation of serviceMonitor and PrometheusRules that alert users when a given workload status meets a certain criteria. For e.g, it can fire an alert if the application controller is pending for x mins consecutively.

func (*ArgoCDMonitoringSpec) DeepCopy added in v0.6.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDMonitoringSpec.

func (*ArgoCDMonitoringSpec) DeepCopyInto added in v0.6.0

func (in *ArgoCDMonitoringSpec) DeepCopyInto(out *ArgoCDMonitoringSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDNodePlacementSpec

type ArgoCDNodePlacementSpec struct {
	// NodeSelector is a field of PodSpec, it is a map of key value pairs used for node selection
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
	// Tolerations allow the pods to schedule onto nodes with matching taints
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
}

ArgoCDNodePlacementSpec is used to specify NodeSelector and Tolerations for Argo CD workloads

func (*ArgoCDNodePlacementSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDNodePlacementSpec.

func (*ArgoCDNodePlacementSpec) DeepCopyInto

func (in *ArgoCDNodePlacementSpec) DeepCopyInto(out *ArgoCDNodePlacementSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDNotifications added in v0.4.0

type ArgoCDNotifications struct {

	// Replicas defines the number of replicas to run for notifications-controller
	Replicas *int32 `json:"replicas,omitempty"`

	// Enabled defines whether argocd-notifications controller should be deployed or not
	Enabled bool `json:"enabled"`

	// Env let you specify environment variables for Notifications pods
	Env []corev1.EnvVar `json:"env,omitempty"`

	// Image is the Argo CD Notifications image (optional)
	Image string `json:"image,omitempty"`

	// Version is the Argo CD Notifications image tag. (optional)
	Version string `json:"version,omitempty"`

	// Resources defines the Compute Resources required by the container for Argo CD Notifications.
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// LogLevel describes the log level that should be used by the argocd-notifications. Defaults to ArgoCDDefaultLogLevel if not set.  Valid options are debug,info, error, and warn.
	LogLevel string `json:"logLevel,omitempty"`
}

ArgoCDNotifications defines whether the Argo CD Notifications controller should be installed.

func (*ArgoCDNotifications) DeepCopy added in v0.4.0

func (in *ArgoCDNotifications) DeepCopy() *ArgoCDNotifications

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDNotifications.

func (*ArgoCDNotifications) DeepCopyInto added in v0.4.0

func (in *ArgoCDNotifications) DeepCopyInto(out *ArgoCDNotifications)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDPrometheusSpec

type ArgoCDPrometheusSpec struct {
	// Enabled will toggle Prometheus support globally for ArgoCD.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enabled",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Prometheus","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Enabled bool `json:"enabled"`

	// Host is the hostname to use for Ingress/Route resources.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Host",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Prometheus","urn:alm:descriptor:com.tectonic.ui:text"}
	Host string `json:"host,omitempty"`

	// Ingress defines the desired state for an Ingress for the Prometheus component.
	Ingress ArgoCDIngressSpec `json:"ingress,omitempty"`

	// Route defines the desired state for an OpenShift Route for the Prometheus component.
	Route ArgoCDRouteSpec `json:"route,omitempty"`

	// Size is the replica count for the Prometheus StatefulSet.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Size",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Prometheus","urn:alm:descriptor:com.tectonic.ui:podCount"}
	Size *int32 `json:"size,omitempty"`
}

ArgoCDPrometheusSpec defines the desired state for the Prometheus component.

func ConvertBetaToAlphaPrometheus added in v0.8.0

func ConvertBetaToAlphaPrometheus(src *v1beta1.ArgoCDPrometheusSpec) *ArgoCDPrometheusSpec

func (*ArgoCDPrometheusSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDPrometheusSpec.

func (*ArgoCDPrometheusSpec) DeepCopyInto

func (in *ArgoCDPrometheusSpec) DeepCopyInto(out *ArgoCDPrometheusSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDRBACSpec

type ArgoCDRBACSpec struct {
	// DefaultPolicy is the name of the default role which Argo CD will falls back to, when
	// authorizing API requests (optional). If omitted or empty, users may be still be able to login,
	// but will see no apps, projects, etc...
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Default Policy'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:RBAC","urn:alm:descriptor:com.tectonic.ui:text"}
	DefaultPolicy *string `json:"defaultPolicy,omitempty"`

	// Policy is CSV containing user-defined RBAC policies and role definitions.
	// Policy rules are in the form:
	//   p, subject, resource, action, object, effect
	// Role definitions and bindings are in the form:
	//   g, subject, inherited-subject
	// See https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/rbac.md for additional information.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Policy",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:RBAC","urn:alm:descriptor:com.tectonic.ui:text"}
	Policy *string `json:"policy,omitempty"`

	// Scopes controls which OIDC scopes to examine during rbac enforcement (in addition to `sub` scope).
	// If omitted, defaults to: '[groups]'.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Scopes",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:RBAC","urn:alm:descriptor:com.tectonic.ui:text"}
	Scopes *string `json:"scopes,omitempty"`

	// PolicyMatcherMode configures the matchers function mode for casbin.
	// There are two options for this, 'glob' for glob matcher or 'regex' for regex matcher.
	PolicyMatcherMode *string `json:"policyMatcherMode,omitempty"`
}

ArgoCDRBACSpec defines the desired state for the Argo CD RBAC configuration.

func (*ArgoCDRBACSpec) DeepCopy

func (in *ArgoCDRBACSpec) DeepCopy() *ArgoCDRBACSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDRBACSpec.

func (*ArgoCDRBACSpec) DeepCopyInto

func (in *ArgoCDRBACSpec) DeepCopyInto(out *ArgoCDRBACSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDRedisSpec

type ArgoCDRedisSpec struct {
	// Image is the Redis container image.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Redis","urn:alm:descriptor:com.tectonic.ui:text"}
	Image string `json:"image,omitempty"`

	// Resources defines the Compute Resources required by the container for Redis.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Redis","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"}
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// Version is the Redis container image tag.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Version",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Redis","urn:alm:descriptor:com.tectonic.ui:text"}
	Version string `json:"version,omitempty"`

	// DisableTLSVerification defines whether redis server API should be accessed using strict TLS validation
	DisableTLSVerification bool `json:"disableTLSVerification,omitempty"`

	// AutoTLS specifies the method to use for automatic TLS configuration for the redis server
	// The value specified here can currently be:
	// - openshift - Use the OpenShift service CA to request TLS config
	AutoTLS string `json:"autotls,omitempty"`
}

ArgoCDRedisSpec defines the desired state for the Redis server component.

func ConvertBetaToAlphaRedis added in v0.9.0

func ConvertBetaToAlphaRedis(src *v1beta1.ArgoCDRedisSpec) *ArgoCDRedisSpec

func (*ArgoCDRedisSpec) DeepCopy

func (in *ArgoCDRedisSpec) DeepCopy() *ArgoCDRedisSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDRedisSpec.

func (*ArgoCDRedisSpec) DeepCopyInto

func (in *ArgoCDRedisSpec) DeepCopyInto(out *ArgoCDRedisSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArgoCDRedisSpec) WantsAutoTLS added in v0.4.0

func (r *ArgoCDRedisSpec) WantsAutoTLS() bool

WantsAutoTLS returns true if the redis server configuration has set the autoTLS toggle to a supported provider.

type ArgoCDRepoSpec

type ArgoCDRepoSpec struct {

	// Extra Command arguments allows users to pass command line arguments to repo server workload. They get added to default command line arguments provided
	// by the operator.
	// Please note that the command line arguments provided as part of ExtraRepoCommandArgs will not overwrite the default command line arguments.
	ExtraRepoCommandArgs []string `json:"extraRepoCommandArgs,omitempty"`

	// LogLevel describes the log level that should be used by the Repo Server. Defaults to ArgoCDDefaultLogLevel if not set.  Valid options are debug, info, error, and warn.
	LogLevel string `json:"logLevel,omitempty"`

	// LogFormat describes the log format that should be used by the Repo Server. Defaults to ArgoCDDefaultLogFormat if not configured. Valid options are text or json.
	LogFormat string `json:"logFormat,omitempty"`

	// MountSAToken describes whether you would like to have the Repo server mount the service account token
	MountSAToken bool `json:"mountsatoken,omitempty"`

	// Replicas defines the number of replicas for argocd-repo-server. Value should be greater than or equal to 0. Default is nil.
	Replicas *int32 `json:"replicas,omitempty"`

	// Resources defines the Compute Resources required by the container for Redis.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Repo","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"}
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// ServiceAccount defines the ServiceAccount user that you would like the Repo server to use
	ServiceAccount string `json:"serviceaccount,omitempty"`

	// VerifyTLS defines whether repo server API should be accessed using strict TLS validation
	VerifyTLS bool `json:"verifytls,omitempty"`

	// AutoTLS specifies the method to use for automatic TLS configuration for the repo server
	// The value specified here can currently be:
	// - openshift - Use the OpenShift service CA to request TLS config
	AutoTLS string `json:"autotls,omitempty"`

	// Image is the ArgoCD Repo Server container image.
	Image string `json:"image,omitempty"`

	// Version is the ArgoCD Repo Server container image tag.
	Version string `json:"version,omitempty"`

	// ExecTimeout specifies the timeout in seconds for tool execution
	ExecTimeout *int `json:"execTimeout,omitempty"`

	// Env lets you specify environment for repo server pods
	Env []corev1.EnvVar `json:"env,omitempty"`

	// Volumes adds volumes to the repo server deployment
	Volumes []corev1.Volume `json:"volumes,omitempty"`

	// VolumeMounts adds volumeMounts to the repo server container
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`

	// InitContainers defines the list of initialization containers for the repo server deployment
	InitContainers []corev1.Container `json:"initContainers,omitempty"`

	// SidecarContainers defines the list of sidecar containers for the repo server deployment
	SidecarContainers []corev1.Container `json:"sidecarContainers,omitempty"`
}

ArgoCDRepoSpec defines the desired state for the Argo CD repo server component.

func ConvertBetaToAlphaRepo added in v0.9.0

func ConvertBetaToAlphaRepo(src *v1beta1.ArgoCDRepoSpec) *ArgoCDRepoSpec

func (*ArgoCDRepoSpec) DeepCopy

func (in *ArgoCDRepoSpec) DeepCopy() *ArgoCDRepoSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDRepoSpec.

func (*ArgoCDRepoSpec) DeepCopyInto

func (in *ArgoCDRepoSpec) DeepCopyInto(out *ArgoCDRepoSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArgoCDRepoSpec) WantsAutoTLS

func (r *ArgoCDRepoSpec) WantsAutoTLS() bool

WantsAutoTLS returns true if the repository server configuration has set the autoTLS toggle to a supported provider.

type ArgoCDRouteSpec

type ArgoCDRouteSpec struct {
	// Annotations is the map of annotations to use for the Route resource.
	Annotations map[string]string `json:"annotations,omitempty"`

	// Labels is the map of labels to use for the Route resource
	Labels map[string]string `json:"labels,omitempty"`

	// Enabled will toggle the creation of the OpenShift Route.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Route Enabled'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Grafana","urn:alm:descriptor:com.tectonic.ui:fieldGroup:Prometheus","urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Enabled bool `json:"enabled"`

	// Path the router watches for, to route traffic for to the service.
	Path string `json:"path,omitempty"`

	// TLS provides the ability to configure certificates and termination for the Route.
	TLS *routev1.TLSConfig `json:"tls,omitempty"`

	// WildcardPolicy if any for the route. Currently only 'Subdomain' or 'None' is allowed.
	WildcardPolicy *routev1.WildcardPolicyType `json:"wildcardPolicy,omitempty"`
}

ArgoCDRouteSpec defines the desired state for an OpenShift Route.

func (*ArgoCDRouteSpec) DeepCopy

func (in *ArgoCDRouteSpec) DeepCopy() *ArgoCDRouteSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDRouteSpec.

func (*ArgoCDRouteSpec) DeepCopyInto

func (in *ArgoCDRouteSpec) DeepCopyInto(out *ArgoCDRouteSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDSSOSpec

type ArgoCDSSOSpec struct {
	// Provider installs and configures the given SSO Provider with Argo CD.
	Provider SSOProviderType `json:"provider,omitempty"`

	// Dex contains the configuration for Argo CD dex authentication
	Dex *ArgoCDDexSpec `json:"dex,omitempty"`

	// Keycloak contains the configuration for Argo CD keycloak authentication
	Keycloak *ArgoCDKeycloakSpec `json:"keycloak,omitempty"`

	// Deprecated field. Support dropped in v1beta1 version.
	// Image is the SSO container image.
	Image string `json:"image,omitempty"`
	// Deprecated field. Support dropped in v1beta1 version.
	// Resources defines the Compute Resources required by the container for SSO.
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
	// Deprecated field. Support dropped in v1beta1 version.
	// VerifyTLS set to false disables strict TLS validation.
	VerifyTLS *bool `json:"verifyTLS,omitempty"`
	// Deprecated field. Support dropped in v1beta1 version.
	// Version is the SSO container image tag.
	Version string `json:"version,omitempty"`
}

ArgoCDSSOSpec defines SSO provider.

func ConvertBetaToAlphaSSO added in v0.8.0

func ConvertBetaToAlphaSSO(src *v1beta1.ArgoCDSSOSpec) *ArgoCDSSOSpec

func (*ArgoCDSSOSpec) DeepCopy

func (in *ArgoCDSSOSpec) DeepCopy() *ArgoCDSSOSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDSSOSpec.

func (*ArgoCDSSOSpec) DeepCopyInto

func (in *ArgoCDSSOSpec) DeepCopyInto(out *ArgoCDSSOSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDServerAutoscaleSpec

type ArgoCDServerAutoscaleSpec struct {
	// Enabled will toggle autoscaling support for the Argo CD Server component.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Autoscale Enabled'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Enabled bool `json:"enabled"`

	// HPA defines the HorizontalPodAutoscaler options for the Argo CD Server component.
	HPA *autoscaling.HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
}

ArgoCDServerAutoscaleSpec defines the desired state for autoscaling the Argo CD Server component.

func (*ArgoCDServerAutoscaleSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDServerAutoscaleSpec.

func (*ArgoCDServerAutoscaleSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDServerGRPCSpec

type ArgoCDServerGRPCSpec struct {
	// Host is the hostname to use for Ingress/Route resources.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="GRPC Host",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:text"}
	Host string `json:"host,omitempty"`

	// Ingress defines the desired state for the Argo CD Server GRPC Ingress.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="GRPC Ingress Enabled'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Ingress ArgoCDIngressSpec `json:"ingress,omitempty"`
}

ArgoCDServerGRPCSpec defines the desired state for the Argo CD Server GRPC options.

func ConvertBetaToAlphaGRPC added in v0.8.0

func ConvertBetaToAlphaGRPC(src *v1beta1.ArgoCDServerGRPCSpec) *ArgoCDServerGRPCSpec

func (*ArgoCDServerGRPCSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDServerGRPCSpec.

func (*ArgoCDServerGRPCSpec) DeepCopyInto

func (in *ArgoCDServerGRPCSpec) DeepCopyInto(out *ArgoCDServerGRPCSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDServerServiceSpec

type ArgoCDServerServiceSpec struct {
	// Type is the ServiceType to use for the Service resource.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Service Type'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:text"}
	Type corev1.ServiceType `json:"type"`
}

ArgoCDServerServiceSpec defines the Service options for Argo CD Server component.

func (*ArgoCDServerServiceSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDServerServiceSpec.

func (*ArgoCDServerServiceSpec) DeepCopyInto

func (in *ArgoCDServerServiceSpec) DeepCopyInto(out *ArgoCDServerServiceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDServerSpec

type ArgoCDServerSpec struct {
	// Autoscale defines the autoscale options for the Argo CD Server component.
	Autoscale ArgoCDServerAutoscaleSpec `json:"autoscale,omitempty"`

	// GRPC defines the state for the Argo CD Server GRPC options.
	GRPC ArgoCDServerGRPCSpec `json:"grpc,omitempty"`

	// Host is the hostname to use for Ingress/Route resources.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Host",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:text"}
	Host string `json:"host,omitempty"`

	// Ingress defines the desired state for an Ingress for the Argo CD Server component.
	Ingress ArgoCDIngressSpec `json:"ingress,omitempty"`

	// Insecure toggles the insecure flag.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Insecure",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
	Insecure bool `json:"insecure,omitempty"`

	// LogLevel refers to the log level to be used by the ArgoCD Server component. Defaults to ArgoCDDefaultLogLevel if not set.  Valid options are debug, info, error, and warn.
	LogLevel string `json:"logLevel,omitempty"`

	// LogFormat refers to the log level to be used by the ArgoCD Server component. Defaults to ArgoCDDefaultLogFormat if not configured. Valid options are text or json.
	LogFormat string `json:"logFormat,omitempty"`

	// Replicas defines the number of replicas for argocd-server. Default is nil. Value should be greater than or equal to 0. Value will be ignored if Autoscaler is enabled.
	Replicas *int32 `json:"replicas,omitempty"`

	// Resources defines the Compute Resources required by the container for the Argo CD server component.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"}
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// Route defines the desired state for an OpenShift Route for the Argo CD Server component.
	Route ArgoCDRouteSpec `json:"route,omitempty"`

	// Service defines the options for the Service backing the ArgoCD Server component.
	Service ArgoCDServerServiceSpec `json:"service,omitempty"`

	// Env lets you specify environment for API server pods
	Env []corev1.EnvVar `json:"env,omitempty"`

	// Extra Command arguments that would append to the Argo CD server command.
	// ExtraCommandArgs will not be added, if one of these commands is already part of the server command
	// with same or different value.
	ExtraCommandArgs []string `json:"extraCommandArgs,omitempty"`
}

ArgoCDServerSpec defines the options for the ArgoCD Server component.

func ConvertBetaToAlphaServer added in v0.8.0

func ConvertBetaToAlphaServer(src *v1beta1.ArgoCDServerSpec) *ArgoCDServerSpec

func (*ArgoCDServerSpec) DeepCopy

func (in *ArgoCDServerSpec) DeepCopy() *ArgoCDServerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDServerSpec.

func (*ArgoCDServerSpec) DeepCopyInto

func (in *ArgoCDServerSpec) DeepCopyInto(out *ArgoCDServerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArgoCDServerSpec) WantsAutoTLS

func (s *ArgoCDServerSpec) WantsAutoTLS() bool

WantsAutoTLS returns true if user configured a route with reencryption termination policy.

type ArgoCDSpec

type ArgoCDSpec struct {

	// ArgoCDApplicationSet defines whether the Argo CD ApplicationSet controller should be installed.
	ApplicationSet *ArgoCDApplicationSet `json:"applicationSet,omitempty"`

	// ApplicationInstanceLabelKey is the key name where Argo CD injects the app name as a tracking label.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Application Instance Label Key'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ApplicationInstanceLabelKey string `json:"applicationInstanceLabelKey,omitempty"`

	// ConfigManagementPlugins is used to specify additional config management plugins.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Config Management Plugins'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ConfigManagementPlugins string `json:"configManagementPlugins,omitempty"`

	// Controller defines the Application Controller options for ArgoCD.
	Controller ArgoCDApplicationControllerSpec `json:"controller,omitempty"`

	// DisableAdmin will disable the admin user.
	DisableAdmin bool `json:"disableAdmin,omitempty"`

	// ExtraConfig can be used to add fields to Argo CD configmap that are not supported by Argo CD CRD.
	//
	// Note: ExtraConfig takes precedence over Argo CD CRD.
	// For example, A user sets `argocd.Spec.DisableAdmin` = true and also
	// `a.Spec.ExtraConfig["admin.enabled"]` = true. In this case, operator updates
	// Argo CD Configmap as follows -> argocd-cm.Data["admin.enabled"] = true.
	ExtraConfig map[string]string `json:"extraConfig,omitempty"`

	// GATrackingID is the google analytics tracking ID to use.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Google Analytics Tracking ID'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	GATrackingID string `json:"gaTrackingID,omitempty"`

	// GAAnonymizeUsers toggles user IDs being hashed before sending to google analytics.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Google Analytics Anonymize Users'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch","urn:alm:descriptor:com.tectonic.ui:advanced"}
	GAAnonymizeUsers bool `json:"gaAnonymizeUsers,omitempty"`

	// Deprecated: Grafana defines the Grafana server options for ArgoCD.
	Grafana ArgoCDGrafanaSpec `json:"grafana,omitempty"`

	// HA options for High Availability support for the Redis component.
	HA ArgoCDHASpec `json:"ha,omitempty"`

	// HelpChatURL is the URL for getting chat help, this will typically be your Slack channel for support.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Help Chat URL'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	HelpChatURL string `json:"helpChatURL,omitempty"`

	// HelpChatText is the text for getting chat help, defaults to "Chat now!"
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Help Chat Text'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	HelpChatText string `json:"helpChatText,omitempty"`

	// Image is the ArgoCD container image for all ArgoCD components.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:ArgoCD","urn:alm:descriptor:com.tectonic.ui:text"}
	Image string `json:"image,omitempty"`

	// Import is the import/restore options for ArgoCD.
	Import *ArgoCDImportSpec `json:"import,omitempty"`

	// InitialRepositories to configure Argo CD with upon creation of the cluster.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Initial Repositories'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	InitialRepositories string `json:"initialRepositories,omitempty"`

	// InitialSSHKnownHosts defines the SSH known hosts data upon creation of the cluster for connecting Git repositories via SSH.
	InitialSSHKnownHosts SSHHostsSpec `json:"initialSSHKnownHosts,omitempty"`

	// KustomizeBuildOptions is used to specify build options/parameters to use with `kustomize build`.
	KustomizeBuildOptions string `json:"kustomizeBuildOptions,omitempty"`

	// KustomizeVersions is a listing of configured versions of Kustomize to be made available within ArgoCD.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Kustomize Build Options'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	KustomizeVersions []KustomizeVersionSpec `json:"kustomizeVersions,omitempty"`

	// OIDCConfig is the OIDC configuration as an alternative to dex.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="OIDC Config'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	OIDCConfig string `json:"oidcConfig,omitempty"`

	// Monitoring defines whether workload status monitoring configuration for this instance.
	Monitoring ArgoCDMonitoringSpec `json:"monitoring,omitempty"`

	// NodePlacement defines NodeSelectors and Taints for Argo CD workloads
	NodePlacement *ArgoCDNodePlacementSpec `json:"nodePlacement,omitempty"`

	// Notifications defines whether the Argo CD Notifications controller should be installed.
	Notifications ArgoCDNotifications `json:"notifications,omitempty"`

	// Prometheus defines the Prometheus server options for ArgoCD.
	Prometheus ArgoCDPrometheusSpec `json:"prometheus,omitempty"`

	// RBAC defines the RBAC configuration for Argo CD.
	RBAC ArgoCDRBACSpec `json:"rbac,omitempty"`

	// Redis defines the Redis server options for ArgoCD.
	Redis ArgoCDRedisSpec `json:"redis,omitempty"`

	// Repo defines the repo server options for Argo CD.
	Repo ArgoCDRepoSpec `json:"repo,omitempty"`

	// RepositoryCredentials are the Git pull credentials to configure Argo CD with upon creation of the cluster.
	RepositoryCredentials string `json:"repositoryCredentials,omitempty"`

	// Deprecated field. Support dropped in v1beta1 version.
	// ResourceCustomizations customizes resource behavior. Keys are in the form: group/Kind. Please note that this is being deprecated in favor of ResourceHealthChecks, ResourceIgnoreDifferences, and ResourceActions.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Customizations'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ResourceCustomizations string `json:"resourceCustomizations,omitempty"`

	// ResourceHealthChecks customizes resource health check behavior.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Health Check Customizations'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ResourceHealthChecks []ResourceHealthCheck `json:"resourceHealthChecks,omitempty"`

	// ResourceIgnoreDifferences customizes resource ignore difference behavior.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Ignore Difference Customizations'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ResourceIgnoreDifferences *ResourceIgnoreDifference `json:"resourceIgnoreDifferences,omitempty"`

	// ResourceActions customizes resource action behavior.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Action Customizations'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ResourceActions []ResourceAction `json:"resourceActions,omitempty"`

	// ResourceExclusions is used to completely ignore entire classes of resource group/kinds.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Exclusions'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ResourceExclusions string `json:"resourceExclusions,omitempty"`

	// ResourceInclusions is used to only include specific group/kinds in the
	// reconciliation process.
	ResourceInclusions string `json:"resourceInclusions,omitempty"`

	// ResourceTrackingMethod defines how Argo CD should track resources that it manages
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Tracking Method'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text","urn:alm:descriptor:com.tectonic.ui:advanced"}
	ResourceTrackingMethod string `json:"resourceTrackingMethod,omitempty"`

	// Server defines the options for the ArgoCD Server component.
	Server ArgoCDServerSpec `json:"server,omitempty"`

	// SourceNamespaces defines the namespaces application resources are allowed to be created in
	SourceNamespaces []string `json:"sourceNamespaces,omitempty"`

	// SSO defines the Single Sign-on configuration for Argo CD
	SSO *ArgoCDSSOSpec `json:"sso,omitempty"`

	// StatusBadgeEnabled toggles application status badge feature.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Status Badge Enabled'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch","urn:alm:descriptor:com.tectonic.ui:advanced"}
	StatusBadgeEnabled bool `json:"statusBadgeEnabled,omitempty"`

	// TLS defines the TLS options for ArgoCD.
	TLS ArgoCDTLSSpec `json:"tls,omitempty"`

	// UsersAnonymousEnabled toggles anonymous user access.
	// The anonymous users get default role permissions specified argocd-rbac-cm.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Anonymous Users Enabled'",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch","urn:alm:descriptor:com.tectonic.ui:advanced"}
	UsersAnonymousEnabled bool `json:"usersAnonymousEnabled,omitempty"`

	// Version is the tag to use with the ArgoCD container image for all ArgoCD components.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Version",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:ArgoCD","urn:alm:descriptor:com.tectonic.ui:text"}
	Version string `json:"version,omitempty"`

	// Banner defines an additional banner to be displayed in Argo CD UI
	Banner *Banner `json:"banner,omitempty"`

	// Deprecated field. Support dropped in v1beta1 version.
	// Dex defines the Dex server options for ArgoCD.
	Dex *ArgoCDDexSpec `json:"dex,omitempty"`
}

ArgoCDSpec defines the desired state of ArgoCD +k8s:openapi-gen=true

func (*ArgoCDSpec) DeepCopy

func (in *ArgoCDSpec) DeepCopy() *ArgoCDSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDSpec.

func (*ArgoCDSpec) DeepCopyInto

func (in *ArgoCDSpec) DeepCopyInto(out *ArgoCDSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDStatus

type ArgoCDStatus struct {
	// ApplicationController is a simple, high-level summary of where the Argo CD application controller component is in its lifecycle.
	// There are four possible ApplicationController values:
	// Pending: The Argo CD application controller component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the required Pods for the Argo CD application controller component are in a Ready state.
	// Failed: At least one of the  Argo CD application controller component Pods had a failure.
	// Unknown: The state of the Argo CD application controller component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="ApplicationController",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	ApplicationController string `json:"applicationController,omitempty"`

	// ApplicationSetController is a simple, high-level summary of where the Argo CD applicationSet controller component is in its lifecycle.
	// There are four possible ApplicationSetController values:
	// Pending: The Argo CD applicationSet controller component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the required Pods for the Argo CD applicationSet controller component are in a Ready state.
	// Failed: At least one of the  Argo CD applicationSet controller component Pods had a failure.
	// Unknown: The state of the Argo CD applicationSet controller component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="ApplicationSetController",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	ApplicationSetController string `json:"applicationSetController,omitempty"`

	// SSO is a simple, high-level summary of where the Argo CD SSO(Dex/Keycloak) component is in its lifecycle.
	// There are four possible sso values:
	// Pending: The Argo CD SSO component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the required Pods for the Argo CD SSO component are in a Ready state.
	// Failed: At least one of the  Argo CD SSO component Pods had a failure.
	// Unknown: The state of the Argo CD SSO component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="SSO",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	SSO string `json:"sso,omitempty"`

	// NotificationsController is a simple, high-level summary of where the Argo CD notifications controller component is in its lifecycle.
	// There are four possible NotificationsController values:
	// Pending: The Argo CD notifications controller component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the required Pods for the Argo CD notifications controller component are in a Ready state.
	// Failed: At least one of the  Argo CD notifications controller component Pods had a failure.
	// Unknown: The state of the Argo CD notifications controller component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="NotificationsController",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	NotificationsController string `json:"notificationsController,omitempty"`

	// Phase is a simple, high-level summary of where the ArgoCD is in its lifecycle.
	// There are four possible phase values:
	// Pending: The ArgoCD has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Available: All of the resources for the ArgoCD are ready.
	// Failed: At least one resource has experienced a failure.
	// Unknown: The state of the ArgoCD phase could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="Phase",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Phase string `json:"phase,omitempty"`

	// Redis is a simple, high-level summary of where the Argo CD Redis component is in its lifecycle.
	// There are four possible redis values:
	// Pending: The Argo CD Redis component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the required Pods for the Argo CD Redis component are in a Ready state.
	// Failed: At least one of the  Argo CD Redis component Pods had a failure.
	// Unknown: The state of the Argo CD Redis component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="Redis",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Redis string `json:"redis,omitempty"`

	// Repo is a simple, high-level summary of where the Argo CD Repo component is in its lifecycle.
	// There are four possible repo values:
	// Pending: The Argo CD Repo component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the required Pods for the Argo CD Repo component are in a Ready state.
	// Failed: At least one of the  Argo CD Repo component Pods had a failure.
	// Unknown: The state of the Argo CD Repo component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="Repo",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Repo string `json:"repo,omitempty"`

	// Server is a simple, high-level summary of where the Argo CD server component is in its lifecycle.
	// There are four possible server values:
	// Pending: The Argo CD server component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
	// Running: All of the required Pods for the Argo CD server component are in a Ready state.
	// Failed: At least one of the  Argo CD server component Pods had a failure.
	// Unknown: The state of the Argo CD server component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="Server",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Server string `json:"server,omitempty"`

	// RepoTLSChecksum contains the SHA256 checksum of the latest known state of tls.crt and tls.key in the argocd-repo-server-tls secret.
	RepoTLSChecksum string `json:"repoTLSChecksum,omitempty"`

	// RedisTLSChecksum contains the SHA256 checksum of the latest known state of tls.crt and tls.key in the argocd-operator-redis-tls secret.
	RedisTLSChecksum string `json:"redisTLSChecksum,omitempty"`

	// Host is the hostname of the Ingress.
	Host string `json:"host,omitempty"`
}

ArgoCDStatus defines the observed state of ArgoCD +k8s:openapi-gen=true

func (*ArgoCDStatus) DeepCopy

func (in *ArgoCDStatus) DeepCopy() *ArgoCDStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDStatus.

func (*ArgoCDStatus) DeepCopyInto

func (in *ArgoCDStatus) DeepCopyInto(out *ArgoCDStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArgoCDTLSSpec

type ArgoCDTLSSpec struct {
	// CA defines the CA options.
	CA ArgoCDCASpec `json:"ca,omitempty"`

	// InitialCerts defines custom TLS certificates upon creation of the cluster for connecting Git repositories via HTTPS.
	InitialCerts map[string]string `json:"initialCerts,omitempty"`
}

ArgoCDTLSSpec defines the TLS options for ArgCD.

func ConvertBetaToAlphaTLS added in v0.8.0

func ConvertBetaToAlphaTLS(src *v1beta1.ArgoCDTLSSpec) *ArgoCDTLSSpec

func (*ArgoCDTLSSpec) DeepCopy

func (in *ArgoCDTLSSpec) DeepCopy() *ArgoCDTLSSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArgoCDTLSSpec.

func (*ArgoCDTLSSpec) DeepCopyInto

func (in *ArgoCDTLSSpec) DeepCopyInto(out *ArgoCDTLSSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Banner struct {
	// Content defines the banner message content to display
	Content string `json:"content"`
	// URL defines an optional URL to be used as banner message link
	URL string `json:"url,omitempty"`
}

Banner defines an additional banner message to be displayed in Argo CD UI https://argo-cd.readthedocs.io/en/stable/operator-manual/custom-styles/#banners

func (*Banner) DeepCopy added in v0.4.0

func (in *Banner) DeepCopy() *Banner

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Banner.

func (*Banner) DeepCopyInto added in v0.4.0

func (in *Banner) DeepCopyInto(out *Banner)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IgnoreDifferenceCustomization added in v0.5.0

type IgnoreDifferenceCustomization struct {
	JqPathExpressions     []string `json:"jqPathExpressions,omitempty"`
	JsonPointers          []string `json:"jsonPointers,omitempty"`
	ManagedFieldsManagers []string `json:"managedFieldsManagers,omitempty"`
}

func (*IgnoreDifferenceCustomization) DeepCopy added in v0.5.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IgnoreDifferenceCustomization.

func (*IgnoreDifferenceCustomization) DeepCopyInto added in v0.5.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KustomizeVersionSpec

type KustomizeVersionSpec struct {
	// Version is a configured kustomize version in the format of vX.Y.Z
	Version string `json:"version,omitempty"`
	// Path is the path to a configured kustomize version on the filesystem of your repo server.
	Path string `json:"path,omitempty"`
}

KustomizeVersionSpec is used to specify information about a kustomize version to be used within ArgoCD.

func ConvertBetaToAlphaKustomizeVersions added in v0.8.0

func ConvertBetaToAlphaKustomizeVersions(src []v1beta1.KustomizeVersionSpec) []KustomizeVersionSpec

func (*KustomizeVersionSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KustomizeVersionSpec.

func (*KustomizeVersionSpec) DeepCopyInto

func (in *KustomizeVersionSpec) DeepCopyInto(out *KustomizeVersionSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NotificationsConfiguration added in v0.10.0

type NotificationsConfiguration struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec NotificationsConfigurationSpec `json:"spec,omitempty"`
}

NotificationsConfiguration is the Schema for the NotificationsConfiguration API +k8s:openapi-gen=true +kubebuilder:subresource:status +operator-sdk:csv:customresourcedefinitions:resources={{NotificationsConfiguration,v1beta1,""}} +operator-sdk:csv:customresourcedefinitions:resources={{ConfigMap,v1,""}}

func (*NotificationsConfiguration) DeepCopy added in v0.10.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationsConfiguration.

func (*NotificationsConfiguration) DeepCopyInto added in v0.10.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NotificationsConfiguration) DeepCopyObject added in v0.10.0

func (in *NotificationsConfiguration) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NotificationsConfigurationList added in v0.10.0

type NotificationsConfigurationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NotificationsConfiguration `json:"items"`
}

NotificationsConfigurationList contains a list of NotificationsConfiguration

func (*NotificationsConfigurationList) DeepCopy added in v0.10.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationsConfigurationList.

func (*NotificationsConfigurationList) DeepCopyInto added in v0.10.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NotificationsConfigurationList) DeepCopyObject added in v0.10.0

func (in *NotificationsConfigurationList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NotificationsConfigurationSpec added in v0.10.0

type NotificationsConfigurationSpec struct {
	// Triggers define the condition when the notification should be sent and list of templates required to generate the message
	// Recipients can subscribe to the trigger and specify the required message template and destination notification service.
	Triggers map[string]string `json:"triggers,omitempty"`
	// Templates are used to generate the notification template message
	Templates map[string]string `json:"templates,omitempty"`
	// Services are used to deliver message
	Services map[string]string `json:"services,omitempty"`
	// Subscriptions contain centrally managed global application subscriptions
	Subscriptions map[string]string `json:"subscriptions,omitempty"`
}

NotificationsConfigurationSpec allows users to define the triggers, templates, services, context and subscriptions for the notifications

func (*NotificationsConfigurationSpec) DeepCopy added in v0.10.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationsConfigurationSpec.

func (*NotificationsConfigurationSpec) DeepCopyInto added in v0.10.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceAction added in v0.5.0

type ResourceAction struct {
	Group  string `json:"group,omitempty"`
	Kind   string `json:"kind,omitempty"`
	Action string `json:"action,omitempty"`
}

Resource Customization for custom action

func ConvertBetaToAlphaResourceActions added in v0.8.0

func ConvertBetaToAlphaResourceActions(src []v1beta1.ResourceAction) []ResourceAction

func (*ResourceAction) DeepCopy added in v0.5.0

func (in *ResourceAction) DeepCopy() *ResourceAction

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAction.

func (*ResourceAction) DeepCopyInto added in v0.5.0

func (in *ResourceAction) DeepCopyInto(out *ResourceAction)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceHealthCheck added in v0.5.0

type ResourceHealthCheck struct {
	Group string `json:"group,omitempty"`
	Kind  string `json:"kind,omitempty"`
	Check string `json:"check,omitempty"`
}

Resource Customization for custom health check

func ConvertBetaToAlphaResourceHealthChecks added in v0.8.0

func ConvertBetaToAlphaResourceHealthChecks(src []v1beta1.ResourceHealthCheck) []ResourceHealthCheck

func (*ResourceHealthCheck) DeepCopy added in v0.5.0

func (in *ResourceHealthCheck) DeepCopy() *ResourceHealthCheck

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceHealthCheck.

func (*ResourceHealthCheck) DeepCopyInto added in v0.5.0

func (in *ResourceHealthCheck) DeepCopyInto(out *ResourceHealthCheck)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceIdentifiers added in v0.5.0

type ResourceIdentifiers struct {
	Group         string                        `json:"group,omitempty"`
	Kind          string                        `json:"kind,omitempty"`
	Customization IgnoreDifferenceCustomization `json:"customization,omitempty"`
}

Resource Customization fields for ignore difference

func ConvertBetaToAlphaResourceIdentifiers added in v0.8.0

func ConvertBetaToAlphaResourceIdentifiers(src []v1beta1.ResourceIdentifiers) []ResourceIdentifiers

func (*ResourceIdentifiers) DeepCopy added in v0.5.0

func (in *ResourceIdentifiers) DeepCopy() *ResourceIdentifiers

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceIdentifiers.

func (*ResourceIdentifiers) DeepCopyInto added in v0.5.0

func (in *ResourceIdentifiers) DeepCopyInto(out *ResourceIdentifiers)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceIgnoreDifference added in v0.5.0

type ResourceIgnoreDifference struct {
	All                 *IgnoreDifferenceCustomization `json:"all,omitempty"`
	ResourceIdentifiers []ResourceIdentifiers          `json:"resourceIdentifiers,omitempty"`
}

Resource Customization for ignore difference

func ConvertBetaToAlphaResourceIgnoreDifferences added in v0.8.0

func ConvertBetaToAlphaResourceIgnoreDifferences(src *v1beta1.ResourceIgnoreDifference) *ResourceIgnoreDifference

func (*ResourceIgnoreDifference) DeepCopy added in v0.5.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceIgnoreDifference.

func (*ResourceIgnoreDifference) DeepCopyInto added in v0.5.0

func (in *ResourceIgnoreDifference) DeepCopyInto(out *ResourceIgnoreDifference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourceTrackingMethod added in v0.4.0

type ResourceTrackingMethod int

ResourceTrackingMethod represents the Argo CD resource tracking method to use

const (
	ResourceTrackingMethodInvalid            ResourceTrackingMethod = -1
	ResourceTrackingMethodLabel              ResourceTrackingMethod = 0
	ResourceTrackingMethodAnnotation         ResourceTrackingMethod = 1
	ResourceTrackingMethodAnnotationAndLabel ResourceTrackingMethod = 2
)

func ParseResourceTrackingMethod added in v0.4.0

func ParseResourceTrackingMethod(name string) ResourceTrackingMethod

ParseResourceTrackingMethod parses a string into a resource tracking method

func (ResourceTrackingMethod) String added in v0.4.0

func (r ResourceTrackingMethod) String() string

String returns the string representation for a ResourceTrackingMethod

type SSHHostsSpec

type SSHHostsSpec struct {
	// ExcludeDefaultHosts describes whether you would like to include the default
	// list of SSH Known Hosts provided by ArgoCD.
	ExcludeDefaultHosts bool `json:"excludedefaulthosts,omitempty"`

	// Keys describes a custom set of SSH Known Hosts that you would like to
	// have included in your ArgoCD server.
	Keys string `json:"keys,omitempty"`
}

func (*SSHHostsSpec) DeepCopy

func (in *SSHHostsSpec) DeepCopy() *SSHHostsSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHHostsSpec.

func (*SSHHostsSpec) DeepCopyInto

func (in *SSHHostsSpec) DeepCopyInto(out *SSHHostsSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SSOProviderType

type SSOProviderType string

SSOProviderType string defines the type of SSO provider.

const (
	// SSOProviderTypeKeycloak means keycloak will be Installed and Integrated with Argo CD. A new realm with name argocd
	// will be created in this keycloak. This realm will have a client with name argocd that uses OpenShift v4 as Identity Provider.
	SSOProviderTypeKeycloak SSOProviderType = "keycloak"

	// SSOProviderTypeDex means dex will be Installed and Integrated with Argo CD.
	SSOProviderTypeDex SSOProviderType = "dex"
)

func (SSOProviderType) ToLower added in v0.8.0

func (p SSOProviderType) ToLower() SSOProviderType

ToLower returns the lower case representation for a SSOProviderType

type WebhookServerSpec added in v0.5.0

type WebhookServerSpec struct {

	// Host is the hostname to use for Ingress/Route resources.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Host",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:fieldGroup:Server","urn:alm:descriptor:com.tectonic.ui:text"}
	Host string `json:"host,omitempty"`

	// Ingress defines the desired state for an Ingress for the Application set webhook component.
	Ingress ArgoCDIngressSpec `json:"ingress,omitempty"`

	// Route defines the desired state for an OpenShift Route for the Application set webhook component.
	Route ArgoCDRouteSpec `json:"route,omitempty"`
}

WebhookServerSpec defines the options for the ApplicationSet Webhook Server component.

func ConvertBetaToAlphaWebhookServer added in v0.8.0

func ConvertBetaToAlphaWebhookServer(src *v1beta1.WebhookServerSpec) *WebhookServerSpec

func (*WebhookServerSpec) DeepCopy added in v0.5.0

func (in *WebhookServerSpec) DeepCopy() *WebhookServerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookServerSpec.

func (*WebhookServerSpec) DeepCopyInto added in v0.5.0

func (in *WebhookServerSpec) DeepCopyInto(out *WebhookServerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL