summaryrefslogtreecommitdiff
path: root/common/scripts/ltpfixup.sh
blob: fe26774cf91ab4581745d0ee14986f3590ca4cba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/bin/sh

# Absolute path to this script. /home/user/bin/foo.sh
SCRIPT=$(readlink -f $0)
# Absolute path this script is in. /home/user/bin
SCRIPTPATH=`dirname $SCRIPT`
echo "Script path is: $SCRIPTPATH"
# List of test cases
TST_CMDFILES=""
# List of test cases to be skipped
SKIPFILE=""

LTP_PATH=/opt/ltp

while getopts T:S:P: arg
    do case $arg in
        T) TST_CMDFILES="$OPTARG";;
        S) OPT=`echo $OPTARG | grep "http"`
           if [ -z $OPT ] ; then
             SKIPFILE="-S $SCRIPTPATH/ltp/$OPTARG"
           else
             wget $OPTARG
             SKIPFILE=`echo "${OPTARG##*/}"`
             SKIPFILE="-S `pwd`/$SKIPFILE"
           fi
           ;;
        P) LTP_PATH=$OPTARG;;
    esac
done

cd $LTP_PATH
RESULT=pass

exec 4>&1
error_statuses="`((./runltp -p -q -f $TST_CMDFILES -l $SCRIPTPATH/LTP_$TST_CMDFILES.log -C $SCRIPTPATH/LTP_$TST_CMDFILES.failed $SKIPFILE ||  echo "0:$?" >&3) |
        (tee $SCRIPTPATH/LTP_$TST_CMDFILES.out ||  echo "1:$?" >&3)) 3>&1 >&4`"
exec 4>&-

! echo "$error_statuses" | grep '0:' >/dev/null
if [ $? -ne 0 ]; then
    RESULT=fail
fi
lava-test-case LTP_$TST_CMDFILES --result $RESULT
cat $SCRIPTPATH/LTP_*.log
tar czfv $SCRIPTPATH/LTP_$TST_CMDFILES.tar.gz $SCRIPTPATH/LTP*
lava-test-case-attach LTP_$TST_CMDFILES $SCRIPTPATH/LTP_$TST_CMDFILES.tar.gz
exit 0