Documentation
¶
Overview ¶
Package v1alpha1 contains the core resources of the argocd provider. +kubebuilder:object:generate=true +groupName=cluster.argocd.crossplane.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- func ServerAddress() reference.ExtractValueFn
- func ServerName() reference.ExtractValueFn
- type AWSAuthConfig
- type Cluster
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies
- func (mg *Cluster) GetProviderConfigReference() *xpv1.Reference
- func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *Cluster) SetConditions(c ...xpv1.Condition)
- func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies)
- func (mg *Cluster) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type ClusterCacheInfo
- type ClusterConfig
- type ClusterInfo
- type ClusterList
- type ClusterObservation
- type ClusterParameters
- type ClusterSpec
- type ClusterStatus
- type ConnectionState
- type ExecProviderConfig
- type KubeconfigObservation
- type SecretObservation
- type SecretReference
- type TLSClientConfig
Constants ¶
const ( Group = "cluster.argocd.crossplane.io" Version = "v1alpha1" )
Package type metadata.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ( ClusterKind = reflect.TypeOf(Cluster{}).Name() ClusterGroupKind = schema.GroupKind{Group: Group, Kind: ClusterKind}.String() ClusterKindAPIVersion = ClusterKind + "." + SchemeGroupVersion.String() ClusterGroupVersionKind = SchemeGroupVersion.WithKind(ClusterKind) )
Cluster type metadata
Functions ¶
func ServerAddress ¶ added in v0.6.0
func ServerAddress() reference.ExtractValueFn
ServerAddress returns the Spec.ForProvider.Server of a Cluster
func ServerName ¶ added in v0.6.0
func ServerName() reference.ExtractValueFn
ServerName returns the Spec.ForProvider.Name of an Cluster.
Types ¶
type AWSAuthConfig ¶
type AWSAuthConfig struct {
// ClusterName contains AWS cluster name
// +optional
ClusterName *string `json:"clusterName,omitempty"`
// RoleARN contains optional role ARN. If set then AWS IAM Authenticator assume a role to perform cluster operations instead of the default AWS credential provider chain.
// +optional
RoleARN *string `json:"roleARN,omitempty"`
}
AWSAuthConfig contains IAM authentication configuration
func (*AWSAuthConfig) DeepCopy ¶
func (in *AWSAuthConfig) DeepCopy() *AWSAuthConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSAuthConfig.
func (*AWSAuthConfig) DeepCopyInto ¶
func (in *AWSAuthConfig) DeepCopyInto(out *AWSAuthConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶
type Cluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ClusterSpec `json:"spec"`
Status ClusterStatus `json:"status,omitempty"`
}
A Cluster is a managed resource that represents an ArgoCD Git Cluster +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,argocd}
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) GetCondition ¶
func (mg *Cluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Cluster.
func (*Cluster) GetDeletionPolicy ¶
func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Cluster.
func (*Cluster) GetManagementPolicies ¶ added in v0.7.0
func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies
GetManagementPolicies of this Cluster.
func (*Cluster) GetProviderConfigReference ¶
GetProviderConfigReference of this Cluster.
func (*Cluster) GetWriteConnectionSecretToReference ¶
func (mg *Cluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Cluster.
func (*Cluster) SetConditions ¶
SetConditions of this Cluster.
func (*Cluster) SetDeletionPolicy ¶
func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Cluster.
func (*Cluster) SetManagementPolicies ¶ added in v0.7.0
func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies)
SetManagementPolicies of this Cluster.
func (*Cluster) SetProviderConfigReference ¶
SetProviderConfigReference of this Cluster.
func (*Cluster) SetWriteConnectionSecretToReference ¶
func (mg *Cluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Cluster.
type ClusterCacheInfo ¶
type ClusterCacheInfo struct {
// ResourcesCount holds number of observed Kubernetes resources
// +optional
ResourcesCount *int64 `json:"resourcesCount,omitempty"`
// APIsCount holds number of observed Kubernetes API count
// +optional
APIsCount *int64 `json:"apisCount,omitempty"`
// LastCacheSyncTime holds time of most recent cache synchronization
// +optional
LastCacheSyncTime *metav1.Time `json:"lastCacheSyncTime,omitempty"`
}
ClusterCacheInfo contains information about the cluster cache
func (*ClusterCacheInfo) DeepCopy ¶
func (in *ClusterCacheInfo) DeepCopy() *ClusterCacheInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterCacheInfo.
func (*ClusterCacheInfo) DeepCopyInto ¶
func (in *ClusterCacheInfo) DeepCopyInto(out *ClusterCacheInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterConfig ¶
type ClusterConfig struct {
// Server requires Basic authentication
// +optional
Username *string `json:"username,omitempty"`
// PasswordSecretRef contains a reference to a kubernetes secret containing the Password
// +optional
PasswordSecretRef *SecretReference `json:"passwordSecretRef,omitempty"`
// BearerTokenSecretRef contains a reference to a kubernetes secret containing the BearerToken
// +optional
BearerTokenSecretRef *SecretReference `json:"bearerTokenSecretRef,omitempty"`
// TLSClientConfig contains settings to enable transport layer security
// +optional
TLSClientConfig *TLSClientConfig `json:"tlsClientConfig"`
// AWSAuthConfig contains IAM authentication configuration
// +optional
AWSAuthConfig *AWSAuthConfig `json:"awsAuthConfig,omitempty"`
// ExecProviderConfig contains configuration for an exec provider
// +optional
ExecProviderConfig *ExecProviderConfig `json:"execProviderConfig,omitempty"`
// KubeconfigSecretRef contains a reference to a Kubernetes secret entry that
// contains a raw kubeconfig in YAML or JSON.
// See https://kubernetes.io/docs/reference/config-api/kubeconfig.v1/ for more
// info about Kubeconfigs
// +optional
KubeconfigSecretRef *SecretReference `json:"kubeconfigSecretRef,omitempty"`
}
ClusterConfig holds cluster information for connecting to a cluster
func (*ClusterConfig) DeepCopy ¶
func (in *ClusterConfig) DeepCopy() *ClusterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterConfig.
func (*ClusterConfig) DeepCopyInto ¶
func (in *ClusterConfig) DeepCopyInto(out *ClusterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterInfo ¶
type ClusterInfo struct {
// ConnectionState contains information about the connection to the cluster
// +optional
ConnectionState *ConnectionState `json:"connectionState,omitempty"`
// ServerVersion contains information about the Kubernetes version of the cluster
// +optional
ServerVersion *string `json:"serverVersion,omitempty"`
// CacheInfo contains information about the cluster cache
// +optional
CacheInfo *ClusterCacheInfo `json:"cacheInfo,omitempty"`
// ApplicationsCount is the number of applications managed by Argo CD on the cluster
ApplicationsCount int64 `json:"applicationsCount"`
}
ClusterInfo holds information about cluster cache and state
func (*ClusterInfo) DeepCopy ¶
func (in *ClusterInfo) DeepCopy() *ClusterInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInfo.
func (*ClusterInfo) DeepCopyInto ¶
func (in *ClusterInfo) DeepCopyInto(out *ClusterInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterList ¶
type ClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Cluster `json:"items"`
}
ClusterList contains a list of Cluster items
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterList) GetItems ¶
func (l *ClusterList) GetItems() []resource.Managed
GetItems of this ClusterList.
type ClusterObservation ¶
type ClusterObservation struct {
// ClusterInfo holds information about cluster cache and state
// +optional
ClusterInfo ClusterInfo `json:"connectionState,omitempty"`
// Kubeconfig tracks changes to a Kubeconfig secret
// +optional
Kubeconfig *KubeconfigObservation `json:"kubeconfig,omitempty"`
}
ClusterObservation represents an argocd Cluster.
func (*ClusterObservation) DeepCopy ¶
func (in *ClusterObservation) DeepCopy() *ClusterObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterObservation.
func (*ClusterObservation) DeepCopyInto ¶
func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterParameters ¶
type ClusterParameters struct {
// Server is the API server URL of the Kubernetes cluster. Optional if using a kubeconfig
// +optional
Server *string `json:"server"`
// Name of the cluster. If omitted, will use the server address. Optional if using a kubeconfig
// +optional
Name *string `json:"name"`
// Config holds cluster information for connecting to a cluster
Config ClusterConfig `json:"config"`
// Holds list of namespaces which are accessible in that cluster. Cluster level resources will be ignored if namespace list is not empty.
// +optional
Namespaces []string `json:"namespaces,omitempty"`
// Shard contains optional shard number. Calculated on the fly by the application controller if not specified.
// +optional
Shard *int64 `json:"shard,omitempty"`
// Reference between project and cluster that allow you automatically to be added as item inside Destinations project entity
// +optional
Project *string `json:"project,omitempty"`
// Labels for cluster secret metadata
// +optional
Labels map[string]string `json:"labels,omitempty"`
// Annotations for cluster secret metadata
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
}
ClusterParameters define the desired state of an ArgoCD Cluster
func (*ClusterParameters) DeepCopy ¶
func (in *ClusterParameters) DeepCopy() *ClusterParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterParameters.
func (*ClusterParameters) DeepCopyInto ¶
func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSpec ¶
type ClusterSpec struct {
xpv1.ResourceSpec `json:",inline"`
ForProvider ClusterParameters `json:"forProvider"`
}
A ClusterSpec defines the desired state of an ArgoCD Cluster.
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct {
xpv1.ResourceStatus `json:",inline"`
AtProvider ClusterObservation `json:"atProvider,omitempty"`
}
A ClusterStatus represents the observed state of an ArgoCD Cluster.
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConnectionState ¶
type ConnectionState struct {
// Status contains the current status indicator for the connection
Status string `json:"status"`
// Message contains human readable information about the connection status
Message string `json:"message"`
// ModifiedAt contains the timestamp when this connection status has been determined
ModifiedAt *metav1.Time `json:"attemptedAt"`
}
ConnectionState contains information about the connection to the cluster
func (*ConnectionState) DeepCopy ¶
func (in *ConnectionState) DeepCopy() *ConnectionState
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionState.
func (*ConnectionState) DeepCopyInto ¶
func (in *ConnectionState) DeepCopyInto(out *ConnectionState)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExecProviderConfig ¶
type ExecProviderConfig struct {
// Command to execute
// +optional
Command *string `json:"command,omitempty"`
// Arguments to pass to the command when executing it
// +optional
Args []string `json:"args,omitempty"`
// Env defines additional environment variables to expose to the process
// +optional
Env map[string]string `json:"env,omitempty"`
// Preferred input version of the ExecInfo
// +optional
APIVersion *string `json:"apiVersion,omitempty"`
// This text is shown to the user when the executable doesn't seem to be present
// +optional
InstallHint *string `json:"installHint,omitempty"`
}
ExecProviderConfig contains configuration for an exec provider
func (*ExecProviderConfig) DeepCopy ¶
func (in *ExecProviderConfig) DeepCopy() *ExecProviderConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExecProviderConfig.
func (*ExecProviderConfig) DeepCopyInto ¶
func (in *ExecProviderConfig) DeepCopyInto(out *ExecProviderConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeconfigObservation ¶ added in v0.4.0
type KubeconfigObservation struct {
Secret SecretObservation `json:"secret,omitempty"`
}
KubeconfigObservation holds the status of a referenced Kubeconfig
func (*KubeconfigObservation) DeepCopy ¶ added in v0.4.0
func (in *KubeconfigObservation) DeepCopy() *KubeconfigObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeconfigObservation.
func (*KubeconfigObservation) DeepCopyInto ¶ added in v0.4.0
func (in *KubeconfigObservation) DeepCopyInto(out *KubeconfigObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretObservation ¶ added in v0.4.0
type SecretObservation struct {
// ResourceVersion tracks the meta1.ResourceVersion of an Object
ResourceVersion string `json:"resourceVersion,omitempty"`
}
SecretObservation observes a secret
func (*SecretObservation) DeepCopy ¶ added in v0.4.0
func (in *SecretObservation) DeepCopy() *SecretObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretObservation.
func (*SecretObservation) DeepCopyInto ¶ added in v0.4.0
func (in *SecretObservation) DeepCopyInto(out *SecretObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretReference ¶
type SecretReference struct {
// Name of the secret.
Name string `json:"name"`
// Namespace of the secret.
Namespace string `json:"namespace"`
// Key whose value will be used.
Key string `json:"key"`
}
SecretReference holds the reference to a Kubernetes secret
func (*SecretReference) DeepCopy ¶
func (in *SecretReference) DeepCopy() *SecretReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretReference.
func (*SecretReference) DeepCopyInto ¶
func (in *SecretReference) DeepCopyInto(out *SecretReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSClientConfig ¶
type TLSClientConfig struct {
// Insecure specifies that the server should be accessed without verifying the TLS certificate. For testing only.
Insecure bool `json:"insecure"`
// ServerName is passed to the server for SNI and is used in the client to check server
// certificates against. If ServerName is empty, the hostname used to contact the
// server is used.
// +optional
ServerName *string `json:"serverName,omitempty"`
// CertDataSecretRef references a secret holding PEM-encoded bytes (typically read from a client certificate file).
// +optional
CertDataSecretRef *SecretReference `json:"certDataSecretRef,omitempty"`
// KeyDataSecretRef references a secret holding PEM-encoded bytes (typically read from a client certificate key file).
// +optional
KeyDataSecretRef *SecretReference `json:"keyDataSecretRef,omitempty"`
// CAData holds PEM-encoded bytes (typically read from a root certificates bundle).
// CAData takes precedence over CAFile
// +optional
CAData []byte `json:"caData,omitempty"`
// CADataSecretRef references a secret holding PEM-encoded bytes (typically read from a root certificates bundle).
// +optional
CADataSecretRef *SecretReference `json:"caDataSecretRef,omitempty"`
}
TLSClientConfig contains settings to enable transport layer security
func (*TLSClientConfig) DeepCopy ¶
func (in *TLSClientConfig) DeepCopy() *TLSClientConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSClientConfig.
func (*TLSClientConfig) DeepCopyInto ¶
func (in *TLSClientConfig) DeepCopyInto(out *TLSClientConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.