diff --git a/tasks/nspawn_networking.yml b/tasks/nspawn_networking.yml index 0626df5..a0185d7 100644 --- a/tasks/nspawn_networking.yml +++ b/tasks/nspawn_networking.yml @@ -94,6 +94,7 @@ {%- else %} {%- set _ = start_commands.append('-/sbin/ip link add ' + mv_interface + ' link ' + value.bridge + ' type macvlan mode ' + value.macvlan_mode | default(nspawn_macvlan_mode)) %} {%- endif %} + {%- set _ = start_commands.append('-/sbin/ip link set dev ' + mv_interface + ' up') %} {%- set _ = seen_start_interfaces.append(value.bridge) %} {%- endif %} {%- endfor %} @@ -114,7 +115,7 @@ systemd_netdevs: |- {% set seen_netdevs = [] %} {% set _netdevs = [] %} - {% for _, value in nspawn_combined_networks.items() %} + {% for _, value in (nspawn_networks | combine(container_extra_networks | default({}))).items() %} {% set netname = value.interface | default('mv-' + value.bridge.split('br-')[-1]) %} {% set _netdev = {'NetDev': {'Name': netname, 'Kind': 'macvlan'}, 'MACVLAN': {'Mode': 'bridge'}} %} {% if netname not in seen_netdevs %} @@ -126,7 +127,9 @@ systemd_networks: |- {% set seen_networks = [] %} {% set _networks = [] %} - {% for _, value in nspawn_combined_networks.items() %} + {# All nspawn_networks and container_extra_networks will be iterated over. #} + {# If a device is found, a networkd config will be generated for it. #} + {% for _, value in (nspawn_networks | combine(container_extra_networks | default({}))).items() %} {% set netname = value.interface | default('mv-' + value.bridge.split('br-')[-1]) %} {% set _network = {'interface': netname} %} {% if netname not in seen_networks %} diff --git a/tests/test.yml b/tests/test.yml index c2e0bff..b951c79 100644 --- a/tests/test.yml +++ b/tests/test.yml @@ -56,17 +56,6 @@ set_fact: nspawn_container_ssh_key: "{{ _root_ssh_key['content'] | b64decode }}" - # This is a very dirty hack due to images.linuxcontainers.org - # constantly failing to resolve in openstack-infra. - - name: Implement hard-coded hosts entries for consistently failing name - lineinfile: - path: "/etc/hosts" - line: "{{ item }}" - state: present - with_items: - - "91.189.91.21 images.linuxcontainers.org us.images.linuxcontainers.org" - - "91.189.88.37 images.linuxcontainers.org uk.images.linuxcontainers.org" - roles: - role: "nspawn_hosts" nspawn_container_base_name: "test-container"