playbooks/pre.yaml
36ddea31
 - hosts: all
5e714d33
   pre_tasks:
     - name: Gather minimum local MTU
       set_fact:
         local_mtu: >
           {% set mtus = [] -%}
           {% for interface in ansible_interfaces -%}
             {% set interface_variable = 'ansible_' + interface -%}
             {% if interface_variable in hostvars[inventory_hostname] -%}
               {% set _ = mtus.append(hostvars[inventory_hostname][interface_variable]['mtu']|int) -%}
             {% endif -%}
           {% endfor -%}
           {{- mtus|min -}}
     - name: Calculate external_bridge_mtu
       # 50 bytes is overhead for vxlan (which is greater than GRE
       # allowing us to use either overlay option with this MTU.
       # TODO(andreaf) This should work, but it may have to be reconcilied with
       # the MTU setting used by the multinode setup roles in multinode pre.yaml
       set_fact:
         external_bridge_mtu: "{{ local_mtu | int - 50 }}"
36ddea31
   roles:
5e714d33
     - test-matrix
36ddea31
     - configure-swap
     - setup-stack-user
     - setup-tempest-user
     - setup-devstack-source-dirs
     - setup-devstack-log-dir
     - setup-devstack-cache
     - start-fresh-logging
     - write-devstack-local-conf