github.com/argoproj/argo-cd@v1.8.7/docs/user-guide/app_deletion.md (about)

     1  # App Deletion
     2  
     3  Apps can be deleted with or without a cascade option. A **cascade delete**, deletes both the app and its resources, rather than only the app. 
     4  
     5  ## Deletion Using `argocd`
     6  
     7  To perform a non-cascade delete:
     8  
     9  ```bash
    10  argocd app delete APPNAME --cascade=false
    11  ```
    12  
    13  To perform a cascade delete:
    14  
    15  ```bash
    16  argocd app delete APPNAME --cascade
    17  ```
    18  
    19  or
    20  
    21  ```bash
    22  argocd app delete APPNAME
    23  ```
    24  
    25  # Deletion Using `kubectl`
    26  
    27  To perform a non-cascade delete:
    28  
    29  ```bash
    30  kubectl delete app APPNAME
    31  ``` 
    32  
    33  To perform a cascade delete set the finalizer, e.g. using `kubctl patch`:
    34  
    35  ```bash
    36  kubectl patch app APPNAME  -p '{"metadata": {"finalizers": ["resources-finalizer.argocd.argoproj.io"]}}' --type merge
    37  kubectl delete app APPNAME 
    38  ```
    39  
    40  # About The Deletion Finalizer
    41  
    42  For the technical amongst you, the Argo CD application controller watches for this finalizer:  
    43  
    44  ```yaml
    45  metadata:
    46    finalizers:
    47      - resources-finalizer.argocd.argoproj.io
    48  ```
    49  
    50  Argo CD's app controller watches for this and will then delete both the app and its resources.
    51  
    52  When you invoke `argocd app delete` with `--cascade`, the finalizer is added automatically.