From e2bcc8ef49f5e51f48983b87ab1010f0f9ab1454 Mon Sep 17 00:00:00 2001 From: =?UTF-8?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=UTF-8 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 977753b..c5402cf 100644 --- a/AUTHORS +++ b/AUTHORS @@ -57,6 +57,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 cb6ab88..2620674 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 8e768c8..1371a30 100755 --- a/rhel/etc_sysconfig_network-scripts_ifdown-ovs +++ b/rhel/etc_sysconfig_network-scripts_ifdown-ovs @@ -47,6 +47,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 a50c72f..f5641d2 100755 --- a/rhel/etc_sysconfig_network-scripts_ifup-ovs +++ b/rhel/etc_sysconfig_network-scripts_ifup-ovs @@ -127,6 +127,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 -- 1.8.5.3