test_play.sh 2.38 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
EPM=$(realpath $(dirname $0)/../bin/epm)

15 16 17
ipfs=''
kubo=''

18 19
if [ "$1" == "--ipfs" ] ; then
    ipfs="--ipfs"
20
    kubo="kubo"
21 22 23
    shift
fi

24

25 26
if [ "$1" == "--hasher" ] ; then
    shift
27 28 29 30 31 32 33 34 35 36
    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
37
            $0 $ipfs --hasher $B $app </dev/null || fatal
38 39 40 41
        done
        exit
    fi

42 43
    loginhsh -Y -i -t -p epm $B -r true curl iputils eepm-repack apt-repo $kubo
    loginhsh -Y -t -p epm $B -o
44

45
    HDIR=$(loginhsh -q -t -d -p epm $B)
46
    cp -afv ../* $HDIR/chroot/.in
47 48 49
    # install
    loginhsh -Y -t -p epm $B -o -r "bash -x /.in/tests/test_play.sh $ipfs --local $APP" || exit
    # login under root
Vitaly Lipatov's avatar
Vitaly Lipatov committed
50
    loginhsh -t -p epm $B -o
51 52 53
    # login under user
    loginhsh -Y -t -s -p epm $B
    # clean
54 55 56 57 58 59 60 61 62
    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

63 64
[ -n "$ipfs" ] && export EGET_IPFS_API=/ip4/91.232.225.49/tcp/5001

65 66 67 68 69 70 71 72
shift
SILENT=''
if [ "$1" == "--silent" ] ; then
    SILENT="$1"
    shift
fi
APP="$1"

Vitaly Lipatov's avatar
Vitaly Lipatov committed
73 74
echo "Check Internet connection ..."
cat /etc/resolv.conf
75 76 77
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
78

79 80
$EPM --version
$EPM print info
Vitaly Lipatov's avatar
Vitaly Lipatov committed
81

82
if [ -n "$SILENT" ] ; then
83
    $EPM play $ipfs --list-all --short | while read app ; do
Vitaly Lipatov's avatar
Vitaly Lipatov committed
84
        echo -n "Silent installing $app ... "
85
        $EPM --auto play $ipfs $app </dev/null >/dev/null 2>/dev/null && echo -n "DONE" || { echo "ERROR" ; continue ; }
Vitaly Lipatov's avatar
Vitaly Lipatov committed
86
        echo -n "  Removing $app ... "
87
        $EPM --auto play $ipfs --remove $app </dev/null >/dev/null 2>/dev/null && echo -n "DONE" || { echo "ERROR" ; continue ; }
Vitaly Lipatov's avatar
Vitaly Lipatov committed
88 89
    done
    exit
90 91
fi

92 93
if [ -n "$APP" ] ; then
    app="$APP"
94 95
    echo
    echo "Installing $app ... "
96
    $EPM --auto play --verbose $ipfs $app </dev/null || exit
Vitaly Lipatov's avatar
Vitaly Lipatov committed
97 98 99
    #bash
    #echo "  Removing $app ... "
    #$EPM --auto play $ipfs --remove $app </dev/null
100 101 102 103 104 105
    exit
fi

$EPM play --list-all --short | while read app ; do
    echo
    echo "Installing $app ... "
106 107
    $EPM --auto play --verbose $ipfs $app </dev/null || exit
    bash
108
    echo "  Removing $app ... "
109
    $EPM --auto play $ipfs --remove $app </dev/null
110
done
111

112
exit