prole/infrastructure/roles/k3s/tasks/certmgr.yml
chrisfu 133b719479 Align CNPG bootstrap placement with Ansible policy
Prefer infra-managed manifests for bootstrap; reconcile CNPG instances based on Ready+schedulable labeled db nodes; update manifests to use node-role affinity + anti-affinity; add policy/tests and config touch-ups (incl. prole.cfg).
2026-03-18 22:06:41 -07:00

54 lines
1.8 KiB
YAML

---
- name: Check for cert-manager CRD
ansible.builtin.command: k3s kubectl get crd certificates.cert-manager.io
register: k3s_certmgr_crd
changed_when: false
failed_when: false
run_once: true
- name: Apply cert-manager (CRDs + controller)
ansible.builtin.command: >-
k3s kubectl apply --validate=false -f
https://github.com/cert-manager/cert-manager/releases/download/{{ k3s_cert_manager_version }}/cert-manager.yaml
register: _k3s_certmgr_apply
changed_when: >-
(_k3s_certmgr_apply.stdout | default('') | lower) is search('configured')
or (_k3s_certmgr_apply.stdout | default('') | lower) is search('created')
retries: 30
delay: 10
until: _k3s_certmgr_apply.rc == 0
run_once: true
- name: Wait for cert-manager deployment to have a ready replica
ansible.builtin.command: >-
k3s kubectl -n cert-manager get deployment cert-manager
-o jsonpath='{.status.readyReplicas}'
register: _k3s_certmgr_ready
changed_when: false
retries: 90
delay: 10
until: (_k3s_certmgr_ready.stdout | default('0') | int) >= 1
run_once: true
- name: Wait for cert-manager-cainjector deployment to have a ready replica
ansible.builtin.command: >-
k3s kubectl -n cert-manager get deployment cert-manager-cainjector
-o jsonpath='{.status.readyReplicas}'
register: _k3s_certmgr_cainjector_ready
changed_when: false
retries: 90
delay: 10
until: (_k3s_certmgr_cainjector_ready.stdout | default('0') | int) >= 1
run_once: true
- name: Wait for cert-manager-webhook deployment to have a ready replica
ansible.builtin.command: >-
k3s kubectl -n cert-manager get deployment cert-manager-webhook
-o jsonpath='{.status.readyReplicas}'
register: _k3s_certmgr_webhook_ready
changed_when: false
retries: 90
delay: 10
until: (_k3s_certmgr_webhook_ready.stdout | default('0') | int) >= 1
run_once: true