diff options
Diffstat (limited to 'mcp/patches/0007-network.interface-Fix-ifup-OVS-port-with-route.patch')
-rw-r--r-- | mcp/patches/0007-network.interface-Fix-ifup-OVS-port-with-route.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/mcp/patches/0007-network.interface-Fix-ifup-OVS-port-with-route.patch b/mcp/patches/0007-network.interface-Fix-ifup-OVS-port-with-route.patch new file mode 100644 index 000000000..c36631aea --- /dev/null +++ b/mcp/patches/0007-network.interface-Fix-ifup-OVS-port-with-route.patch @@ -0,0 +1,32 @@ +From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +Date: Sun, 31 Dec 2017 16:06:30 +0100 +Subject: [PATCH] network.interface: Fix ifup OVS port with route + +This change attempts to fix the following sequence for nodes with +OVS ports that also have routes defined: +- state.sls linux.network; system.reboot; state.sls linux.network; + +If an OVS port also has a route defined, a route cfg file is +created in </etc/network/if.{down,up}.d/>, which is sourced after +system reboot before we (eventually) re-run `interface.sls`, leaving +the OVS port in UP state, so `ifup` would fail. + +Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +--- + linux/network/interface.sls | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/linux/network/interface.sls b/linux/network/interface.sls +--- a/linux/network/interface.sls ++++ b/linux/network/interface.sls +@@ -146,6 +146,10 @@ ovs_port_up_{{ interface_name }}: + - file: ovs_port_{{ interface_name }}_line2 + - openvswitch_bridge: ovs_bridge_{{ interface.bridge }} + - file: linux_interfaces_final_include ++ {%- if interface.route is defined %} ++ - unless: ++ - ip link show {{ interface_name }} | grep -q '\<UP\>' ++ {% endif %} + + {%- endif %} + |