diff --git a/charts/argocd-applicationset/Chart.yaml b/charts/argocd-applicationset/Chart.yaml index f9f599c7..0796bbef 100644 --- a/charts/argocd-applicationset/Chart.yaml +++ b/charts/argocd-applicationset/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argocd-applicationset description: A Helm chart for installing ArgoCD ApplicationSet type: application -version: 1.2.0 +version: 1.3.0 appVersion: "v0.2.0" home: https://github.com/argoproj/argo-helm icon: https://argocd-applicationset.readthedocs.io/en/stable/assets/logo.png @@ -14,4 +14,5 @@ maintainers: - name: maruina annotations: artifacthub.io/changes: | - - "[Changed]: Bumped argocd-applicationset to 0.2.0" + - "[Fixed]: Use new image repository" + - "[Changed]: Updated ApplicationSet CRD" diff --git a/charts/argocd-applicationset/crds/crd-applicationset.yaml b/charts/argocd-applicationset/crds/crd-applicationset.yaml index 734ce34a..9132148a 100644 --- a/charts/argocd-applicationset/crds/crd-applicationset.yaml +++ b/charts/argocd-applicationset/crds/crd-applicationset.yaml @@ -1,8 +1,10 @@ +--- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.3.0 + creationTimestamp: null name: applicationsets.argoproj.io spec: group: argoproj.io @@ -10,6 +12,9 @@ spec: kind: ApplicationSet listKind: ApplicationSetList plural: applicationsets + shortNames: + - appset + - appsets singular: applicationset scope: Namespaced versions: @@ -38,6 +43,538 @@ spec: items: description: ApplicationSetGenerator include list item info properties: + clusterDecisionResource: + description: DuckType defines a generator to match against clusters + registered with ArgoCD. + properties: + configMapRef: + description: ConfigMapRef is a ConfigMap with the duck type + definitions needed to retreive the data this + includes apiVersion(group/version), kind, matchKey and + validation settings Name is the resource name of the kind, + group and version, defined in the ConfigMapRef RequeueAfterSeconds + is how long before the duckType will be rechecked for + a change + type: string + labelSelector: + description: A label selector is a label query over a set + of resources. The result of matchLabels and matchExpressions + are ANDed. An empty label selector matches all objects. + A null label selector matches no objects. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be empty. + This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + name: + type: string + requeueAfterSeconds: + format: int64 + type: integer + template: + description: ApplicationSetTemplate represents argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents the + Argo CD application fields that may be used for Applications + generated from the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired application + state. Contains link to repository with application + definition and additional parameters link definition + revision. + properties: + destination: + description: Destination is a reference to the target + Kubernetes server and namespace + properties: + name: + description: Name is an alternate way of specifying + the target cluster by its symbolic name + type: string + namespace: + description: Namespace specifies the target + namespace for the application's resources. + The namespace will only be set for namespace-scoped + resources that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the URL of the + target cluster and must be set to the Kubernetes + control plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list of resources + and their fields which should be ignored during + comparison + items: + description: ResourceIgnoreDifferences contains + resource filter and list of json paths which + should be ignored during comparison with live + state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) that relates + to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to the project + this application belongs to. The empty string + means that application belongs to the 'default' + project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to the location + of the application's manifests or chart + properties: + chart: + description: Chart is a Helm chart name, and + must be specified for applications sourced + from a Helm repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be + explicitly excluded from being used during + manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be + explicitly included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search + dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet + Top-level Arguments + items: + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to + scan a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file + parameter that's passed to helm template + during manifest generation + properties: + name: + description: Name is the name of the + Helm parameter + type: string + path: + description: Path is the path to the + file containing the values for the + Helm parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list of Helm + parameters which are passed to the helm + template command upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during + manifest generation + properties: + forceString: + description: ForceString determines + whether to tell Helm to interpret + booleans and numbers as strings + type: boolean + name: + description: Name is the name of the + Helm parameter + type: string + value: + description: Value is the value for + the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the + application name + type: string + valueFiles: + description: ValuesFiles is a list of Helm + value files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values + to be passed to helm template, typically + defined as a block + type: string + version: + description: Version is the Helm version + to use for templating (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet specific + options + properties: + environment: + description: Environment is a ksonnet application + environment name + type: string + parameters: + description: Parameters are a list of ksonnet + component parameter override values + items: + description: KsonnetParameter is a ksonnet + component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list + of additional annotations to add to rendered + manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies + whether to force applying common labels + to resources for Kustomize apps + type: boolean + images: + description: Images is a list of Kustomize + image override specifications + items: + description: KustomizeImage represents + a Kustomize image definition in the + format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + path: + description: Path is a directory path within + the Git repository, and is only valid for + applications sourced from Git. + type: string + plugin: + description: ConfigManagementPlugin holds config + management plugin specific options + properties: + env: + description: Env is a list of environment + variable entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the + variable, usually expressed in uppercase + type: string + value: + description: Value is the value of + the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application + manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when and how a + sync will be performed + properties: + automated: + description: Automated will keep an application + synced to the target revision + properties: + allowEmpty: + description: 'AllowEmpty allows apps have + zero live resources (default: false)' + type: boolean + prune: + description: 'Prune specifies whether to + delete resources from the cluster that + are not found in the sources anymore as + part of automated sync (default: false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes whether + to revert resources back to their desired + state upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed sync retry + behavior + properties: + backoff: + description: Backoff controls how to backoff + on subsequent retries of failed syncs + properties: + duration: + description: Duration is the amount + to back off. Default unit is seconds, + but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply + the base duration after each failed + retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum + amount of time allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum number + of attempts for retrying a failed sync. + If set to 0, no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to specify whole + app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + values: + additionalProperties: + type: string + description: Values contains key/value pairs which are passed + directly as parameters to the template + type: object + required: + - configMapRef + type: object clusters: description: ClusterGenerator defines a generator to match against clusters registered with ArgoCD. @@ -102,6 +639,10 @@ spec: additionalProperties: type: string type: object + finalizers: + items: + type: string + type: array labels: additionalProperties: type: string @@ -118,27 +659,29 @@ spec: revision. properties: destination: - description: Destination overrides the kubernetes - server and namespace defined in the environment - ksonnet app.yaml + description: Destination is a reference to the target + Kubernetes server and namespace properties: name: - description: Name of the destination cluster - which can be used instead of server (url) - field + description: Name is an alternate way of specifying + the target cluster by its symbolic name type: string namespace: - description: Namespace overrides the environment - namespace value in the ksonnet app.yaml + description: Namespace specifies the target + namespace for the application's resources. + The namespace will only be set for namespace-scoped + resources that have not set a value for .metadata.namespace type: string server: - description: Server overrides the environment - server value in the ksonnet app.yaml + description: Server specifies the URL of the + target cluster and must be set to the Kubernetes + control plane API type: string type: object ignoreDifferences: - description: IgnoreDifferences controls resources - fields which should be ignored during comparison + description: IgnoreDifferences is a list of resources + and their fields which should be ignored during + comparison items: description: ResourceIgnoreDifferences contains resource filter and list of json paths which @@ -147,6 +690,10 @@ spec: properties: group: type: string + jqPathExpressions: + items: + type: string + type: array jsonPointers: items: type: string @@ -158,12 +705,11 @@ spec: namespace: type: string required: - - jsonPointers - kind type: object type: array info: - description: Infos contains a list of useful information + description: Info contains a list of information (URLs, email addresses, and plain text) that relates to the application items: @@ -178,43 +724,58 @@ spec: type: object type: array project: - description: Project is a application project name. - Empty name means that application belongs to 'default' + description: Project is a reference to the project + this application belongs to. The empty string + means that application belongs to the 'default' project. type: string revisionHistoryLimit: - description: This limits this number of items kept - in the apps revision history. 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. + description: 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. format: int64 type: integer source: description: Source is a reference to the location - ksonnet application definition + of the application's manifests or chart properties: chart: - description: Chart is a Helm chart name + description: Chart is a Helm chart name, and + must be specified for applications sourced + from a Helm repo. type: string directory: description: Directory holds path/directory specific options properties: exclude: + description: Exclude contains a glob pattern + to match paths against that should be + explicitly excluded from being used during + manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be + explicitly included during manifest generation type: string jsonnet: - description: ApplicationSourceJsonnet holds - jsonnet specific options + description: Jsonnet holds options specific + to Jsonnet properties: extVars: description: ExtVars is a list of Jsonnet External Variables items: - description: JsonnetVar is a jsonnet - variable + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation properties: code: type: boolean @@ -237,8 +798,9 @@ spec: description: TLAS is a list of Jsonnet Top-level Arguments items: - description: JsonnetVar is a jsonnet - variable + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation properties: code: type: boolean @@ -253,6 +815,8 @@ spec: type: array type: object recurse: + description: Recurse specifies whether to + scan a directory recursively for manifests type: boolean type: object helm: @@ -263,24 +827,28 @@ spec: to the helm template items: description: HelmFileParameter is a file - parameter to a helm template + parameter that's passed to helm template + during manifest generation properties: name: description: Name is the name of the - helm parameter + Helm parameter type: string path: - description: Path is the path value - for the helm parameter + description: Path is the path to the + file containing the values for the + Helm parameter type: string type: object type: array parameters: - description: Parameters are parameters to - the helm template + description: Parameters is a list of Helm + parameters which are passed to the helm + template command upon manifest generation items: description: HelmParameter is a parameter - to a helm template + that's passed to helm template during + manifest generation properties: forceString: description: ForceString determines @@ -289,17 +857,18 @@ spec: type: boolean name: description: Name is the name of the - helm parameter + Helm parameter type: string value: description: Value is the value for - the helm parameter + the Helm parameter type: string type: object type: array releaseName: - description: The Helm release name. If omitted - it will use the application name + description: ReleaseName is the Helm release + name to use. If omitted it will use the + application name type: string valueFiles: description: ValuesFiles is a list of Helm @@ -308,12 +877,13 @@ spec: type: string type: array values: - description: Values is Helm values, typically + description: Values specifies Helm values + to be passed to helm template, typically defined as a block type: string version: description: Version is the Helm version - to use for templating with + to use for templating (either "2" or "3") type: string type: object ksonnet: @@ -350,50 +920,71 @@ spec: commonAnnotations: additionalProperties: type: string - description: CommonAnnotations adds additional - kustomize commonAnnotations + description: CommonAnnotations is a list + of additional annotations to add to rendered + manifests type: object commonLabels: additionalProperties: type: string - description: CommonLabels adds additional - kustomize commonLabels + description: CommonLabels is a list of additional + labels to add to rendered manifests type: object + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies + whether to force applying common labels + to resources for Kustomize apps + type: boolean images: - description: Images are kustomize image - overrides + description: Images is a list of Kustomize + image override specifications items: + description: KustomizeImage represents + a Kustomize image definition in the + format [old_image_name=]: type: string type: array namePrefix: description: NamePrefix is a prefix appended - to resources for kustomize apps + to resources for Kustomize apps type: string nameSuffix: description: NameSuffix is a suffix appended - to resources for kustomize apps + to resources for Kustomize apps type: string version: - description: Version contains optional Kustomize - version + description: Version controls which version + of Kustomize to use for rendering manifests type: string type: object path: description: Path is a directory path within - the Git repository + the Git repository, and is only valid for + applications sourced from Git. type: string plugin: description: ConfigManagementPlugin holds config management plugin specific options properties: env: + description: Env is a list of environment + variable entries items: + description: EnvEntry represents an entry + in the application's environment properties: name: - description: the name, usually uppercase + description: Name is the name of the + variable, usually expressed in uppercase type: string value: - description: the value + description: Value is the value of + the variable type: string required: - name @@ -404,20 +995,24 @@ spec: type: string type: object repoURL: - description: RepoURL is the repository URL of - the application manifests + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application + manifests type: string targetRevision: - description: TargetRevision defines the commit, - tag, or branch in which to sync the application - to. If omitted, will sync to HEAD + description: TargetRevision 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. type: string required: - repoURL type: object syncPolicy: - description: SyncPolicy controls when a sync will - be performed + description: SyncPolicy controls when and how a + sync will be performed properties: automated: description: Automated will keep an application @@ -428,13 +1023,16 @@ spec: zero live resources (default: false)' type: boolean prune: - description: 'Prune will prune resources - automatically as part of automated sync - (default: false)' + description: 'Prune specifies whether to + delete resources from the cluster that + are not found in the sources anymore as + part of automated sync (default: false)' type: boolean selfHeal: - description: 'SelfHeal enables auto-syncing - if (default: false)' + description: 'SelfHeal specifes whether + to revert resources back to their desired + state upon modification in the cluster + (default: false)' type: boolean type: object retry: @@ -442,7 +1040,8 @@ spec: behavior properties: backoff: - description: Backoff is a backoff strategy + description: Backoff controls how to backoff + on subsequent retries of failed syncs properties: duration: description: Duration is the amount @@ -464,7 +1063,8 @@ spec: type: object limit: description: Limit is the maximum number - of attempts when retrying a container + of attempts for retrying a failed sync. + If set to 0, no retries will be performed. format: int64 type: integer type: object @@ -496,6 +1096,8 @@ spec: directories: items: properties: + exclude: + type: boolean path: type: string required: @@ -530,6 +1132,10 @@ spec: additionalProperties: type: string type: object + finalizers: + items: + type: string + type: array labels: additionalProperties: type: string @@ -546,27 +1152,29 @@ spec: revision. properties: destination: - description: Destination overrides the kubernetes - server and namespace defined in the environment - ksonnet app.yaml + description: Destination is a reference to the target + Kubernetes server and namespace properties: name: - description: Name of the destination cluster - which can be used instead of server (url) - field + description: Name is an alternate way of specifying + the target cluster by its symbolic name type: string namespace: - description: Namespace overrides the environment - namespace value in the ksonnet app.yaml + description: Namespace specifies the target + namespace for the application's resources. + The namespace will only be set for namespace-scoped + resources that have not set a value for .metadata.namespace type: string server: - description: Server overrides the environment - server value in the ksonnet app.yaml + description: Server specifies the URL of the + target cluster and must be set to the Kubernetes + control plane API type: string type: object ignoreDifferences: - description: IgnoreDifferences controls resources - fields which should be ignored during comparison + description: IgnoreDifferences is a list of resources + and their fields which should be ignored during + comparison items: description: ResourceIgnoreDifferences contains resource filter and list of json paths which @@ -575,6 +1183,10 @@ spec: properties: group: type: string + jqPathExpressions: + items: + type: string + type: array jsonPointers: items: type: string @@ -586,12 +1198,11 @@ spec: namespace: type: string required: - - jsonPointers - kind type: object type: array info: - description: Infos contains a list of useful information + description: Info contains a list of information (URLs, email addresses, and plain text) that relates to the application items: @@ -606,43 +1217,58 @@ spec: type: object type: array project: - description: Project is a application project name. - Empty name means that application belongs to 'default' + description: Project is a reference to the project + this application belongs to. The empty string + means that application belongs to the 'default' project. type: string revisionHistoryLimit: - description: This limits this number of items kept - in the apps revision history. 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. + description: 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. format: int64 type: integer source: description: Source is a reference to the location - ksonnet application definition + of the application's manifests or chart properties: chart: - description: Chart is a Helm chart name + description: Chart is a Helm chart name, and + must be specified for applications sourced + from a Helm repo. type: string directory: description: Directory holds path/directory specific options properties: exclude: + description: Exclude contains a glob pattern + to match paths against that should be + explicitly excluded from being used during + manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be + explicitly included during manifest generation type: string jsonnet: - description: ApplicationSourceJsonnet holds - jsonnet specific options + description: Jsonnet holds options specific + to Jsonnet properties: extVars: description: ExtVars is a list of Jsonnet External Variables items: - description: JsonnetVar is a jsonnet - variable + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation properties: code: type: boolean @@ -665,8 +1291,9 @@ spec: description: TLAS is a list of Jsonnet Top-level Arguments items: - description: JsonnetVar is a jsonnet - variable + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation properties: code: type: boolean @@ -681,6 +1308,8 @@ spec: type: array type: object recurse: + description: Recurse specifies whether to + scan a directory recursively for manifests type: boolean type: object helm: @@ -691,24 +1320,28 @@ spec: to the helm template items: description: HelmFileParameter is a file - parameter to a helm template + parameter that's passed to helm template + during manifest generation properties: name: description: Name is the name of the - helm parameter + Helm parameter type: string path: - description: Path is the path value - for the helm parameter + description: Path is the path to the + file containing the values for the + Helm parameter type: string type: object type: array parameters: - description: Parameters are parameters to - the helm template + description: Parameters is a list of Helm + parameters which are passed to the helm + template command upon manifest generation items: description: HelmParameter is a parameter - to a helm template + that's passed to helm template during + manifest generation properties: forceString: description: ForceString determines @@ -717,17 +1350,18 @@ spec: type: boolean name: description: Name is the name of the - helm parameter + Helm parameter type: string value: description: Value is the value for - the helm parameter + the Helm parameter type: string type: object type: array releaseName: - description: The Helm release name. If omitted - it will use the application name + description: ReleaseName is the Helm release + name to use. If omitted it will use the + application name type: string valueFiles: description: ValuesFiles is a list of Helm @@ -736,12 +1370,13 @@ spec: type: string type: array values: - description: Values is Helm values, typically + description: Values specifies Helm values + to be passed to helm template, typically defined as a block type: string version: description: Version is the Helm version - to use for templating with + to use for templating (either "2" or "3") type: string type: object ksonnet: @@ -778,50 +1413,71 @@ spec: commonAnnotations: additionalProperties: type: string - description: CommonAnnotations adds additional - kustomize commonAnnotations + description: CommonAnnotations is a list + of additional annotations to add to rendered + manifests type: object commonLabels: additionalProperties: type: string - description: CommonLabels adds additional - kustomize commonLabels + description: CommonLabels is a list of additional + labels to add to rendered manifests type: object + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies + whether to force applying common labels + to resources for Kustomize apps + type: boolean images: - description: Images are kustomize image - overrides + description: Images is a list of Kustomize + image override specifications items: + description: KustomizeImage represents + a Kustomize image definition in the + format [old_image_name=]: type: string type: array namePrefix: description: NamePrefix is a prefix appended - to resources for kustomize apps + to resources for Kustomize apps type: string nameSuffix: description: NameSuffix is a suffix appended - to resources for kustomize apps + to resources for Kustomize apps type: string version: - description: Version contains optional Kustomize - version + description: Version controls which version + of Kustomize to use for rendering manifests type: string type: object path: description: Path is a directory path within - the Git repository + the Git repository, and is only valid for + applications sourced from Git. type: string plugin: description: ConfigManagementPlugin holds config management plugin specific options properties: env: + description: Env is a list of environment + variable entries items: + description: EnvEntry represents an entry + in the application's environment properties: name: - description: the name, usually uppercase + description: Name is the name of the + variable, usually expressed in uppercase type: string value: - description: the value + description: Value is the value of + the variable type: string required: - name @@ -832,20 +1488,24 @@ spec: type: string type: object repoURL: - description: RepoURL is the repository URL of - the application manifests + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application + manifests type: string targetRevision: - description: TargetRevision defines the commit, - tag, or branch in which to sync the application - to. If omitted, will sync to HEAD + description: TargetRevision 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. type: string required: - repoURL type: object syncPolicy: - description: SyncPolicy controls when a sync will - be performed + description: SyncPolicy controls when and how a + sync will be performed properties: automated: description: Automated will keep an application @@ -856,13 +1516,16 @@ spec: zero live resources (default: false)' type: boolean prune: - description: 'Prune will prune resources - automatically as part of automated sync - (default: false)' + description: 'Prune specifies whether to + delete resources from the cluster that + are not found in the sources anymore as + part of automated sync (default: false)' type: boolean selfHeal: - description: 'SelfHeal enables auto-syncing - if (default: false)' + description: 'SelfHeal specifes whether + to revert resources back to their desired + state upon modification in the cluster + (default: false)' type: boolean type: object retry: @@ -870,7 +1533,8 @@ spec: behavior properties: backoff: - description: Backoff is a backoff strategy + description: Backoff controls how to backoff + on subsequent retries of failed syncs properties: duration: description: Duration is the amount @@ -892,7 +1556,8 @@ spec: type: object limit: description: Limit is the maximum number - of attempts when retrying a container + of attempts for retrying a failed sync. + If set to 0, no retries will be performed. format: int64 type: integer type: object @@ -921,23 +1586,7 @@ spec: properties: elements: items: - description: ListGeneratorElement include cluster and - url info - properties: - cluster: - type: string - url: - type: string - values: - additionalProperties: - type: string - description: Values contains key/value pairs which - are passed directly as parameters to the template - type: object - required: - - cluster - - url - type: object + x-kubernetes-preserve-unknown-fields: true type: array template: description: ApplicationSetTemplate represents argocd ApplicationSpec @@ -951,6 +1600,10 @@ spec: additionalProperties: type: string type: object + finalizers: + items: + type: string + type: array labels: additionalProperties: type: string @@ -967,27 +1620,29 @@ spec: revision. properties: destination: - description: Destination overrides the kubernetes - server and namespace defined in the environment - ksonnet app.yaml + description: Destination is a reference to the target + Kubernetes server and namespace properties: name: - description: Name of the destination cluster - which can be used instead of server (url) - field + description: Name is an alternate way of specifying + the target cluster by its symbolic name type: string namespace: - description: Namespace overrides the environment - namespace value in the ksonnet app.yaml + description: Namespace specifies the target + namespace for the application's resources. + The namespace will only be set for namespace-scoped + resources that have not set a value for .metadata.namespace type: string server: - description: Server overrides the environment - server value in the ksonnet app.yaml + description: Server specifies the URL of the + target cluster and must be set to the Kubernetes + control plane API type: string type: object ignoreDifferences: - description: IgnoreDifferences controls resources - fields which should be ignored during comparison + description: IgnoreDifferences is a list of resources + and their fields which should be ignored during + comparison items: description: ResourceIgnoreDifferences contains resource filter and list of json paths which @@ -996,6 +1651,10 @@ spec: properties: group: type: string + jqPathExpressions: + items: + type: string + type: array jsonPointers: items: type: string @@ -1007,12 +1666,11 @@ spec: namespace: type: string required: - - jsonPointers - kind type: object type: array info: - description: Infos contains a list of useful information + description: Info contains a list of information (URLs, email addresses, and plain text) that relates to the application items: @@ -1027,43 +1685,58 @@ spec: type: object type: array project: - description: Project is a application project name. - Empty name means that application belongs to 'default' + description: Project is a reference to the project + this application belongs to. The empty string + means that application belongs to the 'default' project. type: string revisionHistoryLimit: - description: This limits this number of items kept - in the apps revision history. 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. + description: 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. format: int64 type: integer source: description: Source is a reference to the location - ksonnet application definition + of the application's manifests or chart properties: chart: - description: Chart is a Helm chart name + description: Chart is a Helm chart name, and + must be specified for applications sourced + from a Helm repo. type: string directory: description: Directory holds path/directory specific options properties: exclude: + description: Exclude contains a glob pattern + to match paths against that should be + explicitly excluded from being used during + manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be + explicitly included during manifest generation type: string jsonnet: - description: ApplicationSourceJsonnet holds - jsonnet specific options + description: Jsonnet holds options specific + to Jsonnet properties: extVars: description: ExtVars is a list of Jsonnet External Variables items: - description: JsonnetVar is a jsonnet - variable + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation properties: code: type: boolean @@ -1086,8 +1759,9 @@ spec: description: TLAS is a list of Jsonnet Top-level Arguments items: - description: JsonnetVar is a jsonnet - variable + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation properties: code: type: boolean @@ -1102,6 +1776,8 @@ spec: type: array type: object recurse: + description: Recurse specifies whether to + scan a directory recursively for manifests type: boolean type: object helm: @@ -1112,24 +1788,28 @@ spec: to the helm template items: description: HelmFileParameter is a file - parameter to a helm template + parameter that's passed to helm template + during manifest generation properties: name: description: Name is the name of the - helm parameter + Helm parameter type: string path: - description: Path is the path value - for the helm parameter + description: Path is the path to the + file containing the values for the + Helm parameter type: string type: object type: array parameters: - description: Parameters are parameters to - the helm template + description: Parameters is a list of Helm + parameters which are passed to the helm + template command upon manifest generation items: description: HelmParameter is a parameter - to a helm template + that's passed to helm template during + manifest generation properties: forceString: description: ForceString determines @@ -1138,17 +1818,18 @@ spec: type: boolean name: description: Name is the name of the - helm parameter + Helm parameter type: string value: description: Value is the value for - the helm parameter + the Helm parameter type: string type: object type: array releaseName: - description: The Helm release name. If omitted - it will use the application name + description: ReleaseName is the Helm release + name to use. If omitted it will use the + application name type: string valueFiles: description: ValuesFiles is a list of Helm @@ -1157,12 +1838,13 @@ spec: type: string type: array values: - description: Values is Helm values, typically + description: Values specifies Helm values + to be passed to helm template, typically defined as a block type: string version: description: Version is the Helm version - to use for templating with + to use for templating (either "2" or "3") type: string type: object ksonnet: @@ -1199,50 +1881,71 @@ spec: commonAnnotations: additionalProperties: type: string - description: CommonAnnotations adds additional - kustomize commonAnnotations + description: CommonAnnotations is a list + of additional annotations to add to rendered + manifests type: object commonLabels: additionalProperties: type: string - description: CommonLabels adds additional - kustomize commonLabels + description: CommonLabels is a list of additional + labels to add to rendered manifests type: object + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies + whether to force applying common labels + to resources for Kustomize apps + type: boolean images: - description: Images are kustomize image - overrides + description: Images is a list of Kustomize + image override specifications items: + description: KustomizeImage represents + a Kustomize image definition in the + format [old_image_name=]: type: string type: array namePrefix: description: NamePrefix is a prefix appended - to resources for kustomize apps + to resources for Kustomize apps type: string nameSuffix: description: NameSuffix is a suffix appended - to resources for kustomize apps + to resources for Kustomize apps type: string version: - description: Version contains optional Kustomize - version + description: Version controls which version + of Kustomize to use for rendering manifests type: string type: object path: description: Path is a directory path within - the Git repository + the Git repository, and is only valid for + applications sourced from Git. type: string plugin: description: ConfigManagementPlugin holds config management plugin specific options properties: env: + description: Env is a list of environment + variable entries items: + description: EnvEntry represents an entry + in the application's environment properties: name: - description: the name, usually uppercase + description: Name is the name of the + variable, usually expressed in uppercase type: string value: - description: the value + description: Value is the value of + the variable type: string required: - name @@ -1253,20 +1956,24 @@ spec: type: string type: object repoURL: - description: RepoURL is the repository URL of - the application manifests + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application + manifests type: string targetRevision: - description: TargetRevision defines the commit, - tag, or branch in which to sync the application - to. If omitted, will sync to HEAD + description: TargetRevision 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. type: string required: - repoURL type: object syncPolicy: - description: SyncPolicy controls when a sync will - be performed + description: SyncPolicy controls when and how a + sync will be performed properties: automated: description: Automated will keep an application @@ -1277,13 +1984,16 @@ spec: zero live resources (default: false)' type: boolean prune: - description: 'Prune will prune resources - automatically as part of automated sync - (default: false)' + description: 'Prune specifies whether to + delete resources from the cluster that + are not found in the sources anymore as + part of automated sync (default: false)' type: boolean selfHeal: - description: 'SelfHeal enables auto-syncing - if (default: false)' + description: 'SelfHeal specifes whether + to revert resources back to their desired + state upon modification in the cluster + (default: false)' type: boolean type: object retry: @@ -1291,7 +2001,8 @@ spec: behavior properties: backoff: - description: Backoff is a backoff strategy + description: Backoff controls how to backoff + on subsequent retries of failed syncs properties: duration: description: Duration is the amount @@ -1313,7 +2024,8 @@ spec: type: object limit: description: Limit is the maximum number - of attempts when retrying a container + of attempts for retrying a failed sync. + If set to 0, no retries will be performed. format: int64 type: integer type: object @@ -1336,18 +2048,3889 @@ spec: required: - elements type: object + matrix: + description: MatrixGenerator include Other generators + properties: + generators: + items: + description: ApplicationSetBaseGenerator include list + item info CRD dosn't support recursive types so we need + a different type for the matrix generator https://github.com/kubernetes-sigs/controller-tools/issues/477 + properties: + clusterDecisionResource: + description: DuckType defines a generator to match + against clusters registered with ArgoCD. + properties: + configMapRef: + description: ConfigMapRef is a ConfigMap with + the duck type definitions needed to retreive + the data this includes apiVersion(group/version), + kind, matchKey and validation settings Name + is the resource name of the kind, group and + version, defined in the ConfigMapRef RequeueAfterSeconds + is how long before the duckType will be rechecked + for a change + type: string + labelSelector: + description: A label selector is a label query + over a set of resources. The result of matchLabels + and matchExpressions are ANDed. An empty label + selector matches all objects. A null label selector + matches no objects. + properties: + matchExpressions: + description: matchExpressions is a list of + label selector requirements. The requirements + are ANDed. + items: + description: A label selector requirement + is a selector that contains values, a + key, and an operator that relates the + key and values. + properties: + key: + description: key is the label key that + the selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. + If the operator is Exists or DoesNotExist, + the values array must be empty. This + array is replaced during a strategic + merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is + "In", and the values array contains only + "value". The requirements are ANDed. + type: object + type: object + name: + type: string + requeueAfterSeconds: + format: int64 + type: integer + template: + description: ApplicationSetTemplate represents + argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents + the Argo CD application fields that may + be used for Applications generated from + the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired + application state. Contains link to repository + with application definition and additional + parameters link definition revision. + properties: + destination: + description: Destination is a reference + to the target Kubernetes server and + namespace + properties: + name: + description: Name is an alternate + way of specifying the target cluster + by its symbolic name + type: string + namespace: + description: Namespace specifies the + target namespace for the application's + resources. The namespace will only + be set for namespace-scoped resources + that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the + URL of the target cluster and must + be set to the Kubernetes control + plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list + of resources and their fields which + should be ignored during comparison + items: + description: ResourceIgnoreDifferences + contains resource filter and list + of json paths which should be ignored + during comparison with live state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) + that relates to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to + the project this application belongs + to. The empty string means that application + belongs to the 'default' project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to + the location of the application's manifests + or chart + properties: + chart: + description: Chart is a Helm chart + name, and must be specified for + applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains + a glob pattern to match paths + against that should be explicitly + excluded from being used during + manifest generation + type: string + include: + description: Include contains + a glob pattern to match paths + against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options + specific to Jsonnet + properties: + extVars: + description: ExtVars is a + list of Jsonnet External + Variables + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library + search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list + of Jsonnet Top-level Arguments + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies + whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific + options + properties: + fileParameters: + description: FileParameters are + file parameters to the helm + template + items: + description: HelmFileParameter + is a file parameter that's + passed to helm template during + manifest generation + properties: + name: + description: Name is the + name of the Helm parameter + type: string + path: + description: Path is the + path to the file containing + the values for the Helm + parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list + of Helm parameters which are + passed to the helm template + command upon manifest generation + items: + description: HelmParameter is + a parameter that's passed + to helm template during manifest + generation + properties: + forceString: + description: ForceString + determines whether to + tell Helm to interpret + booleans and numbers as + strings + type: boolean + name: + description: Name is the + name of the Helm parameter + type: string + value: + description: Value is the + value for the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the + Helm release name to use. If + omitted it will use the application + name + type: string + valueFiles: + description: ValuesFiles is a + list of Helm value files to + use when generating a template + items: + type: string + type: array + values: + description: Values specifies + Helm values to be passed to + helm template, typically defined + as a block + type: string + version: + description: Version is the Helm + version to use for templating + (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet + specific options + properties: + environment: + description: Environment is a + ksonnet application environment + name + type: string + parameters: + description: Parameters are a + list of ksonnet component parameter + override values + items: + description: KsonnetParameter + is a ksonnet component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize + specific options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations + is a list of additional annotations + to add to rendered manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a + list of additional labels to + add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations + specifies whether to force applying + common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels + specifies whether to force applying + common labels to resources for + Kustomize apps + type: boolean + images: + description: Images is a list + of Kustomize image override + specifications + items: + description: KustomizeImage + represents a Kustomize image + definition in the format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix + appended to resources for Kustomize + apps + type: string + nameSuffix: + description: NameSuffix is a suffix + appended to resources for Kustomize + apps + type: string + version: + description: Version controls + which version of Kustomize to + use for rendering manifests + type: string + type: object + path: + description: Path is a directory path + within the Git repository, and is + only valid for applications sourced + from Git. + type: string + plugin: + description: ConfigManagementPlugin + holds config management plugin specific + options + properties: + env: + description: Env is a list of + environment variable entries + items: + description: EnvEntry represents + an entry in the application's + environment + properties: + name: + description: Name is the + name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the + value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to + the repository (Git or Helm) that + contains the application manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when + and how a sync will be performed + properties: + automated: + description: Automated will keep an + application synced to the target + revision + properties: + allowEmpty: + description: 'AllowEmpty allows + apps have zero live resources + (default: false)' + type: boolean + prune: + description: 'Prune specifies + whether to delete resources + from the cluster that are not + found in the sources anymore + as part of automated sync (default: + false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes + whether to revert resources + back to their desired state + upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed + sync retry behavior + properties: + backoff: + description: Backoff controls + how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the + amount to back off. Default + unit is seconds, but could + also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor + to multiply the base duration + after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is + the maximum amount of time + allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum + number of attempts for retrying + a failed sync. If set to 0, + no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to + specify whole app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + values: + additionalProperties: + type: string + description: Values contains key/value pairs which + are passed directly as parameters to the template + type: object + required: + - configMapRef + type: object + clusters: + description: ClusterGenerator defines a generator + to match against clusters registered with ArgoCD. + properties: + selector: + description: Selector defines a label selector + to match against all clusters registered with + ArgoCD. Clusters today are stored as Kubernetes + Secrets, thus the Secret labels will be used + for matching the selector. + properties: + matchExpressions: + description: matchExpressions is a list of + label selector requirements. The requirements + are ANDed. + items: + description: A label selector requirement + is a selector that contains values, a + key, and an operator that relates the + key and values. + properties: + key: + description: key is the label key that + the selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. + If the operator is Exists or DoesNotExist, + the values array must be empty. This + array is replaced during a strategic + merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is + "In", and the values array contains only + "value". The requirements are ANDed. + type: object + type: object + template: + description: ApplicationSetTemplate represents + argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents + the Argo CD application fields that may + be used for Applications generated from + the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired + application state. Contains link to repository + with application definition and additional + parameters link definition revision. + properties: + destination: + description: Destination is a reference + to the target Kubernetes server and + namespace + properties: + name: + description: Name is an alternate + way of specifying the target cluster + by its symbolic name + type: string + namespace: + description: Namespace specifies the + target namespace for the application's + resources. The namespace will only + be set for namespace-scoped resources + that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the + URL of the target cluster and must + be set to the Kubernetes control + plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list + of resources and their fields which + should be ignored during comparison + items: + description: ResourceIgnoreDifferences + contains resource filter and list + of json paths which should be ignored + during comparison with live state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) + that relates to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to + the project this application belongs + to. The empty string means that application + belongs to the 'default' project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to + the location of the application's manifests + or chart + properties: + chart: + description: Chart is a Helm chart + name, and must be specified for + applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains + a glob pattern to match paths + against that should be explicitly + excluded from being used during + manifest generation + type: string + include: + description: Include contains + a glob pattern to match paths + against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options + specific to Jsonnet + properties: + extVars: + description: ExtVars is a + list of Jsonnet External + Variables + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library + search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list + of Jsonnet Top-level Arguments + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies + whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific + options + properties: + fileParameters: + description: FileParameters are + file parameters to the helm + template + items: + description: HelmFileParameter + is a file parameter that's + passed to helm template during + manifest generation + properties: + name: + description: Name is the + name of the Helm parameter + type: string + path: + description: Path is the + path to the file containing + the values for the Helm + parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list + of Helm parameters which are + passed to the helm template + command upon manifest generation + items: + description: HelmParameter is + a parameter that's passed + to helm template during manifest + generation + properties: + forceString: + description: ForceString + determines whether to + tell Helm to interpret + booleans and numbers as + strings + type: boolean + name: + description: Name is the + name of the Helm parameter + type: string + value: + description: Value is the + value for the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the + Helm release name to use. If + omitted it will use the application + name + type: string + valueFiles: + description: ValuesFiles is a + list of Helm value files to + use when generating a template + items: + type: string + type: array + values: + description: Values specifies + Helm values to be passed to + helm template, typically defined + as a block + type: string + version: + description: Version is the Helm + version to use for templating + (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet + specific options + properties: + environment: + description: Environment is a + ksonnet application environment + name + type: string + parameters: + description: Parameters are a + list of ksonnet component parameter + override values + items: + description: KsonnetParameter + is a ksonnet component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize + specific options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations + is a list of additional annotations + to add to rendered manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a + list of additional labels to + add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations + specifies whether to force applying + common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels + specifies whether to force applying + common labels to resources for + Kustomize apps + type: boolean + images: + description: Images is a list + of Kustomize image override + specifications + items: + description: KustomizeImage + represents a Kustomize image + definition in the format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix + appended to resources for Kustomize + apps + type: string + nameSuffix: + description: NameSuffix is a suffix + appended to resources for Kustomize + apps + type: string + version: + description: Version controls + which version of Kustomize to + use for rendering manifests + type: string + type: object + path: + description: Path is a directory path + within the Git repository, and is + only valid for applications sourced + from Git. + type: string + plugin: + description: ConfigManagementPlugin + holds config management plugin specific + options + properties: + env: + description: Env is a list of + environment variable entries + items: + description: EnvEntry represents + an entry in the application's + environment + properties: + name: + description: Name is the + name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the + value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to + the repository (Git or Helm) that + contains the application manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when + and how a sync will be performed + properties: + automated: + description: Automated will keep an + application synced to the target + revision + properties: + allowEmpty: + description: 'AllowEmpty allows + apps have zero live resources + (default: false)' + type: boolean + prune: + description: 'Prune specifies + whether to delete resources + from the cluster that are not + found in the sources anymore + as part of automated sync (default: + false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes + whether to revert resources + back to their desired state + upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed + sync retry behavior + properties: + backoff: + description: Backoff controls + how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the + amount to back off. Default + unit is seconds, but could + also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor + to multiply the base duration + after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is + the maximum amount of time + allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum + number of attempts for retrying + a failed sync. If set to 0, + no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to + specify whole app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + values: + additionalProperties: + type: string + description: Values contains key/value pairs which + are passed directly as parameters to the template + type: object + type: object + git: + properties: + directories: + items: + properties: + exclude: + type: boolean + path: + type: string + required: + - path + type: object + type: array + files: + items: + properties: + path: + type: string + required: + - path + type: object + type: array + repoURL: + type: string + requeueAfterSeconds: + format: int64 + type: integer + revision: + type: string + template: + description: ApplicationSetTemplate represents + argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents + the Argo CD application fields that may + be used for Applications generated from + the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired + application state. Contains link to repository + with application definition and additional + parameters link definition revision. + properties: + destination: + description: Destination is a reference + to the target Kubernetes server and + namespace + properties: + name: + description: Name is an alternate + way of specifying the target cluster + by its symbolic name + type: string + namespace: + description: Namespace specifies the + target namespace for the application's + resources. The namespace will only + be set for namespace-scoped resources + that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the + URL of the target cluster and must + be set to the Kubernetes control + plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list + of resources and their fields which + should be ignored during comparison + items: + description: ResourceIgnoreDifferences + contains resource filter and list + of json paths which should be ignored + during comparison with live state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) + that relates to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to + the project this application belongs + to. The empty string means that application + belongs to the 'default' project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to + the location of the application's manifests + or chart + properties: + chart: + description: Chart is a Helm chart + name, and must be specified for + applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains + a glob pattern to match paths + against that should be explicitly + excluded from being used during + manifest generation + type: string + include: + description: Include contains + a glob pattern to match paths + against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options + specific to Jsonnet + properties: + extVars: + description: ExtVars is a + list of Jsonnet External + Variables + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library + search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list + of Jsonnet Top-level Arguments + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies + whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific + options + properties: + fileParameters: + description: FileParameters are + file parameters to the helm + template + items: + description: HelmFileParameter + is a file parameter that's + passed to helm template during + manifest generation + properties: + name: + description: Name is the + name of the Helm parameter + type: string + path: + description: Path is the + path to the file containing + the values for the Helm + parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list + of Helm parameters which are + passed to the helm template + command upon manifest generation + items: + description: HelmParameter is + a parameter that's passed + to helm template during manifest + generation + properties: + forceString: + description: ForceString + determines whether to + tell Helm to interpret + booleans and numbers as + strings + type: boolean + name: + description: Name is the + name of the Helm parameter + type: string + value: + description: Value is the + value for the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the + Helm release name to use. If + omitted it will use the application + name + type: string + valueFiles: + description: ValuesFiles is a + list of Helm value files to + use when generating a template + items: + type: string + type: array + values: + description: Values specifies + Helm values to be passed to + helm template, typically defined + as a block + type: string + version: + description: Version is the Helm + version to use for templating + (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet + specific options + properties: + environment: + description: Environment is a + ksonnet application environment + name + type: string + parameters: + description: Parameters are a + list of ksonnet component parameter + override values + items: + description: KsonnetParameter + is a ksonnet component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize + specific options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations + is a list of additional annotations + to add to rendered manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a + list of additional labels to + add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations + specifies whether to force applying + common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels + specifies whether to force applying + common labels to resources for + Kustomize apps + type: boolean + images: + description: Images is a list + of Kustomize image override + specifications + items: + description: KustomizeImage + represents a Kustomize image + definition in the format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix + appended to resources for Kustomize + apps + type: string + nameSuffix: + description: NameSuffix is a suffix + appended to resources for Kustomize + apps + type: string + version: + description: Version controls + which version of Kustomize to + use for rendering manifests + type: string + type: object + path: + description: Path is a directory path + within the Git repository, and is + only valid for applications sourced + from Git. + type: string + plugin: + description: ConfigManagementPlugin + holds config management plugin specific + options + properties: + env: + description: Env is a list of + environment variable entries + items: + description: EnvEntry represents + an entry in the application's + environment + properties: + name: + description: Name is the + name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the + value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to + the repository (Git or Helm) that + contains the application manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when + and how a sync will be performed + properties: + automated: + description: Automated will keep an + application synced to the target + revision + properties: + allowEmpty: + description: 'AllowEmpty allows + apps have zero live resources + (default: false)' + type: boolean + prune: + description: 'Prune specifies + whether to delete resources + from the cluster that are not + found in the sources anymore + as part of automated sync (default: + false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes + whether to revert resources + back to their desired state + upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed + sync retry behavior + properties: + backoff: + description: Backoff controls + how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the + amount to back off. Default + unit is seconds, but could + also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor + to multiply the base duration + after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is + the maximum amount of time + allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum + number of attempts for retrying + a failed sync. If set to 0, + no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to + specify whole app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + required: + - repoURL + - revision + type: object + list: + description: ListGenerator include items info + properties: + elements: + items: + x-kubernetes-preserve-unknown-fields: true + type: array + template: + description: ApplicationSetTemplate represents + argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents + the Argo CD application fields that may + be used for Applications generated from + the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired + application state. Contains link to repository + with application definition and additional + parameters link definition revision. + properties: + destination: + description: Destination is a reference + to the target Kubernetes server and + namespace + properties: + name: + description: Name is an alternate + way of specifying the target cluster + by its symbolic name + type: string + namespace: + description: Namespace specifies the + target namespace for the application's + resources. The namespace will only + be set for namespace-scoped resources + that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the + URL of the target cluster and must + be set to the Kubernetes control + plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list + of resources and their fields which + should be ignored during comparison + items: + description: ResourceIgnoreDifferences + contains resource filter and list + of json paths which should be ignored + during comparison with live state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) + that relates to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to + the project this application belongs + to. The empty string means that application + belongs to the 'default' project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to + the location of the application's manifests + or chart + properties: + chart: + description: Chart is a Helm chart + name, and must be specified for + applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains + a glob pattern to match paths + against that should be explicitly + excluded from being used during + manifest generation + type: string + include: + description: Include contains + a glob pattern to match paths + against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options + specific to Jsonnet + properties: + extVars: + description: ExtVars is a + list of Jsonnet External + Variables + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library + search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list + of Jsonnet Top-level Arguments + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies + whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific + options + properties: + fileParameters: + description: FileParameters are + file parameters to the helm + template + items: + description: HelmFileParameter + is a file parameter that's + passed to helm template during + manifest generation + properties: + name: + description: Name is the + name of the Helm parameter + type: string + path: + description: Path is the + path to the file containing + the values for the Helm + parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list + of Helm parameters which are + passed to the helm template + command upon manifest generation + items: + description: HelmParameter is + a parameter that's passed + to helm template during manifest + generation + properties: + forceString: + description: ForceString + determines whether to + tell Helm to interpret + booleans and numbers as + strings + type: boolean + name: + description: Name is the + name of the Helm parameter + type: string + value: + description: Value is the + value for the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the + Helm release name to use. If + omitted it will use the application + name + type: string + valueFiles: + description: ValuesFiles is a + list of Helm value files to + use when generating a template + items: + type: string + type: array + values: + description: Values specifies + Helm values to be passed to + helm template, typically defined + as a block + type: string + version: + description: Version is the Helm + version to use for templating + (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet + specific options + properties: + environment: + description: Environment is a + ksonnet application environment + name + type: string + parameters: + description: Parameters are a + list of ksonnet component parameter + override values + items: + description: KsonnetParameter + is a ksonnet component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize + specific options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations + is a list of additional annotations + to add to rendered manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a + list of additional labels to + add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations + specifies whether to force applying + common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels + specifies whether to force applying + common labels to resources for + Kustomize apps + type: boolean + images: + description: Images is a list + of Kustomize image override + specifications + items: + description: KustomizeImage + represents a Kustomize image + definition in the format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix + appended to resources for Kustomize + apps + type: string + nameSuffix: + description: NameSuffix is a suffix + appended to resources for Kustomize + apps + type: string + version: + description: Version controls + which version of Kustomize to + use for rendering manifests + type: string + type: object + path: + description: Path is a directory path + within the Git repository, and is + only valid for applications sourced + from Git. + type: string + plugin: + description: ConfigManagementPlugin + holds config management plugin specific + options + properties: + env: + description: Env is a list of + environment variable entries + items: + description: EnvEntry represents + an entry in the application's + environment + properties: + name: + description: Name is the + name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the + value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to + the repository (Git or Helm) that + contains the application manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when + and how a sync will be performed + properties: + automated: + description: Automated will keep an + application synced to the target + revision + properties: + allowEmpty: + description: 'AllowEmpty allows + apps have zero live resources + (default: false)' + type: boolean + prune: + description: 'Prune specifies + whether to delete resources + from the cluster that are not + found in the sources anymore + as part of automated sync (default: + false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes + whether to revert resources + back to their desired state + upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed + sync retry behavior + properties: + backoff: + description: Backoff controls + how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the + amount to back off. Default + unit is seconds, but could + also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor + to multiply the base duration + after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is + the maximum amount of time + allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum + number of attempts for retrying + a failed sync. If set to 0, + no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to + specify whole app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + required: + - elements + type: object + scmProvider: + description: SCMProviderGenerator defines a generator + that scrapes a SCMaaS API to find candidate repos. + properties: + cloneProtocol: + description: Which protocol to use for the SCM + URL. Default is provider-specific but ssh if + possible. Not all providers necessarily support + all protocols. + type: string + filters: + description: Filters for which repos should be + considered. + items: + description: SCMProviderGeneratorFilter is a + single repository filter. If multiple filter + types are set on a single struct, they will + be AND'd together. All filters must pass for + a repo to be included. + properties: + branchMatch: + description: A regex which must match the + branch name. + type: string + labelMatch: + description: A regex which must match at + least one label. + type: string + pathsExist: + description: An array of paths, all of which + must exist. + items: + type: string + type: array + repositoryMatch: + description: A regex for repo names. + type: string + type: object + type: array + github: + description: Which provider to use and config + for it. + properties: + allBranches: + description: Scan all branches instead of + just the default branch. + type: boolean + api: + description: The GitHub API URL to talk to. + If blank, use https://api.github.com/. + type: string + organization: + description: GitHub org to scan. Required. + type: string + tokenRef: + description: Authentication token reference. + properties: + key: + type: string + secretName: + type: string + required: + - key + - secretName + type: object + required: + - organization + type: object + gitlab: + description: SCMProviderGeneratorGitlab defines + a connection info specific to Gitlab. + properties: + allBranches: + description: Scan all branches instead of + just the default branch. + type: boolean + api: + description: The Gitlab API URL to talk to. + type: string + group: + description: Gitlab group to scan. Required. You + can use either the project id (recommended) + or the full namespaced path. + type: string + includeSubgroups: + description: Recurse through subgroups (true) + or scan only the base group (false). Defaults + to "false" + type: boolean + tokenRef: + description: Authentication token reference. + properties: + key: + type: string + secretName: + type: string + required: + - key + - secretName + type: object + required: + - group + type: object + requeueAfterSeconds: + description: Standard parameters. + format: int64 + type: integer + template: + description: ApplicationSetTemplate represents + argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents + the Argo CD application fields that may + be used for Applications generated from + the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired + application state. Contains link to repository + with application definition and additional + parameters link definition revision. + properties: + destination: + description: Destination is a reference + to the target Kubernetes server and + namespace + properties: + name: + description: Name is an alternate + way of specifying the target cluster + by its symbolic name + type: string + namespace: + description: Namespace specifies the + target namespace for the application's + resources. The namespace will only + be set for namespace-scoped resources + that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the + URL of the target cluster and must + be set to the Kubernetes control + plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list + of resources and their fields which + should be ignored during comparison + items: + description: ResourceIgnoreDifferences + contains resource filter and list + of json paths which should be ignored + during comparison with live state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) + that relates to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to + the project this application belongs + to. The empty string means that application + belongs to the 'default' project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to + the location of the application's manifests + or chart + properties: + chart: + description: Chart is a Helm chart + name, and must be specified for + applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains + a glob pattern to match paths + against that should be explicitly + excluded from being used during + manifest generation + type: string + include: + description: Include contains + a glob pattern to match paths + against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options + specific to Jsonnet + properties: + extVars: + description: ExtVars is a + list of Jsonnet External + Variables + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library + search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list + of Jsonnet Top-level Arguments + items: + description: JsonnetVar + represents a variable + to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies + whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific + options + properties: + fileParameters: + description: FileParameters are + file parameters to the helm + template + items: + description: HelmFileParameter + is a file parameter that's + passed to helm template during + manifest generation + properties: + name: + description: Name is the + name of the Helm parameter + type: string + path: + description: Path is the + path to the file containing + the values for the Helm + parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list + of Helm parameters which are + passed to the helm template + command upon manifest generation + items: + description: HelmParameter is + a parameter that's passed + to helm template during manifest + generation + properties: + forceString: + description: ForceString + determines whether to + tell Helm to interpret + booleans and numbers as + strings + type: boolean + name: + description: Name is the + name of the Helm parameter + type: string + value: + description: Value is the + value for the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the + Helm release name to use. If + omitted it will use the application + name + type: string + valueFiles: + description: ValuesFiles is a + list of Helm value files to + use when generating a template + items: + type: string + type: array + values: + description: Values specifies + Helm values to be passed to + helm template, typically defined + as a block + type: string + version: + description: Version is the Helm + version to use for templating + (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet + specific options + properties: + environment: + description: Environment is a + ksonnet application environment + name + type: string + parameters: + description: Parameters are a + list of ksonnet component parameter + override values + items: + description: KsonnetParameter + is a ksonnet component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize + specific options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations + is a list of additional annotations + to add to rendered manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a + list of additional labels to + add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations + specifies whether to force applying + common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels + specifies whether to force applying + common labels to resources for + Kustomize apps + type: boolean + images: + description: Images is a list + of Kustomize image override + specifications + items: + description: KustomizeImage + represents a Kustomize image + definition in the format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix + appended to resources for Kustomize + apps + type: string + nameSuffix: + description: NameSuffix is a suffix + appended to resources for Kustomize + apps + type: string + version: + description: Version controls + which version of Kustomize to + use for rendering manifests + type: string + type: object + path: + description: Path is a directory path + within the Git repository, and is + only valid for applications sourced + from Git. + type: string + plugin: + description: ConfigManagementPlugin + holds config management plugin specific + options + properties: + env: + description: Env is a list of + environment variable entries + items: + description: EnvEntry represents + an entry in the application's + environment + properties: + name: + description: Name is the + name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the + value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to + the repository (Git or Helm) that + contains the application manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when + and how a sync will be performed + properties: + automated: + description: Automated will keep an + application synced to the target + revision + properties: + allowEmpty: + description: 'AllowEmpty allows + apps have zero live resources + (default: false)' + type: boolean + prune: + description: 'Prune specifies + whether to delete resources + from the cluster that are not + found in the sources anymore + as part of automated sync (default: + false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes + whether to revert resources + back to their desired state + upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed + sync retry behavior + properties: + backoff: + description: Backoff controls + how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the + amount to back off. Default + unit is seconds, but could + also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor + to multiply the base duration + after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is + the maximum amount of time + allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum + number of attempts for retrying + a failed sync. If set to 0, + no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to + specify whole app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + type: object + type: object + type: array + template: + description: ApplicationSetTemplate represents argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents the + Argo CD application fields that may be used for Applications + generated from the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired application + state. Contains link to repository with application + definition and additional parameters link definition + revision. + properties: + destination: + description: Destination is a reference to the target + Kubernetes server and namespace + properties: + name: + description: Name is an alternate way of specifying + the target cluster by its symbolic name + type: string + namespace: + description: Namespace specifies the target + namespace for the application's resources. + The namespace will only be set for namespace-scoped + resources that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the URL of the + target cluster and must be set to the Kubernetes + control plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list of resources + and their fields which should be ignored during + comparison + items: + description: ResourceIgnoreDifferences contains + resource filter and list of json paths which + should be ignored during comparison with live + state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) that relates + to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to the project + this application belongs to. The empty string + means that application belongs to the 'default' + project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to the location + of the application's manifests or chart + properties: + chart: + description: Chart is a Helm chart name, and + must be specified for applications sourced + from a Helm repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be + explicitly excluded from being used during + manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be + explicitly included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search + dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet + Top-level Arguments + items: + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to + scan a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file + parameter that's passed to helm template + during manifest generation + properties: + name: + description: Name is the name of the + Helm parameter + type: string + path: + description: Path is the path to the + file containing the values for the + Helm parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list of Helm + parameters which are passed to the helm + template command upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during + manifest generation + properties: + forceString: + description: ForceString determines + whether to tell Helm to interpret + booleans and numbers as strings + type: boolean + name: + description: Name is the name of the + Helm parameter + type: string + value: + description: Value is the value for + the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the + application name + type: string + valueFiles: + description: ValuesFiles is a list of Helm + value files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values + to be passed to helm template, typically + defined as a block + type: string + version: + description: Version is the Helm version + to use for templating (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet specific + options + properties: + environment: + description: Environment is a ksonnet application + environment name + type: string + parameters: + description: Parameters are a list of ksonnet + component parameter override values + items: + description: KsonnetParameter is a ksonnet + component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list + of additional annotations to add to rendered + manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies + whether to force applying common labels + to resources for Kustomize apps + type: boolean + images: + description: Images is a list of Kustomize + image override specifications + items: + description: KustomizeImage represents + a Kustomize image definition in the + format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + path: + description: Path is a directory path within + the Git repository, and is only valid for + applications sourced from Git. + type: string + plugin: + description: ConfigManagementPlugin holds config + management plugin specific options + properties: + env: + description: Env is a list of environment + variable entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the + variable, usually expressed in uppercase + type: string + value: + description: Value is the value of + the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application + manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when and how a + sync will be performed + properties: + automated: + description: Automated will keep an application + synced to the target revision + properties: + allowEmpty: + description: 'AllowEmpty allows apps have + zero live resources (default: false)' + type: boolean + prune: + description: 'Prune specifies whether to + delete resources from the cluster that + are not found in the sources anymore as + part of automated sync (default: false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes whether + to revert resources back to their desired + state upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed sync retry + behavior + properties: + backoff: + description: Backoff controls how to backoff + on subsequent retries of failed syncs + properties: + duration: + description: Duration is the amount + to back off. Default unit is seconds, + but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply + the base duration after each failed + retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum + amount of time allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum number + of attempts for retrying a failed sync. + If set to 0, no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to specify whole + app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + required: + - generators + type: object + scmProvider: + description: SCMProviderGenerator defines a generator that scrapes + a SCMaaS API to find candidate repos. + properties: + cloneProtocol: + description: Which protocol to use for the SCM URL. Default + is provider-specific but ssh if possible. Not all providers + necessarily support all protocols. + type: string + filters: + description: Filters for which repos should be considered. + items: + description: SCMProviderGeneratorFilter is a single repository + filter. If multiple filter types are set on a single + struct, they will be AND'd together. All filters must + pass for a repo to be included. + properties: + branchMatch: + description: A regex which must match the branch name. + type: string + labelMatch: + description: A regex which must match at least one + label. + type: string + pathsExist: + description: An array of paths, all of which must + exist. + items: + type: string + type: array + repositoryMatch: + description: A regex for repo names. + type: string + type: object + type: array + github: + description: Which provider to use and config for it. + properties: + allBranches: + description: Scan all branches instead of just the default + branch. + type: boolean + api: + description: The GitHub API URL to talk to. If blank, + use https://api.github.com/. + type: string + organization: + description: GitHub org to scan. Required. + type: string + tokenRef: + description: Authentication token reference. + properties: + key: + type: string + secretName: + type: string + required: + - key + - secretName + type: object + required: + - organization + type: object + gitlab: + description: SCMProviderGeneratorGitlab defines a connection + info specific to Gitlab. + properties: + allBranches: + description: Scan all branches instead of just the default + branch. + type: boolean + api: + description: The Gitlab API URL to talk to. + type: string + group: + description: Gitlab group to scan. Required. You can + use either the project id (recommended) or the full + namespaced path. + type: string + includeSubgroups: + description: Recurse through subgroups (true) or scan + only the base group (false). Defaults to "false" + type: boolean + tokenRef: + description: Authentication token reference. + properties: + key: + type: string + secretName: + type: string + required: + - key + - secretName + type: object + required: + - group + type: object + requeueAfterSeconds: + description: Standard parameters. + format: int64 + type: integer + template: + description: ApplicationSetTemplate represents argocd ApplicationSpec + properties: + metadata: + description: ApplicationSetTemplateMeta represents the + Argo CD application fields that may be used for Applications + generated from the ApplicationSet (based on metav1.ObjectMeta) + properties: + annotations: + additionalProperties: + type: string + type: object + finalizers: + items: + type: string + type: array + labels: + additionalProperties: + type: string + type: object + name: + type: string + namespace: + type: string + type: object + spec: + description: ApplicationSpec represents desired application + state. Contains link to repository with application + definition and additional parameters link definition + revision. + properties: + destination: + description: Destination is a reference to the target + Kubernetes server and namespace + properties: + name: + description: Name is an alternate way of specifying + the target cluster by its symbolic name + type: string + namespace: + description: Namespace specifies the target + namespace for the application's resources. + The namespace will only be set for namespace-scoped + resources that have not set a value for .metadata.namespace + type: string + server: + description: Server specifies the URL of the + target cluster and must be set to the Kubernetes + control plane API + type: string + type: object + ignoreDifferences: + description: IgnoreDifferences is a list of resources + and their fields which should be ignored during + comparison + items: + description: ResourceIgnoreDifferences contains + resource filter and list of json paths which + should be ignored during comparison with live + state. + properties: + group: + type: string + jqPathExpressions: + items: + type: string + type: array + jsonPointers: + items: + type: string + type: array + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + type: object + type: array + info: + description: Info contains a list of information + (URLs, email addresses, and plain text) that relates + to the application + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + project: + description: Project is a reference to the project + this application belongs to. The empty string + means that application belongs to the 'default' + project. + type: string + revisionHistoryLimit: + description: 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. + format: int64 + type: integer + source: + description: Source is a reference to the location + of the application's manifests or chart + properties: + chart: + description: Chart is a Helm chart name, and + must be specified for applications sourced + from a Helm repo. + type: string + directory: + description: Directory holds path/directory + specific options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be + explicitly excluded from being used during + manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be + explicitly included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search + dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet + Top-level Arguments + items: + description: JsonnetVar represents + a variable to be passed to jsonnet + during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to + scan a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file + parameter that's passed to helm template + during manifest generation + properties: + name: + description: Name is the name of the + Helm parameter + type: string + path: + description: Path is the path to the + file containing the values for the + Helm parameter + type: string + type: object + type: array + parameters: + description: Parameters is a list of Helm + parameters which are passed to the helm + template command upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during + manifest generation + properties: + forceString: + description: ForceString determines + whether to tell Helm to interpret + booleans and numbers as strings + type: boolean + name: + description: Name is the name of the + Helm parameter + type: string + value: + description: Value is the value for + the Helm parameter + type: string + type: object + type: array + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the + application name + type: string + valueFiles: + description: ValuesFiles is a list of Helm + value files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values + to be passed to helm template, typically + defined as a block + type: string + version: + description: Version is the Helm version + to use for templating (either "2" or "3") + type: string + type: object + ksonnet: + description: Ksonnet holds ksonnet specific + options + properties: + environment: + description: Environment is a ksonnet application + environment name + type: string + parameters: + description: Parameters are a list of ksonnet + component parameter override values + items: + description: KsonnetParameter is a ksonnet + component parameter + properties: + component: + type: string + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list + of additional annotations to add to rendered + manifests + type: object + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies + whether to force applying common labels + to resources for Kustomize apps + type: boolean + images: + description: Images is a list of Kustomize + image override specifications + items: + description: KustomizeImage represents + a Kustomize image definition in the + format [old_image_name=]: + type: string + type: array + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + path: + description: Path is a directory path within + the Git repository, and is only valid for + applications sourced from Git. + type: string + plugin: + description: ConfigManagementPlugin holds config + management plugin specific options + properties: + env: + description: Env is a list of environment + variable entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the + variable, usually expressed in uppercase + type: string + value: + description: Value is the value of + the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + type: object + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application + manifests + type: string + targetRevision: + description: TargetRevision 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. + type: string + required: + - repoURL + type: object + syncPolicy: + description: SyncPolicy controls when and how a + sync will be performed + properties: + automated: + description: Automated will keep an application + synced to the target revision + properties: + allowEmpty: + description: 'AllowEmpty allows apps have + zero live resources (default: false)' + type: boolean + prune: + description: 'Prune specifies whether to + delete resources from the cluster that + are not found in the sources anymore as + part of automated sync (default: false)' + type: boolean + selfHeal: + description: 'SelfHeal specifes whether + to revert resources back to their desired + state upon modification in the cluster + (default: false)' + type: boolean + type: object + retry: + description: Retry controls failed sync retry + behavior + properties: + backoff: + description: Backoff controls how to backoff + on subsequent retries of failed syncs + properties: + duration: + description: Duration is the amount + to back off. Default unit is seconds, + but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply + the base duration after each failed + retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum + amount of time allowed for the backoff + strategy + type: string + type: object + limit: + description: Limit is the maximum number + of attempts for retrying a failed sync. + If set to 0, no retries will be performed. + format: int64 + type: integer + type: object + syncOptions: + description: Options allow you to specify whole + app sync-options + items: + type: string + type: array + type: object + required: + - destination + - project + - source + type: object + required: + - metadata + - spec + type: object + type: object type: object type: array syncPolicy: description: ApplicationSetSyncPolicy configures how generated Applications will relate to their ApplicationSet. properties: - skipPrune: - description: SkipPrune will disable the default behavior which - will delete Applications that are no longer being generated - for the ApplicationSet which created them, or the ApplicationSet - itself is deleted. If SkipPrune is set to true, these Applications - will be orphaned but continue to exist. + preserveResourcesOnDeletion: + description: PreserveResourcesOnDeletion will preserve resources + on deletion. If PreserveResourcesOnDeletion is set to true, + these Applications will not be deleted. type: boolean type: object template: @@ -1362,6 +5945,10 @@ spec: additionalProperties: type: string type: object + finalizers: + items: + type: string + type: array labels: additionalProperties: type: string @@ -1377,25 +5964,27 @@ spec: additional parameters link definition revision. properties: destination: - description: Destination overrides the kubernetes server and - namespace defined in the environment ksonnet app.yaml + description: Destination is a reference to the target Kubernetes + server and namespace properties: name: - description: Name of the destination cluster which can - be used instead of server (url) field + description: Name is an alternate way of specifying the + target cluster by its symbolic name type: string namespace: - description: Namespace overrides the environment namespace - value in the ksonnet app.yaml + description: Namespace specifies the target namespace + for the application's resources. The namespace will + only be set for namespace-scoped resources that have + not set a value for .metadata.namespace type: string server: - description: Server overrides the environment server value - in the ksonnet app.yaml + description: Server specifies the URL of the target cluster + and must be set to the Kubernetes control plane API type: string type: object ignoreDifferences: - description: IgnoreDifferences controls resources fields which - should be ignored during comparison + description: IgnoreDifferences is a list of resources and + their fields which should be ignored during comparison items: description: ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored @@ -1403,6 +5992,10 @@ spec: properties: group: type: string + jqPathExpressions: + items: + type: string + type: array jsonPointers: items: type: string @@ -1414,13 +6007,12 @@ spec: namespace: type: string required: - - jsonPointers - kind type: object type: array info: - description: Infos contains a list of useful information (URLs, - email addresses, and plain text) that relates to the application + description: Info contains a list of information (URLs, email + addresses, and plain text) that relates to the application items: properties: name: @@ -1433,39 +6025,51 @@ spec: type: object type: array project: - description: Project is a application project name. Empty - name means that application belongs to 'default' project. + description: Project is a reference to the project this application + belongs to. The empty string means that application belongs + to the 'default' project. type: string revisionHistoryLimit: - description: This limits this number of items kept in the - apps revision history. 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. + description: 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. format: int64 type: integer source: - description: Source is a reference to the location ksonnet - application definition + description: Source is a reference to the location of the + application's manifests or chart properties: chart: - description: Chart is a Helm chart name + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. type: string directory: description: Directory holds path/directory specific options properties: exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation type: string jsonnet: - description: ApplicationSourceJsonnet holds jsonnet - specific options + description: Jsonnet holds options specific to Jsonnet properties: extVars: description: ExtVars is a list of Jsonnet External Variables items: - description: JsonnetVar is a jsonnet variable + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation properties: code: type: boolean @@ -1487,7 +6091,8 @@ spec: description: TLAS is a list of Jsonnet Top-level Arguments items: - description: JsonnetVar is a jsonnet variable + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation properties: code: type: boolean @@ -1502,6 +6107,8 @@ spec: type: array type: object recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests type: boolean type: object helm: @@ -1512,23 +6119,25 @@ spec: the helm template items: description: HelmFileParameter is a file parameter - to a helm template + that's passed to helm template during manifest + generation properties: name: - description: Name is the name of the helm parameter + description: Name is the name of the Helm parameter type: string path: - description: Path is the path value for the - helm parameter + description: Path is the path to the file containing + the values for the Helm parameter type: string type: object type: array parameters: - description: Parameters are parameters to the helm - template + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation items: - description: HelmParameter is a parameter to a helm - template + description: HelmParameter is a parameter that's + passed to helm template during manifest generation properties: forceString: description: ForceString determines whether @@ -1536,17 +6145,17 @@ spec: as strings type: boolean name: - description: Name is the name of the helm parameter + description: Name is the name of the Helm parameter type: string value: - description: Value is the value for the helm + description: Value is the value for the Helm parameter type: string type: object type: array releaseName: - description: The Helm release name. If omitted it - will use the application name + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name type: string valueFiles: description: ValuesFiles is a list of Helm value files @@ -1555,12 +6164,12 @@ spec: type: string type: array values: - description: Values is Helm values, typically defined - as a block + description: Values specifies Helm values to be passed + to helm template, typically defined as a block type: string version: description: Version is the Helm version to use for - templating with + templating (either "2" or "3") type: string type: object ksonnet: @@ -1595,47 +6204,67 @@ spec: commonAnnotations: additionalProperties: type: string - description: CommonAnnotations adds additional kustomize - commonAnnotations + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests type: object commonLabels: additionalProperties: type: string - description: CommonLabels adds additional kustomize - commonLabels + description: CommonLabels is a list of additional + labels to add to rendered manifests type: object + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean images: - description: Images are kustomize image overrides + description: Images is a list of Kustomize image override + specifications items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: type: string type: array namePrefix: description: NamePrefix is a prefix appended to resources - for kustomize apps + for Kustomize apps type: string nameSuffix: description: NameSuffix is a suffix appended to resources - for kustomize apps + for Kustomize apps type: string version: - description: Version contains optional Kustomize version + description: Version controls which version of Kustomize + to use for rendering manifests type: string type: object path: - description: Path is a directory path within the Git repository + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. type: string plugin: description: ConfigManagementPlugin holds config management plugin specific options properties: env: + description: Env is a list of environment variable + entries items: + description: EnvEntry represents an entry in the + application's environment properties: name: - description: the name, usually uppercase + description: Name is the name of the variable, + usually expressed in uppercase type: string value: - description: the value + description: Value is the value of the variable type: string required: - name @@ -1646,19 +6275,22 @@ spec: type: string type: object repoURL: - description: RepoURL is the repository URL of the application - manifests + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests type: string targetRevision: - description: TargetRevision defines the commit, tag, or - branch in which to sync the application to. If omitted, - will sync to HEAD + description: TargetRevision 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. type: string required: - repoURL type: object syncPolicy: - description: SyncPolicy controls when a sync will be performed + description: SyncPolicy controls when and how a sync will + be performed properties: automated: description: Automated will keep an application synced @@ -1669,19 +6301,22 @@ spec: resources (default: false)' type: boolean prune: - description: 'Prune will prune resources automatically - as part of automated sync (default: false)' + description: 'Prune specifies whether to delete resources + from the cluster that are not found in the sources + anymore as part of automated sync (default: false)' type: boolean selfHeal: - description: 'SelfHeal enables auto-syncing if (default: - false)' + description: 'SelfHeal specifes whether to revert + resources back to their desired state upon modification + in the cluster (default: false)' type: boolean type: object retry: description: Retry controls failed sync retry behavior properties: backoff: - description: Backoff is a backoff strategy + description: Backoff controls how to backoff on subsequent + retries of failed syncs properties: duration: description: Duration is the amount to back off. @@ -1700,7 +6335,8 @@ spec: type: object limit: description: Limit is the maximum number of attempts - when retrying a container + for retrying a failed sync. If set to 0, no retries + will be performed. format: int64 type: integer type: object diff --git a/charts/argocd-applicationset/values.yaml b/charts/argocd-applicationset/values.yaml index e5b12272..ac9ba29c 100644 --- a/charts/argocd-applicationset/values.yaml +++ b/charts/argocd-applicationset/values.yaml @@ -6,7 +6,7 @@ replicaCount: 1 image: # The image repository - repository: quay.io/argocdapplicationset/argocd-applicationset + repository: quay.io/argoproj/argocd-applicationset # Image pull policy pullPolicy: IfNotPresent # Overrides the image tag whose default is the chart appVersion.