v1alpha1

package
v0.3.3 Latest Latest
Warning

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

Go to latest
Published: Jul 24, 2022 License: Apache-2.0 Imports: 9 Imported by: 11

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

This section is empty.

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) 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"`
}

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 by default.
	//
	// 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 (*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 {

	// 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"`
}

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

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 ArgoCDDexOAuthSpec

type ArgoCDDexOAuthSpec struct {
	// Enabled will toggle OAuth support for the Dex server.
	Enabled bool `json:"enabled"`
}

ArgoCDDexOAuthSpec defines the desired state for the Dex OAuth configuration.

func (*ArgoCDDexOAuthSpec) DeepCopy

func (in *ArgoCDDexOAuthSpec) DeepCopy() *ArgoCDDexOAuthSpec

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

func (*ArgoCDDexOAuthSpec) DeepCopyInto

func (in *ArgoCDDexOAuthSpec) DeepCopyInto(out *ArgoCDDexOAuthSpec)

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 (*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 (*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 (*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"`

	// 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 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 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 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 (*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"`
}

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"`
}

ArgoCDRedisSpec defines the desired state for the Redis server component.

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.

type ArgoCDRepoSpec

type ArgoCDRepoSpec struct {

	// 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"`
}

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

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 {
	// Image is the SSO container image.
	Image string `json:"image,omitempty"`
	// Provider installs and configures the given SSO Provider with Argo CD.
	Provider SSOProviderType `json:"provider,omitempty"`
	// Resources defines the Compute Resources required by the container for SSO.
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
	// VerifyTLS set to false disables strict TLS validation.
	VerifyTLS *bool `json:"verifyTLS,omitempty"`
	// Version is the SSO container image tag.
	Version string `json:"version,omitempty"`
}

ArgoCDSSOSpec defines SSO provider.

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 (*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"`
}

ArgoCDServerSpec defines the options for the ArgoCD Server component.

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"`

	// Dex defines the Dex server options for ArgoCD.
	Dex ArgoCDDexSpec `json:"dex,omitempty"`

	// DisableAdmin will disable the admin user.
	DisableAdmin bool `json:"disableAdmin,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"`

	// 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"`

	// NodePlacement defines NodeSelectors and Taints for Argo CD workloads
	NodePlacement *ArgoCDNodePlacementSpec `json:"nodePlacement,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"`

	// ResourceCustomizations customizes resource behavior. Keys are in the form: group/Kind.
	//+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"`

	// 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"`

	// Server defines the options for the ArgoCD Server component.
	Server ArgoCDServerSpec `json:"server,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"`
}

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 five 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: For some reason 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"`

	// Dex is a simple, high-level summary of where the Argo CD Dex component is in its lifecycle.
	// There are five possible dex values:
	// Pending: The Argo CD Dex 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 Dex component are in a Ready state.
	// Failed: At least one of the  Argo CD Dex component Pods had a failure.
	// Unknown: For some reason the state of the Argo CD Dex component could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="Dex",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Dex string `json:"dex,omitempty"`

	// SSOConfig defines the status of SSO configuration.
	// Success: Only one SSO provider is configured in CR.
	// Failed: More than one SSO providers are configure in CR.
	// Unknown: For some reason the SSO configuration could not be obtained.
	//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="SSOConfig",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	SSOConfig string `json:"ssoConfig,omitempty"`

	// Phase is a simple, high-level summary of where the ArgoCD is in its lifecycle.
	// There are five 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: For some reason 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 five 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: For some reason 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 five 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: For some reason 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 five 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: For some reason 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"`

	// 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 (*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 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 (*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 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"
)

Jump to

Keyboard shortcuts

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