--- - name: Verify hosts: grp_targets gather_facts: false tasks: - name: Checking that services are running and enabled ansible.builtin.systemd: name: "{{ item }}" enabled: true state: started check_mode: true register: svc_test loop: - 'mariadb@zoneminder.service' - 'apache2.service' failed_when: svc_test.changed - name: Checking that services survive restart ansible.builtin.systemd: name: "{{ item }}" state: restarted loop: - 'mariadb@zoneminder.service' - 'apache2.service' - name: Checking ports ansible.builtin.wait_for: port: "{{ item }}" timeout: 1 msg: "Checking port {{ item }}" loop: - 80 - 443 - name: Verify hosts: grp_tester gather_facts: false tasks: - name: Checking if zoneminder web-service is reachable ansible.builtin.uri: url: 'https://zoneminder.test.ansibleguy.net' return_content: yes validate_certs: false register: page failed_when: "'ZoneMinder server' not in page.content"