diff --git a/README.md b/README.md index 9e3b3ff..04c94ed 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ for it using Letsencrypt. The certificate is set to be autorenewed every 3 month # Requirements -The role currently supports only Ubuntu +The role currently supports only Ubuntu 20.04 (using snap to install Certbot) # Installation diff --git a/tasks/certbot.yml b/tasks/certbot.yml index 57fc96e..c58f386 100644 --- a/tasks/certbot.yml +++ b/tasks/certbot.yml @@ -1,6 +1,10 @@ - name: get a certificate become: yes command: "certbot --nginx -d {{ https_reverse_proxy_domain_name }} --non-interactive --agree-tos -m {{ https_reverse_proxy_certificate_contact_email }} {{ '--redirect' if https_reverse_proxy_redirect }}" + args: + creates: '/etc/letsencrypt/live/{{ https_reverse_proxy_domain_name }}/fullchain.pem' - name: setup autorenew of certificate become: yes command: certbot renew + args: + creates: false \ No newline at end of file diff --git a/tasks/check_vars.yml b/tasks/check_vars.yml index 22e2e69..d8b72a8 100644 --- a/tasks/check_vars.yml +++ b/tasks/check_vars.yml @@ -2,7 +2,7 @@ - name: check if all required variables are set fail: msg: "{{ item }} is not defined or empty" - when: item not in vars or vars[item] == "" + when: item not in vars or vars[item] is not defined with_items: - https_reverse_proxy_domain_name - https_reverse_proxy_site_name diff --git a/tasks/install.yml b/tasks/install.yml index a234e50..8cd8053 100644 --- a/tasks/install.yml +++ b/tasks/install.yml @@ -1,10 +1,11 @@ -- name: setup certbot apt repo +- name: install certbot become: yes - apt_repository: - repo: "ppa:certbot/certbot" -- name: install nginx and certbot + snap: + name: certbot + classic: yes +- name: install nginx become: yes apt: force_apt_get: yes - name: ["nginx", "python-certbot-nginx"] + name: ["nginx"] update_cache: yes \ No newline at end of file diff --git a/tasks/nginx.yml b/tasks/nginx.yml index 58e6aff..5e6689e 100644 --- a/tasks/nginx.yml +++ b/tasks/nginx.yml @@ -3,6 +3,7 @@ template: src: templates/nginx.j2 dest: /etc/nginx/sites-available/{{ https_reverse_proxy_site_name }} + mode: '644' notify: - test nginx configuration - name: put reverse proxy site config in enabled