--- - name: Create ArgoCD namespace ansible.builtin.raw: >- {{ k3d_tool_dir }}/kubectl create namespace {{ argocd_namespace }} --dry-run=client -o yaml | {{ k3d_tool_dir }}/kubectl apply -f - become_user: "{{ k3d_user }}" changed_when: false - name: Install pinned ArgoCD manifest ansible.builtin.raw: >- {{ k3d_tool_dir }}/kubectl apply --server-side --force-conflicts -n {{ argocd_namespace }} -f {{ argocd_install_manifest_url }} become_user: "{{ k3d_user }}" - name: Wait for ArgoCD server ansible.builtin.raw: >- {{ k3d_tool_dir }}/kubectl -n {{ argocd_namespace }} rollout status deployment/argocd-server --timeout={{ argocd_rollout_timeout }} become_user: "{{ k3d_user }}" - name: Apply the GitOps root Application ansible.builtin.raw: "{{ k3d_tool_dir }}/kubectl apply -f {{ argocd_root_application_manifest }}" become_user: "{{ k3d_user }}" - name: Verify root Application source path ansible.builtin.raw: >- {{ k3d_tool_dir }}/kubectl get application security-baseline-root -n {{ argocd_namespace }} -o jsonpath={.spec.source.path} become_user: "{{ k3d_user }}" register: argocd_root_path changed_when: false failed_when: argocd_root_path.stdout | trim != 'deployments/argocd/apps'