 29926112a2
			
		
	
	
		29926112a2
		
	
	
	
	
		
			
			`hostname -s` may output an errror: hostname: Name or service not known This causes all tests to fail for `make check-block`. Suppress such error messages, letting the tests succeed. Signed-off-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
		
			
				
	
	
		
			146 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			146 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/bash
 | |
| #
 | |
| # Copyright (C) 2009 Red Hat, Inc.
 | |
| # Copyright (c) 2000-2003,2006 Silicon Graphics, Inc.  All Rights Reserved.
 | |
| #
 | |
| # This program is free software; you can redistribute it and/or
 | |
| # modify it under the terms of the GNU General Public License as
 | |
| # published by the Free Software Foundation.
 | |
| #
 | |
| # This program is distributed in the hope that it would be useful,
 | |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| # GNU General Public License for more details.
 | |
| #
 | |
| # You should have received a copy of the GNU General Public License
 | |
| # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | |
| #
 | |
| #
 | |
| # setup and check for config parameters, and in particular
 | |
| #
 | |
| # EMAIL -           email of the script runner.
 | |
| # TEST_DIR -        scratch test directory 
 | |
| #
 | |
| # - These can be added to $HOST_CONFIG_DIR (witch default to ./config)
 | |
| #   below or a separate local configuration file can be used (using
 | |
| #   the HOST_OPTIONS variable).
 | |
| # - This script is shared by the stress test system and the auto-qa
 | |
| #   system (includes both regression test and benchmark components).
 | |
| # - this script shouldn't make any assertions about filesystem
 | |
| #   validity or mountedness.
 | |
| #
 | |
| 
 | |
| # all tests should use a common language setting to prevent golden
 | |
| # output mismatches.
 | |
| export LANG=C
 | |
| 
 | |
| PATH=".:$PATH"
 | |
| 
 | |
| HOST=`hostname -s 2> /dev/null`
 | |
| HOSTOS=`uname -s`
 | |
| 
 | |
| EMAIL=root@localhost    # where auto-qa will send its status messages
 | |
| export HOST_OPTIONS=${HOST_OPTIONS:=local.config}
 | |
| export CHECK_OPTIONS=${CHECK_OPTIONS:="-g auto"}
 | |
| export PWD=`pwd`
 | |
| 
 | |
| # $1 = prog to look for, $2* = default pathnames if not found in $PATH
 | |
| set_prog_path()
 | |
| {
 | |
|     p=`which $1 2> /dev/null`
 | |
|     if [ -n "$p" -a -x "$p" ]; then
 | |
|         echo $p
 | |
|         return 0
 | |
|     fi
 | |
|     p=$1
 | |
| 
 | |
|     shift
 | |
|     for f; do
 | |
|         if [ -x $f ]; then
 | |
|             echo $f
 | |
|             return 0
 | |
|         fi
 | |
|     done
 | |
| 
 | |
|     echo ""
 | |
|     return 1
 | |
| }
 | |
| 
 | |
| _fatal()
 | |
| {
 | |
|     echo "$*"
 | |
|     status=1
 | |
|     exit 1
 | |
| }
 | |
| 
 | |
| export PERL_PROG="`set_prog_path perl`"
 | |
| [ "$PERL_PROG" = "" ] && _fatal "perl not found"
 | |
| 
 | |
| export AWK_PROG="`set_prog_path awk`"
 | |
| [ "$AWK_PROG" = "" ] && _fatal "awk not found"
 | |
| 
 | |
| export SED_PROG="`set_prog_path sed`"
 | |
| [ "$SED_PROG" = "" ] && _fatal "sed not found"
 | |
| 
 | |
| export BC_PROG="`set_prog_path bc`"
 | |
| [ "$BC_PROG" = "" ] && _fatal "bc not found"
 | |
| 
 | |
| export PS_ALL_FLAGS="-ef"
 | |
| 
 | |
| if [ -z "$QEMU_PROG" ]; then
 | |
|     export QEMU_PROG="`set_prog_path qemu`"
 | |
| fi
 | |
| [ "$QEMU_PROG" = "" ] && _fatal "qemu not found"
 | |
| 
 | |
| if [ -z "$QEMU_IMG_PROG" ]; then
 | |
|     export QEMU_IMG_PROG="`set_prog_path qemu-img`"
 | |
| fi
 | |
| [ "$QEMU_IMG_PROG" = "" ] && _fatal "qemu-img not found"
 | |
| 
 | |
| if [ -z "$QEMU_IO_PROG" ]; then
 | |
|     export QEMU_IO_PROG="`set_prog_path qemu-io`"
 | |
| fi
 | |
| [ "$QEMU_IO_PROG" = "" ] && _fatal "qemu-io not found"
 | |
| 
 | |
| export QEMU=$QEMU_PROG
 | |
| export QEMU_IMG=$QEMU_IMG_PROG 
 | |
| export QEMU_IO="$QEMU_IO_PROG $QEMU_IO_OPTIONS"
 | |
| 
 | |
| [ -f /etc/qemu-iotest.config ]       && . /etc/qemu-iotest.config
 | |
| 
 | |
| if [ -z "$TEST_DIR" ]; then
 | |
| 	TEST_DIR=`pwd`/scratch
 | |
| fi
 | |
| 
 | |
| if [ ! -e "$TEST_DIR" ]; then
 | |
| 	mkdir "$TEST_DIR"
 | |
| fi
 | |
| 
 | |
| if [ ! -d "$TEST_DIR" ]; then
 | |
|     echo "common.config: Error: \$TEST_DIR ($TEST_DIR) is not a directory"
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| export TEST_DIR
 | |
| 
 | |
| _readlink()
 | |
| {
 | |
|     if [ $# -ne 1 ]; then
 | |
|         echo "Usage: _readlink filename" 1>&2
 | |
|         exit 1
 | |
|     fi
 | |
| 
 | |
|     perl -e "\$in=\"$1\";" -e '
 | |
|     $lnk = readlink($in);
 | |
|     if ($lnk =~ m!^/.*!) {
 | |
|         print "$lnk\n";
 | |
|     }
 | |
|     else {
 | |
|         chomp($dir = `dirname $in`);
 | |
|         print "$dir/$lnk\n";
 | |
|     }'
 | |
| }
 | |
| 
 | |
| # make sure this script returns success
 | |
| /bin/true
 |