diff --git a/defaults/main.yml b/defaults/main.yml index bd493a9..7a9b3f8 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,4 +1,2 @@ --- letsencrypt_staging: false -certbot_version: 0.31.0-1+ubuntu{{ ansible_distribution_version }}.1+certbot+1 -certbot_nginx_version: 0.31.0-1+ubuntu{{ ansible_distribution_version }}.1+certbot+1 diff --git a/meta/main.yml b/meta/main.yml index 2f4a707..91f0a09 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -13,6 +13,7 @@ galaxy_info: versions: - xenial - bionic + - focal galaxy_tags: - certbot diff --git a/tasks/certificate.yml b/tasks/certificate.yml index cb4d1b9..fd022ff 100644 --- a/tasks/certificate.yml +++ b/tasks/certificate.yml @@ -22,5 +22,6 @@ --cert-name '{{ certbot_nginx_cert_name }}' {% endif %} {% if letsencrypt_staging %} --staging {% endif %} - when: letsencrypt_cert.stat.exists and certbot_force_update is defined + {% if ansible_distribution_version >= "20.04" %} --non-interactive {% endif %} + when: letsencrypt_cert.stat.exists and certbot_force_update | bool notify: reload nginx diff --git a/tasks/main.yml b/tasks/main.yml index b72aeac..9ec4702 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,8 +1,23 @@ --- +- name: Set Certbot package name and versions (Ubuntu >= 20.04) + set_fact: + certbot_version: 0.40.0-1 + certbot_nginx_version: 0.40.0-0ubuntu0.1 + certbot_nginx_name: python3-certbot-nginx + when: ansible_distribution_version >= "20.04" + +- name: Set Certbot package name and versions (Ubuntu < 20.04) + set_fact: + certbot_version: 0.31.0-1+ubuntu{{ ansible_distribution_version }}.1+certbot+1 + certbot_nginx_version: 0.31.0-1+ubuntu{{ ansible_distribution_version }}.1+certbot+1 + certbot_nginx_name: python-certbot-nginx + when: ansible_distribution_version < "20.04" + - name: Add certbot repository apt_repository: repo: 'ppa:certbot/certbot' state: present + when: ansible_distribution_version < "20.04" - name: Install certbot package: @@ -11,7 +26,7 @@ - name: Install certbot-nginx plugin package: - name: "python-certbot-nginx={{ certbot_nginx_version }}" + name: "{{ certbot_nginx_name }}={{ certbot_nginx_version }}" state: present - import_tasks: certificate.yml