- name: Gather package facts ansible.builtin.package_facts: manager: auto - name: Stop nginx to generate initial lego cert service: name: nginx state: stopped when: "'nginx' in ansible_facts.packages" - name: Generate initial cert command: cmd: /usr/local/bin/lego -a --email="{{ letsencrypt_email }}" --domains="{{ inventory_hostname | default(cert_domain) }}" --key-type {{ cert_key_type | default('rsa4096') }} --http run chdir: /root creates: "/root/.lego/certificates/{{ inventory_hostname | default(cert_domain) }}.crt" when: "'nginx' in ansible_facts.packages" - name: Start nginx after generating initial lego cert service: name: nginx state: started when: "'nginx' in ansible_facts.packages"