--- - name: Check ansible version import_playbook: ansible_version.yml # These are inventory compatibility tasks with two purposes: # - to ensure we keep compatibility with old style group names # - to reduce inventory boilerplate (defining parent groups / empty groups) - name: Define groups for legacy less structured inventories hosts: all gather_facts: false tags: always tasks: - name: Match needed groups by their old names or definition vars: group_mappings: kube_control_plane: - kube-master kube_node: - kube-node calico_rr: - calico-rr no_floating: - no-floating k8s_cluster: - kube_node - kube_control_plane - calico_rr group_by: key: "{{ (group_names | intersect(item.value) | length > 0) | ternary(item.key, '_all') }}" loop: "{{ group_mappings | dict2items }}" - name: Install bastion ssh config hosts: bastion[0] gather_facts: false environment: "{{ proxy_disable_env }}" roles: - { role: kubespray-defaults } - { role: bastion-ssh-config, tags: ["localhost", "bastion"] }