diff options
Diffstat (limited to 'xci/playbooks/roles/bootstrap-host/templates/osa/debian.interface.j2')
-rw-r--r-- | xci/playbooks/roles/bootstrap-host/templates/osa/debian.interface.j2 | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/xci/playbooks/roles/bootstrap-host/templates/osa/debian.interface.j2 b/xci/playbooks/roles/bootstrap-host/templates/osa/debian.interface.j2 new file mode 100644 index 00000000..2f976002 --- /dev/null +++ b/xci/playbooks/roles/bootstrap-host/templates/osa/debian.interface.j2 @@ -0,0 +1,39 @@ +# {{ ansible_managed }} + +# Physical interface +{% if item.bridge_ports is not defined %} +auto {{ item.name }} +iface {{ item.name }} inet manual +{% if item.vlan_id is defined %} + vlan-raw-device {{ item.name|replace('.' ~ item.vlan_id, '') }} +{% endif %} + +{% else %} +auto {{ item.name }} +iface {{ item.name }} inet static + bridge_stp off + bridge_waitport 0 + bridge_fd 0 + bridge_ports {{ item.bridge_ports }} +{% if item.name == 'br-vlan' %} + # Create veth pair, don't bomb if already exists + pre-up ip link add br-vlan-veth type veth peer name eth12 || true + # Set both ends UP + pre-up ip link set br-vlan-veth up + pre-up ip link set eth12 up + # Delete veth pair on DOWN + post-down ip link del br-vlan-veth || true + bridge_ports br-vlan-veth +{% endif %} +{% if item.network is defined %} + address {{ item.network.address | ipaddr('address') }} + netmask {{ item.network.address | ipaddr('netmask') }} +{% endif %} +{% if item.network is defined and item.network.gateway is defined %} + gateway {{ item.network.gateway | ipaddr('address') }} +{% endif %} +{% if item.network is defined and item.network.dns is defined %} + dns-nameservers {{ item.network.dns | join(' ') }} +{% endif %} + +{% endif %} |