From 73c90a7447b383af85bb1893976f766455894b46 Mon Sep 17 00:00:00 2001 From: Bill Peck Date: Tue, 22 Jan 2013 14:29:43 -0500 Subject: Update to support multiple bridges and fix find_next_slot --- .../openvswitch/libvirt/add_interface/runtest.sh | 40 +++++++++------------- 1 file changed, 17 insertions(+), 23 deletions(-) (limited to 'kernel/networking/openvswitch') diff --git a/kernel/networking/openvswitch/libvirt/add_interface/runtest.sh b/kernel/networking/openvswitch/libvirt/add_interface/runtest.sh index b9a14d3..c724acf 100755 --- a/kernel/networking/openvswitch/libvirt/add_interface/runtest.sh +++ b/kernel/networking/openvswitch/libvirt/add_interface/runtest.sh @@ -35,42 +35,36 @@ rpm -q $PACKAGE || fail "$PACKAGE not installed" find_free_slot() { - # FIXME: We should parse the guest xml and find the next available slot - echo '0x06' + local guest=$1 + slot=$(cat $guest | awk '/
/ a \\n\\n\\n\\n\
\n\<\/interface>" $guest - virsh define --file $guest + local slot=$(find_free_slot $guest) + sed -ie "/<\/interface>/ a \\n\\n\\n\\n\
\n\<\/interface>" $guest return $? } -add_vlan() +add_tag() { local guest=$1 local switch=$2 - local vlan=$(echo $3| sed -e 's/vlan//') - sed -ie "// a \\n\n<\/vlan>" $guest - virsh define --file $guest + local tag=$3 + sed -ie "// a \\n\n<\/vlan>" $guest return $? } -set | grep -i vlan - -for switch in $SWITCHES; do - if [ -n "VLANS_$switch" ]; then - for vlan in $(eval echo \$VLANS_$switch); do - for guest in $(eval echo \$$vlan); do - add_interface /etc/libvirt/qemu/${guest}.xml $switch && report_result $TEST/$guest/$switch PASS 0 || report_result $TEST/$guest/$switch FAIL 1 - add_vlan /etc/libvirt/qemu/${guest}.xml $switch $vlan && report_result $TEST/$guest/$vlan PASS 0 || report_result $TEST/$guest/$vlan FAIL 1 - done - done - fi - for guest in $(eval echo \$$switch); do - add_interface /etc/libvirt/qemu/${guest}.xml $switch && report_result $TEST/$guest/$switch PASS 0 || report_result $TEST/$guest/$switch FAIL 1 - done +for guest in $GUESTS; do + for config in $(eval echo \$$guest); do + switch=$(echo $config| sed -e 's/.*switch=\([^\;]*\).*/\1/') + tag=$(echo $config| sed -e 's/.*tag=\([^\;]*\).*/\1/') + add_interface /etc/libvirt/qemu/${guest}.xml $switch + if [ -n "$tag" ];then + add_tag /etc/libvirt/qemu/${guest}.xml $switch $tag + fi + virsh define --file /etc/libvirt/qemu/${guest}.xml && report_result $TEST/$guest/$config PASS 0 || report_result $TEST/$guest/$config FAIL 1 done -- cgit