--- - name: Recovery Nomad hosts: nomad_instances tasks: - name: Stop Nomad systemd: name: nomad state: stopped become: true - name: Get node-id slurp: src: /var/nomad/server/node-id register: nomad_node_id become: true - name: Node Id debug: msg: "node_id: {{ nomad_node_id.content }}" - name: Address debug: msg: "address: {{ ansible_default_ipv4.address }}" - name: Save copy: dest: /var/nomad/server/raft/peers.json content: | [ {% for host in ansible_play_hosts|reject('equalto', inventory_hostname) -%} { "id": "{{ hostvars[host].nomad_node_id.content }}", "address": "{{ hostvars[host].ansible_default_ipv4.address }}:4647", "non_voter": false }{% if not loop.last %},{% endif %} {% endfor -%} ] become: true - name: Restart Nomad systemd: name: nomad state: restarted become: true