- name: ensure mosquitto is installed package: name: mosquitto state: present tags: - install - name: ensure mosquitto persistence directory exists file: path: '{{ mosquitto_persistence_location }}' mode: u=rwx,go= owner: mosquitto group: mosquitto state: directory when: mosquitto_persistence_location|d(none) is not none tags: - datadir - name: ensure mosquitto certificate is installed copy: src: certs/mosquitto/{{ inventory_hostname }}.cer dest: '{{ mosquitto_certfile }}' owner: root group: mosquitto mode: '0644' notify: - restart mosquitto when: mosquitto_certfile is defined tags: - cert - name: ensure mosquitto private key is installed copy: src: certs/mosquitto/{{ inventory_hostname }}.key dest: '{{ mosquitto_keyfile }}' owner: root group: mosquitto mode: '0440' diff: false notify: - restart mosquitto when: mosquitto_keyfile is defined tags: - cert - name: ensure mosquitto is configured template: src: mosquitto.conf.j2 dest: /etc/mosquitto/mosquitto.conf mode: '0644' notify: - restart mosquitto tags: - mosquitto-config - meta: flush_handlers - name: ensure mosquitto starts at boot service: name: mosquitto enabled: true tags: - service - name: ensure mosquitto is running service: name: mosquitto state: started tags: - service