--- - name: '{{ inventory }}: Verify basic inventory' assert: that: - server_public[identifier] in hostvars - server_private[identifier] in hostvars - server_public_private[identifier] in hostvars - server_unsafe_chars[identifier] in hostvars - name: '{{ inventory }}: Verify duplicate host names in inventory' assert: that: - cloudscale_resource_prefix + '-duplicate' not in hostvars - (cloudscale_resource_prefix + '-duplicate') | safe_group_name in groups - name: '{{ inventory }}: Verify constructed groups in inventory' assert: that: # Test for the "ansible" group - '"ansible" in groups' - server_public[identifier] in groups.ansible - server_private[identifier] in groups.ansible - server_public_private[identifier] in groups.ansible - server_unsafe_chars[identifier] in groups.ansible - server_other_prefix[identifier] not in groups.ansible # Tests for the "private_net" group - '"private_net" in groups' - server_public[identifier] not in groups["private_net"] - server_private[identifier] in groups["private_net"] - server_public_private[identifier] in groups["private_net"] # Tests for "distro" keyed group - '"distro_Debian" in groups' - '"distro_Ubuntu" in groups' - server_public[identifier] in groups.distro_Debian - server_private[identifier] not in groups.distro_Debian - server_public[identifier] not in groups.distro_Ubuntu - server_private[identifier] in groups.distro_Ubuntu # Test for flavor_image composed variable - hostvars[server_public[identifier]].flavor_image == 'flex-2_debian-9' - hostvars[server_private[identifier]].flavor_image == 'flex-2_ubuntu-18.04' - name: '{{ inventory }}: Verify cloudscale specific host variables' assert: that: - hostvars[item.0[identifier]].cloudscale[item.1] == item.0[item.1] with_nested: - [ '{{ server_public }}', '{{ server_private }}', '{{ server_public_private }}' ] - [ 'anti_affinity_with', 'flavor', 'href', 'image', 'interfaces', 'name', 'uuid', 'volumes' ] loop_control: label: '{{ item.0.name }} ({{ item.0.uuid }}): {{ item.1 }}'