diff --git a/tests/multi-node-hosts-file.yaml b/tests/multi-node-hosts-file.yaml new file mode 100644 index 00000000..4334e534 --- /dev/null +++ b/tests/multi-node-hosts-file.yaml @@ -0,0 +1,25 @@ +- name: Test the multi-node-hosts-file role + hosts: all + roles: + - multi-node-hosts-file + post_tasks: + - name: lookup hosts file + command: cat /etc/hosts + register: hosts_file + + - name: Set up the list of hosts and addresses + set_fact: + host_addresses: > + {% set hosts = [] -%} + {% for host, vars in hostvars.items() -%} + {% set _ = hosts.append({'host': host, 'address': vars['nodepool']['private_ipv4']}) -%} + {% endfor -%} + {{- hosts -}} + + - name: assert that hosts are in the hosts file + vars: + line: "{{ item.address }} {{ item.host }}" + assert: + that: + - "line in hosts_file.stdout" + with_list: "{{ host_addresses }}" diff --git a/tests/multinode.yaml b/tests/multinode.yaml index 052954b9..48ead35f 100644 --- a/tests/multinode.yaml +++ b/tests/multinode.yaml @@ -3,3 +3,4 @@ # Roles that are part of the 'multinode' job - include: multi-node-known-hosts.yaml +- include: multi-node-hosts-file.yaml