---
- hosts: all
  any_errors_fatal: true
  vars:
    logs_dir: "/tmp/logs"
  roles:
    - bindep
    - multi-node-firewall
    - role: multi-node-vxlan-overlay
      vars:
        vxlan_interface_name: "{{ api_interface_name }}"
        vxlan_vni: 10001
    - role: multi-node-managed-addressing
      vars:
        managed_interface_name: "{{ api_interface_name }}"
        managed_network_prefix: "{{ api_network_prefix }}"
        managed_network_prefix_length: "{{ api_network_prefix_length }}"
        managed_network_address_family: "{{ address_family }}"
  tasks:
    # TODO(mnasiadka): Remove once infra merges virtualenv fixes
    - name: Upgrade virtualenv package
      command: python3 -m pip install -U virtualenv
      become: True

    - name: Ensure /tmp/logs/ dir
      file:
        path: "{{ logs_dir }}"
        state: "directory"

    - name: Ensure node directories
      file:
        path: "{{ logs_dir }}/{{ item }}"
        state: "directory"
        mode: 0777
      with_items:
        - "docker_logs"
        - "kolla_configs"
        - "system_logs"
        - "kolla"
        - "ansible"

    - name: set new hostname based on ansible inventory file
      hostname:
        name: "{{ inventory_hostname }}"
      become: true

    # NOTE(yoctozepto): CentOS 7 image uses myhostname plugin for NSS
    # which creates issues with IPv6-only deployment by providing
    # an IPv4 address for the current hostname (affects rabbitmq)
    - name: Disable myhostname NSS plugin
      become: true
      replace:
        path: /etc/nsswitch.conf
        regexp: ' myhostname'
        replace: ''