Ansible Role: ArgoCD
This role installs and configures ArgoCD in a Kubernetes cluster.
Role Variables
Available variables are listed below, along with default values (see defaults/main.yml):
| Variable | Default | Description |
|---|---|---|
argocd_version |
stable |
The version of ArgoCD to install. |
argocd_namespace |
argocd |
The namespace where ArgoCD will be installed. |
argocd_repo |
https://raw.githubusercontent.com/argoproj/argo-cd/refs/tags/{{ argocd_version }}/manifests/ha/install.yaml |
The URL to the ArgoCD installation manifests. |
argocd_git_repository |
https://github.com/argocd/argocd |
The Git repository URL for ArgoCD to use. |
argocd_git_username |
user |
The username for the Git repository. |
argocd_git_pat |
token |
The personal access token for the Git repository. |
Tasks
The following tasks are performed by this role:
- Install ArgoCD: Creates the ArgoCD namespace and applies the installation manifests.
- Apply ArgoCD Ingress: Applies an Ingress resource for the ArgoCD server. Note: The template file
ingress.yml.j2is missing from the role. - Apply ArgoCD CM: Applies a ConfigMap with command parameters for ArgoCD.
- Apply ArgoCD repository: Creates a Secret with Git repository credentials.
- Apply ArgoCD Root Application: Creates a root Application resource for ArgoCD.
Handlers
There are no handlers in this role.
Usage
Here is an example of how to use this role in a playbook:
- hosts: kubernetes
roles:
- role: kubernetes_argocd
vars:
argocd_git_repository: "https://github.com/my-org/my-repo.git"
argocd_git_username: "my-user"
argocd_git_pat: "my-token"