v1alpha1ComparedTo
objectdestinationv1alpha1ApplicationDestinationShow 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>namestringnamespacestringShow 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>Show child attributes
codebooleannamestringvaluestringrecursebooleanShow 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.
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>Show child attributes
codebooleannamestringvaluestringrecursebooleanShow 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.
