Files
payphone/playbooks/dev/04-cert-manager.yml
T

54 lines
1.7 KiB
YAML

- name: Set up Cert-Manager
hosts: dev
become: true
vars:
cert_manager_ns: cert-manager
cert_manager_yaml_src: "{{ playbook_dir }}/../../k8s/scylla/01-cert-manager.yml"
cert_manager_yaml_dest: /tmp/01-cert-manager.yml
cert_manager_crds:
- certificates.cert-manager.io
- issuers.cert-manager.io
cert_manager_deployments:
- cert-manager
- cert-manager-cainjector
- cert-manager-webhook
tasks:
- name: Copy Cert-Manager YAML to node
ansible.builtin.copy:
src: "{{ cert_manager_yaml_src }}"
dest: "{{ cert_manager_yaml_dest }}"
mode: '0644'
- name: Apply Cert-Manager YAML
kubernetes.core.k8s:
state: present
src: "{{ cert_manager_yaml_dest }}"
kubeconfig: /etc/rancher/k3s/k3s.yaml
- name: Wait for Cert-Manager CRDs
ansible.builtin.shell: |
kubectl wait --for condition=established --timeout=60s crd/{{ cert_manager_crds | join(' crd/') }}
environment:
KUBECONFIG: /etc/rancher/k3s/k3s.yaml
changed_when: false
- name: Wait for Cert-Manager deployments
ansible.builtin.shell: |
kubectl -n {{ cert_manager_ns }} rollout status --timeout=10m deployment.apps/{{ item }}
loop: "{{ cert_manager_deployments }}"
loop_control:
loop_var: item
environment:
KUBECONFIG: /etc/rancher/k3s/k3s.yaml
changed_when: false
- name: Wait for Cert-Manager webhook CA secret
ansible.builtin.shell: |
for i in {1..30}; do
kubectl -n {{ cert_manager_ns }} get secret/cert-manager-webhook-ca && break
sleep 1
done
environment:
KUBECONFIG: /etc/rancher/k3s/k3s.yaml
changed_when: false