github.com/argoproj-labs/argocd-operator@v0.10.0/docs/usage/enabling-disabling-argocd-core-components.md (about)

     1  # Enabling/Disabling Core Components of ArgoCD
     2  The Operator oversees all Argo CD workloads, including the API server, repository server, application controller, and more.
     3  
     4  Currently, the following workloads are managed:
     5  
     6  * argocd-server (API server and UI)
     7  * argocd-repo-server (Repository server)
     8  * argocd-application-controller (Main reconciliation controller)
     9  * argocd-applicationset-controller (ApplicationSet reconciliation controller)
    10  * argocd-redis (volatile cache)
    11  
    12  To support installations with minimal resource requirements and to facilitate distribution across clusters or namespaces, the ability to selectively install specific Argo CD components has been introduced.
    13  
    14  To enable/disable a particular Argo CD workload, a new flag, `spec.<component>.enabled`, has been implemented. The default value of the flag is `true`, implying that if the flag is unspecified, the Argo CD workload is enabled by default.
    15  
    16  To disable a specific Argo CD component, set the `spec.<component>.enabled` flag to `false`.
    17  
    18  Consider the following example:
    19  
    20  ```yaml
    21  apiVersion: argoproj.io/v1beta1
    22  kind: ArgoCD
    23  metadata:
    24    name: example
    25  spec:
    26    controller:
    27      enabled: false
    28  ```
    29  
    30  In this example, only the controller component is disabled, while all other components continue to run normally.
    31  
    32  # Specifying External URLs for Redis and RepoServer Components
    33  When disabling core components like Redis or Repo Server, you may wish to provide an external URL for components running in external clusters. The remote URL can be set using the `spec.<component>.remote` flag (where the component can only be `redis` or `repo`).
    34  
    35  For example,
    36  
    37  ```yaml
    38  apiVersion: argoproj.io/v1beta1
    39  kind: ArgoCD
    40  metadata:
    41    name: example
    42  spec:
    43    repo:
    44      enabled: false
    45      remote: 'https://www.example.com/repo-server'
    46  ```
    47  
    48  !!! Note: The remote flag can only be set if the enabled flag of the component is set to false.