Currently, there is an option to use the /etc/network/interfaces
file to configure Open vSwitch bridges and ports. To create and
destroy bridges, one has to manually run the following commands.

ifup --allow=ovs $list_of_bridges
ifdown --allow=ovs $list_of_bridges

This commit will automatically run the above two commands when
the system boots up and shuts down respectively through the
OVS startup script.

Signed-off-by: Gurucharan Shetty <gshe...@nicira.com>
---
 debian/openvswitch-switch.init |    9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/debian/openvswitch-switch.init b/debian/openvswitch-switch.init
index 301bc73..ddd3032 100755
--- a/debian/openvswitch-switch.init
+++ b/debian/openvswitch-switch.init
@@ -35,6 +35,13 @@ if test X"$BRCOMPAT" = Xyes && test ! -x 
/usr/sbin/ovs-brcompatd; then
     log_warning_msg "ovs-brcompatd missing, disabling bridge compatibility"
 fi
 
+network_interfaces () {
+    INTERFACES="/etc/network/interfaces"
+    [ -e "${INTERFACES}" ] || return
+    bridges=`awk '{ if ($1 == "allow-ovs") { print $2; } }' "${INTERFACES}"`
+    [ -n "${bridges}" ] && $1 --allow=ovs ${bridges}
+}
+
 ovs_ctl () {
     set /usr/share/openvswitch/scripts/ovs-ctl "$@"
     if test X"$BRCOMPAT" = Xyes; then
@@ -72,9 +79,11 @@ start () {
     fi
     set "$@" $OVS_CTL_OPTS
     "$@" || exit $?
+    [ "$2" = "start" ] && network_interfaces ifup
 }
 
 stop () {
+    network_interfaces ifdown
     ovs_ctl stop
 }
 
-- 
1.7.9.5

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to