Use lineinfile to check domain list content

This commit is contained in:
Yoan Tournade 2018-02-16 00:08:49 +01:00
parent fa59772ab1
commit e1d787d811
No known key found for this signature in database
GPG Key ID: C6A3FAA68AE36EB4
2 changed files with 14 additions and 16 deletions

View File

@ -14,10 +14,11 @@
when: not letsencrypt_cert_exists.stat.exists
- name: Persist domain list to host
copy:
content: "{{ cert_item.domains }}"
dest: /etc/letsencrypt/domains-{{ cert_item.domains | first }}
when: letsencrypt_cert_updated.rc != 0
lineinfile:
path: /etc/letsencrypt/domains-{{ cert_item.domains | first }}
line: "{{ cert_item.domains }}"
state: present
when: letsencrypt_cert_updated
- name: Start services after cert has been generated.
service:

View File

@ -5,17 +5,14 @@
register: letsencrypt_cert_exists
- name: Check if certificate has changed.
command: grep -Fxq "{{ cert_item.domains }}" /etc/letsencrypt/domains-{{ cert_item.domains | first }}
register: letsencrypt_cert_updated
check_mode: no
ignore_errors: yes
changed_when: no
lineinfile:
path: /etc/letsencrypt/domains-{{ cert_item.domains | first }}
line: "{{ cert_item.domains }}"
state: present
check_mode: yes
register: letsencrypt_cert_contents
when: letsencrypt_cert_exists.stat.exists
- debug:
msg: Not changed
when: letsencrypt_cert_updated.rc == 0
- debug:
msg: Changed
when: letsencrypt_cert_updated.rc != 0
- set_fact:
letsencrypt_cert_updated: "{{ (letsencrypt_cert_contents | changed) or (letsencrypt_cert_contents | failed) }}"
when: letsencrypt_cert_exists.stat.exists