Files
cloud-configuration/ansible/roles/spring_boot/tasks/nginx.yaml
T

39 lines
1.3 KiB
YAML

---
- name: Add HTTP site
ansible.builtin.template:
src: etc/nginx/sites-available/spring_domain.conf.j2
dest: /etc/nginx/sites-available/{{ spring_domain }}.conf
owner: root
group: root
mode: "644"
force: false
lstrip_blocks: true
- name: Disable default site
ansible.builtin.command:
cmd: rm /etc/nginx/sites-enabled/default
removes: /etc/nginx/sites-enabled/default
- name: Enable HTTP site
ansible.builtin.command:
cmd: ln -sf /etc/nginx/sites-available/{{ spring_domain }}.conf /etc/nginx/sites-enabled/{{ spring_domain }}.conf
creates: /etc/nginx/sites-enabled/{{ spring_domain }}.conf
notify: Reload nginx
- name: Check certificate existence
ansible.builtin.stat:
path: "/etc/letsencrypt/live/{{ spring_domain }}/cert.pem"
register: certificate
- name: Generate certificates
ansible.builtin.command:
cmd: >
certbot --nginx --non-interactive --keep-until-expiring
--no-eff-email
--email {{ admin_mail }}
--redirect
--renew-with-new-domains --agree-tos -d {{ spring_domain }}
creates: "/etc/letsencrypt/live/{{ spring_domain }}/cert.pem"
register: certbot_certificate_created
notify: Reload nginx
failed_when:
- "'Successfully received certificate.' not in certbot_certificate_created.stdout"
when:
- not certificate.stat.exists