Create creates an application
Body
metadatav1ObjectMetaObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
Show child attributes
annotationsobjectShow child attributes
[key: string]stringcreationTimestampv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
deletionGracePeriodSecondsinteger<int64>deletionTimestampv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
finalizersArray<string>generateNamestringGenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
If this field is specified and the generated name exists, the server will return a 409.
Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency +optional
generationinteger<int64>labelsobjectShow child attributes
[key: string]stringmanagedFieldsArray<v1ManagedFieldsEntry>ManagedFields maps workflow-id and version to the set of fields that are managed by that workflow. This is mostly for internal housekeeping, and users typically shouldn't need to set or understand this field. A workflow can be the user's name, a controller's name, or the name of a specific apply path like "ci-cd". The set of fields is always in the version that the workflow used when modifying the object.
+optional +listType=atomic +k8s:alpha(since: "1.37")=+k8s:optional
Show child attributes
ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource that the fieldset applies to.
apiVersionstringAPIVersion defines the version of this resource that this field set applies to. The format is "group/version" just like the top-level APIVersion field. It is necessary to track the version of a field set because it cannot be automatically converted.
fieldsTypestringfieldsV1v1FieldsV1FieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.
Each key is either a '.' representing the field itself, and will always map to an empty set, or a string representing a sub-field or item. The string will follow one of these four formats: 'f:', where is the name of a field in a struct, or key in a map 'v:', where is the exact json formatted value of a list item 'i:', where is position of a item in a list 'k:', where is a map of a list item's key fields to their unique values If a key maps to an empty Fields value, the field that key represents is part of the set.
The exact format is defined in sigs.k8s.io/structured-merge-diff +k8s:deepcopy-gen=false +protobuf.options.marshal=false +protobuf.options.(gogoproto.goproto_stringer)=false
Show child attributes
Rawstring<byte>Raw is the underlying serialization of this object.
Deprecated: Direct access to this field is deprecated. Use GetRawBytes, GetRawString, SetRawBytes, SetRawString, GetRawReader, NewFieldsV1 instead.
managerstringManager is an identifier of the workflow managing these fields.
operationstringsubresourcestringSubresource is the name of the subresource used to update that object, or empty string if the object was updated through the main resource. The value of this field is used to distinguish between managers, even if they share the same name. For example, a status update will be distinct from a regular update using the same manager name. Note that the APIVersion field is not related to the Subresource field and it always corresponds to the version of the main resource.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
namestringnamespacestringNamespace defines the space within which each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
Must be a DNS_LABEL. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces +optional
ownerReferencesArray<v1OwnerReference>Show child attributes
apiVersionstringblockOwnerDeletionbooleancontrollerbooleankindstringnamestringuidstringresourceVersionstringAn opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.
Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency +optional
selfLinkstringuidstringUID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
Populated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids +optional +k8s:alpha(since: "1.37")=+k8s:optional +k8s:alpha(since: "1.37")=+k8s:immutable
operationv1alpha1OperationShow child attributes
Show child attributes
namestringvaluestringinitiatedByv1alpha1OperationInitiatorShow child attributes
automatedbooleanAutomated is set to true if operation was initiated automatically by the application controller.
usernamestringShow child attributes
backoffv1alpha1BackoffShow child attributes
durationstringfactorinteger<int64>maxDurationstringlimitinteger<int64>Limit is the maximum number of attempts for retrying a failed sync. If set to 0, no retries will be performed.
refreshbooleanSyncOperation contains details about a sync operation.
Show child attributes
autoHealAttemptsCountinteger<int64>dryRunbooleanmanifestsArray<string>prunebooleanresourcesArray<v1alpha1SyncOperationResource>Show child attributes
SyncOperationResource contains resources to sync.
groupstringkindstringnamestringnamespacestringrevisionstringRevision is the revision (Git) or chart version (Helm) which to sync the application to If omitted, will use the revision specified in app spec.
revisionsArray<string>Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to If omitted, will use the revision specified in app spec.
Same fields as spec.source
Same fields as spec.source
syncOptionsArray<string>syncStrategyv1alpha1SyncStrategyShow child attributes
Show child attributes
forcebooleanForce indicates whether or not to supply the --force flag to kubectl apply.
The --force flag deletes and re-create the resource, when PATCH encounters conflict and has
retried for 5 times.
SyncStrategyHook will perform a sync using hooks annotations.
If no hook annotation is specified falls back to kubectl apply.
Show child attributes
syncStrategyApplyv1alpha1SyncStrategyApplySame fields as operation.sync.syncStrategy.apply
ApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision.
Show child attributes
destinationv1alpha1ApplicationDestinationShow child attributes
namestringName is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set.
namespacestringserverstringServer specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set.
ignoreDifferencesArray<v1alpha1ResourceIgnoreDifferences>Show child attributes
ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state.
groupstringjqPathExpressionsArray<string>jsonPointersArray<string>kindstringmanagedFieldsManagersArray<string>namestringnamespacestringSame fields as operation.info
projectstringProject is a reference to the project this application belongs to. The empty string means that application belongs to the 'default' project.
revisionHistoryLimitinteger<int64>RevisionHistoryLimit limits the number of items kept in the application's revision history, which is used for informational purposes as well as for rollbacks to previous versions. This should only be changed in exceptional circumstances. Setting to zero will store no history. This will reduce storage used. Increasing will increase the space used to store the history, so we do not recommend increasing it. Default is 10.
Show child attributes
chartstringChart is a Helm chart name, and must be specified for applications sourced from a Helm repo.
directoryv1alpha1ApplicationSourceDirectoryShow child attributes
disableExtensionFilterbooleanDisableExtensionFilter controls whether the built-in file-extension filter is skipped during manifest generation. When false (the default), only files with a .yaml, .yml, .json, or .jsonnet extension are considered as potential manifests. Set it to true to disable the filter so that files with custom extensions (e.g. *.yaml.sealed) can be matched by the include/exclude glob patterns instead.
excludestringincludestringShow child attributes
extVarsArray<v1alpha1JsonnetVar>Show child attributes
codebooleannamestringvaluestringlibsArray<string>Same fields as spec.source.directory.jsonnet.extVars
recursebooleanShow child attributes
apiVersionsArray<string>APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, Argo CD uses the API versions of the target cluster. The format is [group/]version/kind.
fileParametersArray<v1alpha1HelmFileParameter>Show child attributes
namestringpathstringignoreMissingValueFilesbooleankubeVersionstringKubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.
namespacestringNamespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace.
parametersArray<v1alpha1HelmParameter>Show child attributes
forceStringbooleannamestringvaluestringpassCredentialsbooleanreleaseNamestringskipCrdsbooleanskipSchemaValidationbooleanskipTestsbooleanSkipTests skips test manifest installation step (Helm's --skip-tests).
valueFilesArray<string>valuesstringvaluesObjectruntimeRawExtensionRawExtension is used to hold extensions in external versions.
To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.
// Internal package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.Object `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// External package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.RawExtension `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// On the wire, the JSON will look something like this:
{
"kind":"MyAPIObject",
"apiVersion":"v1",
"myPlugin": {
"kind":"PluginA",
"aOption":"foo",
},
}So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)
+k8s:deepcopy-gen=true +protobuf=true +k8s:openapi-gen=true
Show child attributes
rawstring<byte>Raw is the underlying serialization of this object.
TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
versionstringkustomizev1alpha1ApplicationSourceKustomizeShow child attributes
apiVersionsArray<string>APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, Argo CD uses the API versions of the target cluster. The format is [group/]version/kind.
commonAnnotationsobjectShow child attributes
[key: string]stringcommonAnnotationsEnvsubstbooleancommonLabelsobjectShow child attributes
[key: string]stringcomponentsArray<string>forceCommonAnnotationsbooleanforceCommonLabelsbooleanignoreMissingComponentsbooleanimagesArray<string>kubeVersionstringKubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.
labelIncludeTemplatesbooleanlabelWithoutSelectorbooleannamePrefixstringnameSuffixstringnamespacestringShow child attributes
optionsobjectShow child attributes
[key: string]booleanpatchstringpathstringShow child attributes
annotationSelectorstringlabelSelectorstringShow child attributes
Show child attributes
groupstringkindstringversionstringnamestringnamespacestringreplicasArray<v1alpha1KustomizeReplica>Show child attributes
countintstrIntOrString+protobuf=true +protobuf.options.(gogoproto.goproto_stringer)=false +k8s:openapi-gen=true +k8s:openapi-model-package=io.k8s.apimachinery.pkg.util.intstr
Show child attributes
intValinteger<int32>strValstringtypeinteger<int64>namestringversionstringnamestringName is used to refer to a source and is displayed in the UI. It is used in multi-source Applications.
pathstringPath is a directory path within the Git repository, and is only valid for applications sourced from Git.
Show child attributes
Show child attributes
namestringvaluestringnamestringShow child attributes
arrayArray<string>Array is the value of an array type parameter.
mapobjectMap is the value of a map type parameter.
Show child attributes
[key: string]stringnamestringName is the name identifying a parameter.
stringstringString_ is the value of a string type parameter.
refstringRef is reference to another source within sources field. This field will not be used if used with a source tag.
repoURLstringtagPrefixstringTagPrefix filters git tags to only those with this prefix before evaluating targetRevision as a semver constraint. The prefix is stripped from tag names before comparison and re-added to the resolved version. For example, with tagPrefix "component-b/" and targetRevision "1.0.*", tags like "component-b/1.0.0" and "component-b/1.0.1" are candidates, and the constraint resolves to "component-b/1.0.1".
targetRevisionstringTargetRevision defines the revision of the source to sync the application to. In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. In case of Helm, this is a semver tag for the Chart's version.
sourceHydratorv1alpha1SourceHydratorSourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
Show child attributes
drySourcev1alpha1DrySourceDrySource specifies a location for dry "don't repeat yourself" manifest source information.
Show child attributes
directoryv1alpha1ApplicationSourceDirectorySame fields as spec.source.directory
Same fields as spec.source.helm
kustomizev1alpha1ApplicationSourceKustomizeSame fields as spec.source.kustomize
pathstringSame fields as spec.source.plugin
repoURLstringtargetRevisionstringhydrateTov1alpha1HydrateToHydrateTo specifies a branch to which hydrated manifests should be pushed as a "staging area" before being moved to the SyncSource. The repository and path are inherited from SyncSource.
Show child attributes
targetBranchstringsyncSourcev1alpha1SyncSourceSyncSource specifies a location from which hydrated manifests may be synced. If RepoURL is not set, it is assumed to be the same as the associated DrySource config in the SourceHydrator.
Show child attributes
pathstringPath is a directory path within the git repository where hydrated manifests should be committed to and synced from. The Path should never point to the root of the repo. If hydrateTo is set, this is just the path from which hydrated manifests will be synced.
+kubebuilder:validation:Required
+kubebuilder:validation:MinLength=1
+kubebuilder:validation:Pattern=^.{2,}|[^./]$
repoURLstringRepoURL is the URL to the git repository that contains the hydrated manifests. If not set, defaults to the DrySource.RepoURL.
targetBranchstringTargetBranch is the branch from which hydrated manifests will be synced. If HydrateTo is not set, this is also the branch to which hydrated manifests are committed.
Same fields as spec.source
syncPolicyv1alpha1SyncPolicyShow child attributes
automatedv1alpha1SyncPolicyAutomatedShow child attributes
allowEmptybooleanenabledbooleanprunebooleanselfHealbooleanmanagedNamespaceMetadatav1alpha1ManagedNamespaceMetadataShow child attributes
annotationsobjectShow child attributes
[key: string]stringlabelsobjectShow child attributes
[key: string]stringSame fields as operation.retry
syncOptionsArray<string>Show child attributes
conditionsArray<v1alpha1ApplicationCondition>Show child attributes
lastTransitionTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringtypestringcontrollerNamespacestringhealthv1alpha1AppHealthStatusShow child attributes
lastTransitionTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringShow child attributes
deployStartedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
deployedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
idinteger<int64>initiatedByv1alpha1OperationInitiatorSame fields as operation.initiatedBy
revisionstringrevisionsArray<string>Same fields as spec.source
Same fields as spec.source
observedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
operationStatev1alpha1OperationStateShow child attributes
finishedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringMessage holds any pertinent messages when attempting to perform operation (typically errors).
operationv1alpha1OperationSame fields as operation
phasestringretryCountinteger<int64>startedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
syncResultv1alpha1SyncOperationResultShow child attributes
managedNamespaceMetadatav1alpha1ManagedNamespaceMetadataSame fields as spec.syncPolicy.managedNamespaceMetadata
resourcesArray<v1alpha1ResourceResult>Show child attributes
groupstringhookPhasestringHookPhase contains the state of any operation associated with this resource OR hook This can also contain values for non-hook resources.
hookTypestringimagesArray<string>kindstringmessagestringnamestringnamespacestringstatusstringsyncPhasestringversionstringrevisionstringrevisionsArray<string>Same fields as spec.source
Same fields as spec.source
reconciledAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
resourceHealthSourcestringShow child attributes
ResourceStatus holds the current synchronization and health status of a Kubernetes resource.
groupstringGroup represents the API group of the resource (e.g., "apps" for Deployments).
healthv1alpha1HealthStatusShow child attributes
lastTransitionTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringhookbooleanHook is true if the resource is used as a lifecycle hook in an Argo CD application.
kindstringKind specifies the type of the resource (e.g., "Deployment", "Service").
namestringName is the unique name of the resource within the namespace.
namespacestringNamespace defines the Kubernetes namespace where the resource is located.
requiresDeletionConfirmationbooleanRequiresDeletionConfirmation is true if the resource requires explicit user confirmation before deletion.
requiresPruningbooleanRequiresPruning is true if the resource needs to be pruned (deleted) as part of synchronization.
statusstringStatus represents the synchronization state of the resource (e.g., Synced, OutOfSync).
syncWaveinteger<int64>SyncWave determines the order in which resources are applied during a sync operation. Lower values are applied first.
versionstringVersion indicates the API version of the resource (e.g., "v1", "v1beta1").
sourceHydratorv1alpha1SourceHydratorStatusShow child attributes
currentOperationv1alpha1HydrateOperationShow child attributes
drySHAstringfinishedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
hydratedSHAstringmessagestringphasestringsourceHydratorv1alpha1SourceHydratorSourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
Same fields as spec.sourceHydrator
startedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
lastComparedDryRevisionstringLastComparedDryRevision holds the resolved revision from the most recent dry source comparison. This is updated on every evaluation, even when hydration is skipped due to no changes.
lastSuccessfulOperationv1alpha1SuccessfulHydrateOperationShow child attributes
drySHAstringhydratedSHAstringsourceHydratorv1alpha1SourceHydratorSourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
Same fields as spec.sourceHydrator
sourceTypestringsourceTypesArray<string>summaryv1alpha1ApplicationSummaryShow child attributes
externalURLsArray<string>ExternalURLs holds all external URLs of application child resources.
imagesArray<string>Images holds all images of application child resources.
isAppOfAppsbooleanIsAppOfApps holds true if the application has any application for child resource.
Show child attributes
comparedTov1alpha1ComparedToShow child attributes
destinationv1alpha1ApplicationDestinationSame fields as spec.destination
ignoreDifferencesArray<v1alpha1ResourceIgnoreDifferences>Same fields as spec.ignoreDifferences
Same fields as spec.source
Same fields as spec.source
revisionstringrevisionsArray<string>statusstringParameters
upsertbooleanqueryvalidatebooleanqueryResponse
A successful response.
Response fields application/json
metadatav1ObjectMetaObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
Show child attributes
annotationsobjectShow child attributes
[key: string]stringcreationTimestampv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
deletionGracePeriodSecondsinteger<int64>deletionTimestampv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
finalizersArray<string>generateNamestringGenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.
If this field is specified and the generated name exists, the server will return a 409.
Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency +optional
generationinteger<int64>labelsobjectShow child attributes
[key: string]stringmanagedFieldsArray<v1ManagedFieldsEntry>ManagedFields maps workflow-id and version to the set of fields that are managed by that workflow. This is mostly for internal housekeeping, and users typically shouldn't need to set or understand this field. A workflow can be the user's name, a controller's name, or the name of a specific apply path like "ci-cd". The set of fields is always in the version that the workflow used when modifying the object.
+optional +listType=atomic +k8s:alpha(since: "1.37")=+k8s:optional
Show child attributes
ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource that the fieldset applies to.
apiVersionstringAPIVersion defines the version of this resource that this field set applies to. The format is "group/version" just like the top-level APIVersion field. It is necessary to track the version of a field set because it cannot be automatically converted.
fieldsTypestringfieldsV1v1FieldsV1FieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.
Each key is either a '.' representing the field itself, and will always map to an empty set, or a string representing a sub-field or item. The string will follow one of these four formats: 'f:', where is the name of a field in a struct, or key in a map 'v:', where is the exact json formatted value of a list item 'i:', where is position of a item in a list 'k:', where is a map of a list item's key fields to their unique values If a key maps to an empty Fields value, the field that key represents is part of the set.
The exact format is defined in sigs.k8s.io/structured-merge-diff +k8s:deepcopy-gen=false +protobuf.options.marshal=false +protobuf.options.(gogoproto.goproto_stringer)=false
Show child attributes
Rawstring<byte>Raw is the underlying serialization of this object.
Deprecated: Direct access to this field is deprecated. Use GetRawBytes, GetRawString, SetRawBytes, SetRawString, GetRawReader, NewFieldsV1 instead.
managerstringManager is an identifier of the workflow managing these fields.
operationstringsubresourcestringSubresource is the name of the subresource used to update that object, or empty string if the object was updated through the main resource. The value of this field is used to distinguish between managers, even if they share the same name. For example, a status update will be distinct from a regular update using the same manager name. Note that the APIVersion field is not related to the Subresource field and it always corresponds to the version of the main resource.
Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
namestringnamespacestringNamespace defines the space within which each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.
Must be a DNS_LABEL. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces +optional
ownerReferencesArray<v1OwnerReference>Show child attributes
apiVersionstringblockOwnerDeletionbooleancontrollerbooleankindstringnamestringuidstringresourceVersionstringAn opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.
Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency +optional
selfLinkstringuidstringUID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.
Populated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids +optional +k8s:alpha(since: "1.37")=+k8s:optional +k8s:alpha(since: "1.37")=+k8s:immutable
operationv1alpha1OperationShow child attributes
Show child attributes
namestringvaluestringinitiatedByv1alpha1OperationInitiatorShow child attributes
automatedbooleanAutomated is set to true if operation was initiated automatically by the application controller.
usernamestringShow child attributes
backoffv1alpha1BackoffShow child attributes
durationstringfactorinteger<int64>maxDurationstringlimitinteger<int64>Limit is the maximum number of attempts for retrying a failed sync. If set to 0, no retries will be performed.
refreshbooleanSyncOperation contains details about a sync operation.
Show child attributes
autoHealAttemptsCountinteger<int64>dryRunbooleanmanifestsArray<string>prunebooleanresourcesArray<v1alpha1SyncOperationResource>Show child attributes
SyncOperationResource contains resources to sync.
groupstringkindstringnamestringnamespacestringrevisionstringRevision is the revision (Git) or chart version (Helm) which to sync the application to If omitted, will use the revision specified in app spec.
revisionsArray<string>Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to If omitted, will use the revision specified in app spec.
Same fields as spec.source
Same fields as spec.source
syncOptionsArray<string>syncStrategyv1alpha1SyncStrategyShow child attributes
Show child attributes
forcebooleanForce indicates whether or not to supply the --force flag to kubectl apply.
The --force flag deletes and re-create the resource, when PATCH encounters conflict and has
retried for 5 times.
SyncStrategyHook will perform a sync using hooks annotations.
If no hook annotation is specified falls back to kubectl apply.
Show child attributes
syncStrategyApplyv1alpha1SyncStrategyApplySame fields as operation.sync.syncStrategy.apply
ApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision.
Show child attributes
destinationv1alpha1ApplicationDestinationShow child attributes
namestringName is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set.
namespacestringserverstringServer specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set.
ignoreDifferencesArray<v1alpha1ResourceIgnoreDifferences>Show child attributes
ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state.
groupstringjqPathExpressionsArray<string>jsonPointersArray<string>kindstringmanagedFieldsManagersArray<string>namestringnamespacestringSame fields as operation.info
projectstringProject is a reference to the project this application belongs to. The empty string means that application belongs to the 'default' project.
revisionHistoryLimitinteger<int64>RevisionHistoryLimit limits the number of items kept in the application's revision history, which is used for informational purposes as well as for rollbacks to previous versions. This should only be changed in exceptional circumstances. Setting to zero will store no history. This will reduce storage used. Increasing will increase the space used to store the history, so we do not recommend increasing it. Default is 10.
Show child attributes
chartstringChart is a Helm chart name, and must be specified for applications sourced from a Helm repo.
directoryv1alpha1ApplicationSourceDirectoryShow child attributes
disableExtensionFilterbooleanDisableExtensionFilter controls whether the built-in file-extension filter is skipped during manifest generation. When false (the default), only files with a .yaml, .yml, .json, or .jsonnet extension are considered as potential manifests. Set it to true to disable the filter so that files with custom extensions (e.g. *.yaml.sealed) can be matched by the include/exclude glob patterns instead.
excludestringincludestringShow child attributes
extVarsArray<v1alpha1JsonnetVar>Show child attributes
codebooleannamestringvaluestringlibsArray<string>Same fields as spec.source.directory.jsonnet.extVars
recursebooleanShow child attributes
apiVersionsArray<string>APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, Argo CD uses the API versions of the target cluster. The format is [group/]version/kind.
fileParametersArray<v1alpha1HelmFileParameter>Show child attributes
namestringpathstringignoreMissingValueFilesbooleankubeVersionstringKubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.
namespacestringNamespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace.
parametersArray<v1alpha1HelmParameter>Show child attributes
forceStringbooleannamestringvaluestringpassCredentialsbooleanreleaseNamestringskipCrdsbooleanskipSchemaValidationbooleanskipTestsbooleanSkipTests skips test manifest installation step (Helm's --skip-tests).
valueFilesArray<string>valuesstringvaluesObjectruntimeRawExtensionRawExtension is used to hold extensions in external versions.
To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.
// Internal package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.Object `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// External package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.RawExtension `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// On the wire, the JSON will look something like this:
{
"kind":"MyAPIObject",
"apiVersion":"v1",
"myPlugin": {
"kind":"PluginA",
"aOption":"foo",
},
}So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)
+k8s:deepcopy-gen=true +protobuf=true +k8s:openapi-gen=true
Show child attributes
rawstring<byte>Raw is the underlying serialization of this object.
TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
versionstringkustomizev1alpha1ApplicationSourceKustomizeShow child attributes
apiVersionsArray<string>APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, Argo CD uses the API versions of the target cluster. The format is [group/]version/kind.
commonAnnotationsobjectShow child attributes
[key: string]stringcommonAnnotationsEnvsubstbooleancommonLabelsobjectShow child attributes
[key: string]stringcomponentsArray<string>forceCommonAnnotationsbooleanforceCommonLabelsbooleanignoreMissingComponentsbooleanimagesArray<string>kubeVersionstringKubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.
labelIncludeTemplatesbooleanlabelWithoutSelectorbooleannamePrefixstringnameSuffixstringnamespacestringShow child attributes
optionsobjectShow child attributes
[key: string]booleanpatchstringpathstringShow child attributes
annotationSelectorstringlabelSelectorstringShow child attributes
Show child attributes
groupstringkindstringversionstringnamestringnamespacestringreplicasArray<v1alpha1KustomizeReplica>Show child attributes
countintstrIntOrString+protobuf=true +protobuf.options.(gogoproto.goproto_stringer)=false +k8s:openapi-gen=true +k8s:openapi-model-package=io.k8s.apimachinery.pkg.util.intstr
Show child attributes
intValinteger<int32>strValstringtypeinteger<int64>namestringversionstringnamestringName is used to refer to a source and is displayed in the UI. It is used in multi-source Applications.
pathstringPath is a directory path within the Git repository, and is only valid for applications sourced from Git.
Show child attributes
Show child attributes
namestringvaluestringnamestringShow child attributes
arrayArray<string>Array is the value of an array type parameter.
mapobjectMap is the value of a map type parameter.
Show child attributes
[key: string]stringnamestringName is the name identifying a parameter.
stringstringString_ is the value of a string type parameter.
refstringRef is reference to another source within sources field. This field will not be used if used with a source tag.
repoURLstringtagPrefixstringTagPrefix filters git tags to only those with this prefix before evaluating targetRevision as a semver constraint. The prefix is stripped from tag names before comparison and re-added to the resolved version. For example, with tagPrefix "component-b/" and targetRevision "1.0.*", tags like "component-b/1.0.0" and "component-b/1.0.1" are candidates, and the constraint resolves to "component-b/1.0.1".
targetRevisionstringTargetRevision defines the revision of the source to sync the application to. In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. In case of Helm, this is a semver tag for the Chart's version.
sourceHydratorv1alpha1SourceHydratorSourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
Show child attributes
drySourcev1alpha1DrySourceDrySource specifies a location for dry "don't repeat yourself" manifest source information.
Show child attributes
directoryv1alpha1ApplicationSourceDirectorySame fields as spec.source.directory
Same fields as spec.source.helm
kustomizev1alpha1ApplicationSourceKustomizeSame fields as spec.source.kustomize
pathstringSame fields as spec.source.plugin
repoURLstringtargetRevisionstringhydrateTov1alpha1HydrateToHydrateTo specifies a branch to which hydrated manifests should be pushed as a "staging area" before being moved to the SyncSource. The repository and path are inherited from SyncSource.
Show child attributes
targetBranchstringsyncSourcev1alpha1SyncSourceSyncSource specifies a location from which hydrated manifests may be synced. If RepoURL is not set, it is assumed to be the same as the associated DrySource config in the SourceHydrator.
Show child attributes
pathstringPath is a directory path within the git repository where hydrated manifests should be committed to and synced from. The Path should never point to the root of the repo. If hydrateTo is set, this is just the path from which hydrated manifests will be synced.
+kubebuilder:validation:Required
+kubebuilder:validation:MinLength=1
+kubebuilder:validation:Pattern=^.{2,}|[^./]$
repoURLstringRepoURL is the URL to the git repository that contains the hydrated manifests. If not set, defaults to the DrySource.RepoURL.
targetBranchstringTargetBranch is the branch from which hydrated manifests will be synced. If HydrateTo is not set, this is also the branch to which hydrated manifests are committed.
Same fields as spec.source
syncPolicyv1alpha1SyncPolicyShow child attributes
automatedv1alpha1SyncPolicyAutomatedShow child attributes
allowEmptybooleanenabledbooleanprunebooleanselfHealbooleanmanagedNamespaceMetadatav1alpha1ManagedNamespaceMetadataShow child attributes
annotationsobjectShow child attributes
[key: string]stringlabelsobjectShow child attributes
[key: string]stringSame fields as operation.retry
syncOptionsArray<string>Show child attributes
conditionsArray<v1alpha1ApplicationCondition>Show child attributes
lastTransitionTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringtypestringcontrollerNamespacestringhealthv1alpha1AppHealthStatusShow child attributes
lastTransitionTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringShow child attributes
deployStartedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
deployedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
idinteger<int64>initiatedByv1alpha1OperationInitiatorSame fields as operation.initiatedBy
revisionstringrevisionsArray<string>Same fields as spec.source
Same fields as spec.source
observedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
operationStatev1alpha1OperationStateShow child attributes
finishedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringMessage holds any pertinent messages when attempting to perform operation (typically errors).
operationv1alpha1OperationSame fields as operation
phasestringretryCountinteger<int64>startedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
syncResultv1alpha1SyncOperationResultShow child attributes
managedNamespaceMetadatav1alpha1ManagedNamespaceMetadataSame fields as spec.syncPolicy.managedNamespaceMetadata
resourcesArray<v1alpha1ResourceResult>Show child attributes
groupstringhookPhasestringHookPhase contains the state of any operation associated with this resource OR hook This can also contain values for non-hook resources.
hookTypestringimagesArray<string>kindstringmessagestringnamestringnamespacestringstatusstringsyncPhasestringversionstringrevisionstringrevisionsArray<string>Same fields as spec.source
Same fields as spec.source
reconciledAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
resourceHealthSourcestringShow child attributes
ResourceStatus holds the current synchronization and health status of a Kubernetes resource.
groupstringGroup represents the API group of the resource (e.g., "apps" for Deployments).
healthv1alpha1HealthStatusShow child attributes
lastTransitionTimev1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
messagestringstatusstringhookbooleanHook is true if the resource is used as a lifecycle hook in an Argo CD application.
kindstringKind specifies the type of the resource (e.g., "Deployment", "Service").
namestringName is the unique name of the resource within the namespace.
namespacestringNamespace defines the Kubernetes namespace where the resource is located.
requiresDeletionConfirmationbooleanRequiresDeletionConfirmation is true if the resource requires explicit user confirmation before deletion.
requiresPruningbooleanRequiresPruning is true if the resource needs to be pruned (deleted) as part of synchronization.
statusstringStatus represents the synchronization state of the resource (e.g., Synced, OutOfSync).
syncWaveinteger<int64>SyncWave determines the order in which resources are applied during a sync operation. Lower values are applied first.
versionstringVersion indicates the API version of the resource (e.g., "v1", "v1beta1").
sourceHydratorv1alpha1SourceHydratorStatusShow child attributes
currentOperationv1alpha1HydrateOperationShow child attributes
drySHAstringfinishedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
hydratedSHAstringmessagestringphasestringsourceHydratorv1alpha1SourceHydratorSourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
Same fields as spec.sourceHydrator
startedAtv1Time<date-time>Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.
+protobuf.options.marshal=false +protobuf.as=Timestamp +protobuf.options.(gogoproto.goproto_stringer)=false
lastComparedDryRevisionstringLastComparedDryRevision holds the resolved revision from the most recent dry source comparison. This is updated on every evaluation, even when hydration is skipped due to no changes.
lastSuccessfulOperationv1alpha1SuccessfulHydrateOperationShow child attributes
drySHAstringhydratedSHAstringsourceHydratorv1alpha1SourceHydratorSourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
Same fields as spec.sourceHydrator
sourceTypestringsourceTypesArray<string>summaryv1alpha1ApplicationSummaryShow child attributes
externalURLsArray<string>ExternalURLs holds all external URLs of application child resources.
imagesArray<string>Images holds all images of application child resources.
isAppOfAppsbooleanIsAppOfApps holds true if the application has any application for child resource.
Show child attributes
comparedTov1alpha1ComparedToShow child attributes
destinationv1alpha1ApplicationDestinationSame fields as spec.destination
ignoreDifferencesArray<v1alpha1ResourceIgnoreDifferences>Same fields as spec.ignoreDifferences
Same fields as spec.source
Same fields as spec.source
revisionstringrevisionsArray<string>statusstringAn unexpected error response.
Response fields application/json
codeinteger<int32>detailsArray<protobufAny>Show child attributes
type_ urlstringvaluestring<byte>errorstringmessagestringAuthorization
bearerapiKey in headerA token sent as Authorization: Bearer <token>. API Docs shows how to get one.
