--- - name: Create directory for monitoring scripts and data file: state: directory path: "{{ instance_directory }}" owner: root group: "{{ system_user }}" mode: u=rwx,g=rx,o= - name: Deploy script template: src: monitor.py dest: "{{ script_path }}" owner: root group: "{{ system_user }}" mode: u=rwx,g=rx,o= register: script_task - name: Create empty data file copy: content: "" dest: "{{ data_path }}" force: no # do not overwrite - name: Ensure permissions on data file file: state: file path: "{{ data_path }}" owner: root group: "{{ system_user }}" mode: u=rw,g=rw,o= - name: Register service for monitor template: src: monitor.service dest: "{{ global_systemd_configuration_directory }}/{{ instance_name }}.service" owner: root group: root mode: u=rw,g=r,o= register: service_task - name: Run service for initial test systemd: state: started daemon_reload: yes name: "{{ instance_name }}.service" when: script_task.changed or service_task.changed - name: Register timer for monitor service template: src: monitor.timer dest: "{{ global_systemd_configuration_directory }}/{{ instance_name }}.timer" owner: root group: root mode: u=rw,g=r,o= register: timer_task - name: Restart timer for monitor systemd: state: restarted daemon_reload: yes name: "{{ instance_name }}.timer" when: timer_task.changed - name: Enable timer for monitor systemd: name: "{{ instance_name }}.timer" enabled: yes