| @@ -28,42 +28,37 @@ | |||||
| delegate_to: 127.0.0.1 | delegate_to: 127.0.0.1 | ||||
| become: false | become: false | ||||
| - name: Populate service facts | |||||
| service_facts: | |||||
| when: ansible_distribution != 'Archlinux' | |||||
| - block: | |||||
| - name: Populate service facts | |||||
| service_facts: | |||||
| - name: Fail if service isn't detected to be running | |||||
| fail: | |||||
| msg: >- | |||||
| {{ item }} was not detected to be running. | |||||
| It's possible that there's a configuration problem or another service on your server interferes with it (uses the same ports, etc.). | |||||
| Try running `systemctl status {{ item }}` and `journalctl -fu {{ item }}` on the server to investigate. | |||||
| with_items: "{{ matrix_systemd_services_list }}" | |||||
| when: | |||||
| - "ansible_facts.services[item + '.service']|default(none) is none or ansible_facts.services[item + '.service'].state != 'running'" | |||||
| - ansible_distribution != 'Archlinux' | |||||
| - name: Fail if service isn't detected to be running | |||||
| fail: | |||||
| msg: >- | |||||
| {{ item }} was not detected to be running. | |||||
| It's possible that there's a configuration problem or another service on your server interferes with it (uses the same ports, etc.). | |||||
| Try running `systemctl status {{ item }}` and `journalctl -fu {{ item }}` on the server to investigate. | |||||
| with_items: "{{ matrix_systemd_services_list }}" | |||||
| when: | |||||
| - "ansible_facts.services[item + '.service']|default(none) is none or ansible_facts.services[item + '.service'].state != 'running'" | |||||
| when: " ansible_distribution != 'Archlinux'" | |||||
| # Currently there is a bug in ansible that renders is incompatible with systemd. | |||||
| # service_facts is not collecting the data successfully. | |||||
| # Therefore iterating here manually | |||||
| - name: Fetch systemd information | |||||
| systemd: | |||||
| name: "{{ item }}" | |||||
| register: systemdstatus | |||||
| with_items: "{{ matrix_systemd_services_list }}" | |||||
| when: | |||||
| - ansible_distribution == 'Archlinux' | |||||
| - block: | |||||
| # Currently there is a bug in ansible that renders is incompatible with systemd. | |||||
| # service_facts is not collecting the data successfully. | |||||
| # Therefore iterating here manually | |||||
| - name: Fetch systemd information | |||||
| systemd: | |||||
| name: "{{ item }}" | |||||
| register: systemdstatus | |||||
| with_items: "{{ matrix_systemd_services_list }}" | |||||
| - name: Fail if service isn't detected to be running | |||||
| fail: | |||||
| msg: >- | |||||
| {{ item.item }} was not detected to be running. | |||||
| It's possible that there's a configuration problem or another service on your server interferes with it (uses the same ports, etc.). | |||||
| Try running `systemctl status {{ item.item }}` and `journalctl -fu {{ item.item }}` on the server to investigate. | |||||
| with_items: "{{ systemdstatus.results }}" | |||||
| loop_control: | |||||
| label: "{{ item.name }}" | |||||
| when: | |||||
| #- "ansible_facts.services[item + '.service']|default(none) is none or ansible_facts.services[item + '.service'].state != 'running'" | |||||
| - "item.status['ActiveState'] != 'active'" | |||||
| - "ansible_distribution == 'Archlinux'" | |||||
| - name: Fail if service isn't detected to be running | |||||
| fail: | |||||
| msg: >- | |||||
| {{ item.item }} was not detected to be running. | |||||
| It's possible that there's a configuration problem or another service on your server interferes with it (uses the same ports, etc.). | |||||
| Try running `systemctl status {{ item.item }}` and `journalctl -fu {{ item.item }}` on the server to investigate. | |||||
| with_items: "{{ systemdstatus.results }}" | |||||
| when: "item.status['ActiveState'] != 'active'" | |||||
| when: "ansible_distribution == 'Archlinux'" | |||||