test_play.sh 2 KB
Newer Older
1 2
#!/bin/bash

3 4
# TODO: use epm from the sources

5 6 7 8 9 10 11 12
fatal()
{
    exit 1
}

#set -e -x
#set -o pipefail

13 14 15
EPM=$(realpath $(dirname $0)/../bin/epm)


16 17
if [ "$1" == "--hasher" ] ; then
    shift
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
    B=''
    if [ "$1" = "-b" ] ; then
        shift
        B="-b $1"
        shift
    fi
    APP="$1"

    if [ "$APP" == "all" ] ; then
        $EPM play --list-all --short | while read app ; do
            $0 --hasher $B $app </dev/null || fatal
        done
        exit
    fi

    loginhsh -i -t -p epm $B -r true curl iputils eepm-repack apt-repo
Vitaly Lipatov's avatar
Vitaly Lipatov committed
34
    loginhsh -t -p epm $B -o
35

36
    HDIR=$(loginhsh -q -t -d -p epm $B)
37 38
    cp -afv ../* $HDIR/chroot/.in
    loginhsh -t -p epm $B -o -r "bash -x /.in/tests/test_play.sh --local $APP" || exit
39 40 41 42 43 44 45 46 47
    loginhsh -c -t -p epm $B
    exit
fi

if [ "$1" != "--local" ] ; then
    echo "Run with --hasher or --local to test all apps install"
    exit
fi

48 49 50 51 52 53 54 55
shift
SILENT=''
if [ "$1" == "--silent" ] ; then
    SILENT="$1"
    shift
fi
APP="$1"

Vitaly Lipatov's avatar
Vitaly Lipatov committed
56 57
echo "Check Internet connection ..."
cat /etc/resolv.conf
58 59 60
ping -c 1 ya.ru
ping -c 1 8.8.8.8
epm repo set sisyphus && epm repo change etersoft && epm update
Vitaly Lipatov's avatar
Vitaly Lipatov committed
61

62 63
$EPM --version
$EPM print info
Vitaly Lipatov's avatar
Vitaly Lipatov committed
64

65 66
if [ -n "$SILENT" ] ; then
    $EPM play --list-all --short | while read app ; do
Vitaly Lipatov's avatar
Vitaly Lipatov committed
67
        echo -n "Silent installing $app ... "
68
        $EPM --auto play $app </dev/null >/dev/null 2>/dev/null && echo -n "DONE" || { echo "ERROR" ; continue ; }
Vitaly Lipatov's avatar
Vitaly Lipatov committed
69
        echo -n "  Removing $app ... "
70
        $EPM --auto play --remove $app </dev/null >/dev/null 2>/dev/null && echo -n "DONE" || { echo "ERROR" ; continue ; }
Vitaly Lipatov's avatar
Vitaly Lipatov committed
71 72
    done
    exit
73 74
fi

75 76
if [ -n "$APP" ] ; then
    app="$APP"
77 78
    echo
    echo "Installing $app ... "
79
    $EPM --auto play --verbose $app </dev/null || exit
80
    echo "  Removing $app ... "
81 82 83 84 85 86 87 88 89 90
    $EPM --auto play --remove $app </dev/null
    exit
fi

$EPM play --list-all --short | while read app ; do
    echo
    echo "Installing $app ... "
    $EPM --auto play --verbose $app </dev/null || exit
    echo "  Removing $app ... "
    $EPM --auto play --remove $app </dev/null
91
done
92

93
exit