From d7aab66192b34473a8b12f31113ce7cf8b61b9a9 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jason=20K=C3=B6lker?= Date: Mon, 31 Mar 2014 23:34:14 +0000 Subject: [PATCH] rhel: Add Patch Port support to initscripts MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Allows setting up type=patch ports through sysconfig ifcfg-* files. Signed-off-by: Jason Kölker Signed-off-by: Gurucharan Shetty Acked-by: Flavio Leitner --- AUTHORS | 1 + rhel/README.RHEL | 25 +++++++++++++++++++ rhel/etc_sysconfig_network-scripts_ifdown-ovs | 3 +++ rhel/etc_sysconfig_network-scripts_ifup-ovs | 4 +++ 4 files changed, 33 insertions(+) diff --git a/AUTHORS b/AUTHORS index 733e8ad89..7c84c2bd4 100644 --- a/AUTHORS +++ b/AUTHORS @@ -59,6 +59,7 @@ Isaku Yamahata yamahata@valinux.co.jp James P. roampune@gmail.com James Page james.page@ubuntu.com Jarno Rajahalme jrajahalme@nicira.com +Jason Kölker jason@koelker.net Jean Tourrilhes jt@hpl.hp.com Jeremy Stribling strib@nicira.com Jesse Gross jesse@nicira.com diff --git a/rhel/README.RHEL b/rhel/README.RHEL index cb6ab88d5..262067425 100644 --- a/rhel/README.RHEL +++ b/rhel/README.RHEL @@ -25,6 +25,8 @@ assignments. The following OVS-specific variable names are supported: * "OVSTunnel", if is an OVS tunnel. + * "OVSPatchPort", if is a patch port + - OVS_BRIDGE: If TYPE is anything other than "OVSBridge", set to the name of the OVS bridge to which the port should be attached. @@ -47,6 +49,9 @@ assignments. The following OVS-specific variable names are supported: - OVS_TUNNEL_OPTIONS: For "OVSTunnel" interfaces, this field should be used to specify the tunnel options like remote_ip, key, etc. + - OVS_PATCH_PEER: For "OVSPatchPort" devices, this field specifies + the patch's peer on the other bridge. + Note ---- @@ -182,6 +187,26 @@ OVS_BRIDGE=ovsbridge0 OVS_TUNNEL_TYPE=gre OVS_TUNNEL_OPTIONS="options:remote_ip=A.B.C.D" + +Patch Ports: + +==> ifcfg-patch-ovs-0 <== +DEVICE=patch-ovs-0 +ONBOOT=yes +DEVICETYPE=ovs +TYPE=OVSPatchPort +OVS_BRIDGE=ovsbridge0 +OVS_PATCH_PEER=patch-ovs-1 + +==> ifcfg-patch-ovs-1 <== +DEVICE=patch-ovs-1 +ONBOOT=yes +DEVICETYPE=ovs +TYPE=OVSPatchPort +OVS_BRIDGE=ovsbridge1 +OVS_PATCH_PEER=patch-ovs-0 + + Reporting Bugs -------------- diff --git a/rhel/etc_sysconfig_network-scripts_ifdown-ovs b/rhel/etc_sysconfig_network-scripts_ifdown-ovs index daa578659..6e96d62a2 100755 --- a/rhel/etc_sysconfig_network-scripts_ifdown-ovs +++ b/rhel/etc_sysconfig_network-scripts_ifdown-ovs @@ -56,6 +56,9 @@ case "$TYPE" in retval=$? ovs-vsctl -t ${TIMEOUT} -- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" ;; + OVSPatchPort) + ovs-vsctl -t ${TIMEOUT} -- --if-exists del-port "$OVS_BRIDGE" "$DEVICE" + ;; *) echo $"Invalid OVS interface type $TYPE" exit 1 diff --git a/rhel/etc_sysconfig_network-scripts_ifup-ovs b/rhel/etc_sysconfig_network-scripts_ifup-ovs index 0ee7b219d..3ad86ff1c 100755 --- a/rhel/etc_sysconfig_network-scripts_ifup-ovs +++ b/rhel/etc_sysconfig_network-scripts_ifup-ovs @@ -136,6 +136,10 @@ case "$TYPE" in ovs-vsctl -t ${TIMEOUT} -- --may-exist add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS -- set Interface "$DEVICE" type=$OVS_TUNNEL_TYPE $OVS_TUNNEL_OPTIONS ${OVS_EXTRA+-- $OVS_EXTRA} ${OTHERSCRIPT} ${CONFIG} ${2} ;; + OVSPatchPort) + ifup_ovs_bridge + ovs-vsctl -t ${TIMEOUT} -- --may-exist add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS -- set Interface "$DEVICE" type=patch options:peer="${OVS_PATCH_PEER}" ${OVS_EXTRA+-- $OVS_EXTRA} + ;; *) echo $"Invalid OVS interface type $TYPE" exit 1 -- 2.20.1