X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=build%2Ftest_ovs_rpm.sh;h=264cd6ee1a003c22abf87f0ce7c8d3be6eae3576;hb=5181fb94a7485af207c1232753eeb74fb8975b1a;hp=fce5ca43646ca002bde11553fcfe9802cb5e0b5a;hpb=4c54b37aca48867c694539692a3ada76be39f4d6;p=ovsnfv.git diff --git a/build/test_ovs_rpm.sh b/build/test_ovs_rpm.sh index fce5ca4..264cd6e 100755 --- a/build/test_ovs_rpm.sh +++ b/build/test_ovs_rpm.sh @@ -1,14 +1,20 @@ #!/bin/bash -############################################################################## -# Copyright (c) 2016 Red Hat Inc. and others. -# therbert@redhat.com -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## + +# Copyright (c) 2016 Open Platform for NFV Project, Inc. and its contributors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + set -e -declare -i CNT echo "===============================" echo executing $0 $@ @@ -19,6 +25,22 @@ usage() { echo run BuildAndTest -h for help } +function delrpm() { + set +e + rpm -q $1 + if [ $? -eq 0 ]; then + sudo rpm -e --allmatches $1 + fi + set -e +} +function cleanrpms() { + delrpm openvswitch + delrpm dpdk-devel + delrpm dpdk-tools + delrpm dpdk-examples + delrpm dpdk +} + while getopts "dg:hkp:u:v" opt; do case "$opt" in d) @@ -56,26 +78,58 @@ mkdir -p $TMPDIR cd $TMPDIR -mkdir -p $HOME/rpmbuild/RPMS +mkdir -p $HOME/rpmbuild/RPMS/x86_64 mkdir -p $HOME/rpmbuild/SOURCES mkdir -p $HOME/rpmbuild/SPECS mkdir -p $HOME/rpmbuild/SRPMS RPMDIR=$HOME/rpmbuild +cp $HOME/*.rpm $RPMDIR/RPMS/x86_64 + +function stopovs() { + set +e + /bin/systemctl is-active openvswitch.service + if [ $? -eq 0 ]; then + sudo /bin/systemctl stop openvswitch.service + fi + set -e +} + +echo "-----------------------------------" +echo "Clean old dpdk and ovs installations" +echo +stopovs +cleanrpms + +if [ ! -z $DPDK ]; then + echo "-----------------------------------" + echo "Install DPDK RPMs" + echo + sudo rpm -ivh $RPMDIR/RPMS/x86_64/dpdk-2*.rpm + sudo rpm -ivh $RPMDIR/RPMS/x86_64/dpdk-tools-2*.rpm + sudo rpm -ivh $RPMDIR/RPMS/x86_64/dpdk-examples-2*.rpm +fi -echo " Testing installation of kmod RPM" if [ ! -z $kmod ]; then - echo "Install kernel module" + echo "-----------------------------------" + echo "Test installation of kmod RPM" + echo sudo rpm -ivh $RPMDIR/RPMS/x86_64/openvswitch-kmod*.rpm - echo " Kernel RPM installed." fi -echo "Testing User Space RPM" +echo "-----------------------------------" +echo "Test installation of user space RPM" +echo sudo rpm -ivh $RPMDIR/RPMS/x86_64/openvswitch-2*.rpm +echo "-----------------------------------" +echo "Start openvswitch service." +echo sudo service openvswitch start sudo ovs-vsctl show -sudo ovs-vsctl add-br br1 -sudo ovs-ofctl dump-flows br1 +sudo ovs-vsctl add-br brtest +sudo ovs-ofctl dump-flows brtest +sudo ovs-vsctl del-br brtest +sudo service openvswitch stop exit 0