mirror of
https://github.com/argoproj/argo-cd
synced 2026-05-24 09:50:08 +00:00
* doc: update doc regarding PruneLast sync option. Signed-off-by: May Zhang <may_zhang@intuit.com> * fix: semantic pr failed. Signed-off-by: May Zhang <may_zhang@intuit.com> * fix: also updated application.yaml Signed-off-by: May Zhang <may_zhang@intuit.com>
123 lines
4.7 KiB
YAML
123 lines
4.7 KiB
YAML
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: guestbook
|
|
# You'll usually want to add your resources to the argocd namespace.
|
|
namespace: argocd
|
|
# Add a this finalizer ONLY if you want these to cascade delete.
|
|
finalizers:
|
|
- resources-finalizer.argocd.argoproj.io
|
|
spec:
|
|
# The project the application belongs to.
|
|
project: default
|
|
|
|
# Source of the application manifests
|
|
source:
|
|
repoURL: https://github.com/argoproj/argocd-example-apps.git
|
|
targetRevision: HEAD
|
|
path: guestbook
|
|
|
|
# helm specific config
|
|
helm:
|
|
# Extra parameters to set (same as setting through values.yaml, but these take precedence)
|
|
parameters:
|
|
- name: "nginx-ingress.controller.service.annotations.external-dns\\.alpha\\.kubernetes\\.io/hostname"
|
|
value: mydomain.example.com
|
|
- name: "ingress.annotations.kubernetes\\.io/tls-acme"
|
|
value: "true"
|
|
forceString: true # ensures that value is treated as a string
|
|
|
|
# Release name override (defaults to application name)
|
|
releaseName: guestbook
|
|
|
|
# Helm values files for overriding values in the helm chart
|
|
# The path is relative to the spec.source.path directory defined above
|
|
valueFiles:
|
|
- values-prod.yaml
|
|
|
|
# Values file as block file
|
|
values: |
|
|
ingress:
|
|
enabled: true
|
|
path: /
|
|
hosts:
|
|
- mydomain.example.com
|
|
annotations:
|
|
kubernetes.io/ingress.class: nginx
|
|
kubernetes.io/tls-acme: "true"
|
|
labels: {}
|
|
tls:
|
|
- secretName: mydomain-tls
|
|
hosts:
|
|
- mydomain.example.com
|
|
|
|
# Optional Helm version to template with. If omitted it will fallback to look at the 'apiVersion' in Chart.yaml
|
|
# and decide which Helm binary to use automatically. This field can be either 'v2' or 'v3'.
|
|
version: v2
|
|
|
|
# kustomize specific config
|
|
kustomize:
|
|
# Optional kustomize version. Note: version must be configured in argocd-cm ConfigMap
|
|
version: v3.5.4
|
|
# Optional image name prefix
|
|
namePrefix: prod-
|
|
# Optional images passed to "kustomize edit set image".
|
|
images:
|
|
- gcr.io/heptio-images/ks-guestbook-demo:0.2
|
|
|
|
# directory
|
|
directory:
|
|
recurse: true
|
|
jsonnet:
|
|
# A list of Jsonnet External Variables
|
|
extVars:
|
|
- name: foo
|
|
value: bar
|
|
# You can use "code to determine if the value is either string (false, the default) or Jsonnet code (if code is true).
|
|
- code: true
|
|
name: baz
|
|
value: "true"
|
|
# A list of Jsonnet Top-level Arguments
|
|
tlas:
|
|
- code: false
|
|
name: foo
|
|
value: bar
|
|
|
|
# plugin specific config
|
|
plugin:
|
|
name: mypluginname
|
|
# environment variables passed to the plugin
|
|
env:
|
|
- name: FOO
|
|
value: bar
|
|
|
|
# Destination cluster and namespace to deploy the application
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: guestbook
|
|
|
|
# Sync policy
|
|
syncPolicy:
|
|
automated: # automated sync by default retries failed attempts 5 times with following delays between attempts ( 5s, 10s, 20s, 40s, 80s ); retry controlled using `retry` field.
|
|
prune: true # Specifies if resources should be pruned during auto-syncing ( false by default ).
|
|
selfHeal: true # Specifies if partial app sync should be executed when resources are changed only in target Kubernetes cluster and no git change detected ( false by default ).
|
|
allowEmpty: false # Allows deleting all application resources during automatic syncing ( false by default ).
|
|
syncOptions: # Sync options which modifies sync behavior
|
|
- Validate=false # disables resource validation (equivalent to 'kubectl apply --validate=false') ( true by default ).
|
|
- CreateNamespace=true # Namespace Auto-Creation ensures that namespace specified as the application destination exists in the destination cluster.
|
|
- PrunePropagationPolicy=foreground # Supported policies are background, foreground and orphan.
|
|
- PruneLast=true # Allow the ability for resource pruning to happen as a final, implicit wave of a sync operation
|
|
# The retry feature is available since v1.7
|
|
retry:
|
|
limit: 5 # number of failed sync attempt retries; unlimited number of attempts if less than 0
|
|
backoff:
|
|
duration: 5s # the amount to back off. Default unit is seconds, but could also be a duration (e.g. "2m", "1h")
|
|
factor: 2 # a factor to multiply the base duration after each failed retry
|
|
maxDuration: 3m # the maximum amount of time allowed for the backoff strategy
|
|
|
|
# Ignore differences at the specified json pointers
|
|
ignoreDifferences:
|
|
- group: apps
|
|
kind: Deployment
|
|
jsonPointers:
|
|
- /spec/replicas
|