Documentation ¶
Overview ¶
+k8s:deepcopy-gen=package,register +groupName=argoproj.io
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type Application
- type ApplicationDestination
- type ApplicationHealth
- type ApplicationHealthStatus
- type ApplicationIgnoreDifference
- type ApplicationList
- type ApplicationSource
- type ApplicationSourceHelm
- type ApplicationSpec
- type ApplicationStatus
- type ApplicationSync
- type ApplicationSyncAutomation
- type ApplicationSyncOption
- type ApplicationSyncPolicy
- type ApplicationSyncStatus
- type HelmParameter
Constants ¶
const ( // GroupName is the Kubernetes API group our resources belong to. GroupName = "argoproj.io" // GroupVersion is the version of our custom resources. GroupVersion = "v1alpha1" // Group is group/version of our resources. Group = GroupName + "/" + GroupVersion // ApplicationKind is the API kind for an application. ApplicationKind = "Application" // ApplicationResource is the API endpoint for an application. ApplicationResource = "applications" )
Variables ¶
var ( // SchemeGroupVersion defines the GV of our resources. //nolint:gochecknoglobals SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion} // SchemeBuilder creates a mapping between GVK and type. //nolint:gochecknoglobals SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds our GVK to resource mappings to an existing scheme. //nolint:gochecknoglobals AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource maps a resource type to a group resource.
Types ¶
type Application ¶
type Application struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ApplicationSpec `json:"spec"` Status ApplicationStatus `json:"status,omitempty"` }
Application is an abstraction around Argo applications, this is needed because the ArgoCD code base is a shambolic mess and you cannot import the types directly without a lot of messing about. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Application) DeepCopy ¶
func (in *Application) DeepCopy() *Application
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Application.
func (*Application) DeepCopyInto ¶
func (in *Application) DeepCopyInto(out *Application)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Application) DeepCopyObject ¶
func (in *Application) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApplicationDestination ¶
type ApplicationDestination struct { // Name is the ArgoCD cluster to provision the application in. Name string `json:"name"` // Namespace is the namespace to provision the application in. Namespace string `json:"namespace"` }
func (*ApplicationDestination) DeepCopy ¶
func (in *ApplicationDestination) DeepCopy() *ApplicationDestination
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDestination.
func (*ApplicationDestination) DeepCopyInto ¶
func (in *ApplicationDestination) DeepCopyInto(out *ApplicationDestination)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationHealth ¶
type ApplicationHealth struct { // Status reports the health status. Status ApplicationHealthStatus `json:"status"` }
func (*ApplicationHealth) DeepCopy ¶
func (in *ApplicationHealth) DeepCopy() *ApplicationHealth
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationHealth.
func (*ApplicationHealth) DeepCopyInto ¶
func (in *ApplicationHealth) DeepCopyInto(out *ApplicationHealth)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationHealthStatus ¶
type ApplicationHealthStatus string
const ( // Healthy is when the chart is synchronized and all resources have // got to a healthy status e.g. deployments scaled up etc. Healthy ApplicationHealthStatus = "Healthy" // Degraded is when things are osensibly working, but not fully healthy // yet. Degraded ApplicationHealthStatus = "Degraded" )
type ApplicationIgnoreDifference ¶
type ApplicationIgnoreDifference struct { // Group is the resource API group. Group string `json:"group"` // Kind is the resource kind. Kind string `json:"kind"` // JSONPointers is a list of JSON pointers to ignore in diffs. JSONPointers []string `json:"jsonPointers"` }
func (*ApplicationIgnoreDifference) DeepCopy ¶
func (in *ApplicationIgnoreDifference) DeepCopy() *ApplicationIgnoreDifference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationIgnoreDifference.
func (*ApplicationIgnoreDifference) DeepCopyInto ¶
func (in *ApplicationIgnoreDifference) DeepCopyInto(out *ApplicationIgnoreDifference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationList ¶
type ApplicationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Application `json:"items"` }
ApplicationList is a typed list of projects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*ApplicationList) DeepCopy ¶
func (in *ApplicationList) DeepCopy() *ApplicationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationList.
func (*ApplicationList) DeepCopyInto ¶
func (in *ApplicationList) DeepCopyInto(out *ApplicationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApplicationList) DeepCopyObject ¶
func (in *ApplicationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApplicationSource ¶
type ApplicationSource struct { // RepoURL is either a helm repository URL or a URL to git source. //nolint:tagliatelle RepoURL string `json:"repoURL"` // Chart is specified when the repo is a helm repo to identify the // specific chart. Chart string `json:"chart,omitempty"` // Path is specified when the repo is git source and identifies the // path where the helm chart is located within the repo. Path string `json:"path,omitempty"` // TargetRevision identifies a helm chart version, or a git tag/branch. TargetRevision string `json:"targetRevision"` // Helm defines helm parameters. Helm *ApplicationSourceHelm `json:"helm,omitempty"` }
func (*ApplicationSource) DeepCopy ¶
func (in *ApplicationSource) DeepCopy() *ApplicationSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSource.
func (*ApplicationSource) DeepCopyInto ¶
func (in *ApplicationSource) DeepCopyInto(out *ApplicationSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationSourceHelm ¶
type ApplicationSourceHelm struct { // ReleaseName sets the helm release, defaults to the application // name otherwise. ReleaseName string `json:"releaseName,omitempty"` // Values is a verbatim values file to pass to helm. Values string `json:"values,omitempty"` // Parameters are a set of key value pairs to pass to helm // via the --set flag. Parameters []HelmParameter `json:"parameters,omitempty"` }
func (*ApplicationSourceHelm) DeepCopy ¶
func (in *ApplicationSourceHelm) DeepCopy() *ApplicationSourceHelm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSourceHelm.
func (*ApplicationSourceHelm) DeepCopyInto ¶
func (in *ApplicationSourceHelm) DeepCopyInto(out *ApplicationSourceHelm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationSpec ¶
type ApplicationSpec struct { // Project is the ArgoCD project to provision in. Project string `json:"project"` // Source defines where to get the application configuration from. Source ApplicationSource `json:"source"` // Destination defines where to provision the application. Destination ApplicationDestination `json:"destination"` // SyncPolicy defines how to keep the application in sync. SyncPolicy ApplicationSyncPolicy `json:"syncPolicy"` // IgnoreDifferences ignores differences in resources when syncing. IgnoreDifferences []ApplicationIgnoreDifference `json:"ignoreDifferences,omitempty"` }
ApplicationSpec defines project specific metadata.
func (*ApplicationSpec) DeepCopy ¶
func (in *ApplicationSpec) DeepCopy() *ApplicationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSpec.
func (*ApplicationSpec) DeepCopyInto ¶
func (in *ApplicationSpec) DeepCopyInto(out *ApplicationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationStatus ¶
type ApplicationStatus struct { // Health defines the application's health status. Health *ApplicationHealth `json:"health"` // Sync defines the application's synchronization status. Sync *ApplicationSync `json:"sync"` }
ApplicationStatus defines the status of the project.
func (*ApplicationStatus) DeepCopy ¶
func (in *ApplicationStatus) DeepCopy() *ApplicationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationStatus.
func (*ApplicationStatus) DeepCopyInto ¶
func (in *ApplicationStatus) DeepCopyInto(out *ApplicationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationSync ¶
type ApplicationSync struct { // Status reports te sync status. Status ApplicationSyncStatus `json:"status"` }
func (*ApplicationSync) DeepCopy ¶
func (in *ApplicationSync) DeepCopy() *ApplicationSync
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSync.
func (*ApplicationSync) DeepCopyInto ¶
func (in *ApplicationSync) DeepCopyInto(out *ApplicationSync)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationSyncAutomation ¶
type ApplicationSyncAutomation struct { // SelfHeal enables self-healing. SelfHeal bool `json:"selfHeal,omitempty"` // Prune removes orphaned resources. Prune bool `json:"prune,omitempty"` }
func (*ApplicationSyncAutomation) DeepCopy ¶
func (in *ApplicationSyncAutomation) DeepCopy() *ApplicationSyncAutomation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSyncAutomation.
func (*ApplicationSyncAutomation) DeepCopyInto ¶
func (in *ApplicationSyncAutomation) DeepCopyInto(out *ApplicationSyncAutomation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationSyncOption ¶
type ApplicationSyncOption string
const ( // CreateNamespace identifies that argo need to create the namespace // to successfully provision the application. CreateNamespace ApplicationSyncOption = "CreateNamespace=true" // ServerSideApply assumes ArgoCD is broken and messes up diffs whereas // letting Kubernetes do it is better. ServerSideApply ApplicationSyncOption = "ServerSideApply=true" )
type ApplicationSyncPolicy ¶
type ApplicationSyncPolicy struct { // SyncOptions define any synchronization options. SyncOptions []ApplicationSyncOption `json:"syncOptions"` // Automated, if set, allows periodic synchronization. Automated *ApplicationSyncAutomation `json:"automated,omitempty"` }
func (*ApplicationSyncPolicy) DeepCopy ¶
func (in *ApplicationSyncPolicy) DeepCopy() *ApplicationSyncPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSyncPolicy.
func (*ApplicationSyncPolicy) DeepCopyInto ¶
func (in *ApplicationSyncPolicy) DeepCopyInto(out *ApplicationSyncPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationSyncStatus ¶
type ApplicationSyncStatus string
const ( // Synced is when the application has synchronized correctly, you must // check this as it's possible for the application to be healthy but // also not synced, which is broken. Synced ApplicationSyncStatus = "Synced" // Unknown means Argos not done anything yet. Unknown ApplicationSyncStatus = "Unknown" )
type HelmParameter ¶
type HelmParameter struct { // Name is a json path to a value to change. Name string `json:"name"` // Value is the value to set the parameter to. Value string `json:"value"` }
func (*HelmParameter) DeepCopy ¶
func (in *HelmParameter) DeepCopy() *HelmParameter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmParameter.
func (*HelmParameter) DeepCopyInto ¶
func (in *HelmParameter) DeepCopyInto(out *HelmParameter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.