]> git.proxmox.com Git - mirror_ovs.git/blame - rhel/etc_sysconfig_network-scripts_ifup-ovs
rhel: Add Red Hat network scripts integration.
[mirror_ovs.git] / rhel / etc_sysconfig_network-scripts_ifup-ovs
CommitLineData
0fb42626
AF
1#!/bin/bash
2
3# Copyright (c) 2011 Alexey I. Froloff.
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at:
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16
17. /etc/init.d/functions
18
19cd /etc/sysconfig/network-scripts
20. ./network-functions
21
22[ -f ../network ] && . ../network
23
24CONFIG=${1}
25
26need_config ${CONFIG}
27
28source_config
29
30OTHERSCRIPT="/etc/sysconfig/network-scripts/ifup-${REAL_DEVICETYPE}"
31
32if [ ! -x ${OTHERSCRIPT} ]; then
33 OTHERSCRIPT="/etc/sysconfig/network-scripts/ifup-eth"
34fi
35
36case "$TYPE" in
37 OVSBridge)
38 ovs-vsctl -- --may-exist add-br "$DEVICE" $OVS_OPTIONS ${OVS_EXTRA+-- $OVS_EXTRA}
39 ${OTHERSCRIPT} ${CONFIG} ${2}
40 ;;
41 OVSPort)
42 /sbin/ifup "$OVS_BRIDGE"
43 ${OTHERSCRIPT} ${CONFIG} ${2}
44 ovs-vsctl -- --may-exist add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS ${OVS_EXTRA+-- $OVS_EXTRA}
45 ;;
46 OVSIntPort)
47 /sbin/ifup "$OVS_BRIDGE"
48 ovs-vsctl -- --may-exist add-port "$OVS_BRIDGE" "$DEVICE" $OVS_OPTIONS -- set Interface "$DEVICE" type=internal ${OVS_EXTRA+-- $OVS_EXTRA}
49 ${OTHERSCRIPT} ${CONFIG} ${2}
50 ;;
51 OVSBond)
52 /sbin/ifup "$OVS_BRIDGE"
53 for _iface in $BOND_IFACES; do
54 /sbin/ifup ${_iface}
55 done
56 ovs-vsctl -- --fake-iface add-bond "$OVS_BRIDGE" "$DEVICE" ${BOND_IFACES} $OVS_OPTIONS ${OVS_EXTRA+-- $OVS_EXTRA}
57 ${OTHERSCRIPT} ${CONFIG} ${2}
58 ;;
59 *)
60 echo $"Invalid OVS interface type $TYPE"
61 exit 1
62 ;;
63esac