@@ -7,15 +7,61 @@ and configuration of ArgoCD applications.
77Configuration
88-------------
99
10- This toolset requires an ``ARGOCD_AUTH_TOKEN `` environment variable as described in
11- the `argocd documentation <https://argo-cd.readthedocs.io/en/latest/user-guide/commands/argocd_account_generate-token/ >`_.
10+ This toolset requires an ``ARGOCD_AUTH_TOKEN `` environment variable. Generate such auth token by following
11+ `these steps <https://argo-cd.readthedocs.io/en/latest/user-guide/commands/argocd_account_generate-token/ >`_.
12+ You can consult the `available environment variables <https://argo-cd.readthedocs.io/en/latest/user-guide/environment-variables/ >`_
13+ on argocd's official documentation for the CLI.
14+
15+ In addition to the auth token, you will need to tell argocd how to connect to the server. This can be done two ways:
16+
17+ 1. **Using port forwarding **. This is the recommended approach if your argocd is inside your Kubernetes cluster.
18+ 2. **Setting the env var ** ``SERVER_URL ``. This is the recommended approach if your argocd is reachable through a public DNS
19+
20+ 1. Port forwarding
21+ ^^^^^^^^^^^^^^^^^^
22+
23+ This is the recommended approach if your argocd is inside your Kubernetes cluster.
24+
25+ HolmesGPT needs permission to establish a port-forward to ArgoCD. The configuration below includes that authorization.
26+
27+ .. code-block :: yaml
28+
29+ holmes :
30+ customClusterRoleRules :
31+ - apiGroups : [""]
32+ resources : ["pods/portforward"]
33+ verbs : ["create"]
34+ additionalEnvVars :
35+ - name : ARGOCD_AUTH_TOKEN
36+ value : <your argocd auth token>
37+ - name : ARGOCD_OPTS
38+ value : " --port-forward --port-forward-namespace <your_argocd_namespace> --grpc-web"
39+ toolsets :
40+ argocd/core :
41+ enabled : true
42+
43+ .. note ::
44+
45+ Change the namespace ``--port-forward-namespace <your_argocd_namespace> `` to the namespace in which your argocd service
46+ is deployed.
47+
48+ The option ``--grpc-web `` in ``ARGOCD_OPTS `` prevents some connection errors from leaking into the tool responses and
49+ provides a cleaner output for HolmesGPT.
50+
51+
52+ 2. Server URL
53+ ^^^^^^^^^^^^^
54+
55+ This is the recommended approach if your argocd is reachable through a public DNS.
1256
1357.. code-block :: yaml
1458
1559 holmes :
1660 additionalEnvVars :
1761 - name : ARGOCD_AUTH_TOKEN
1862 value : <your argocd auth token>
63+ - name : ARGOCD_SERVER
64+ value : argocd.example.com
1965 toolsets :
2066 argocd/core :
2167 enabled : true
0 commit comments