54 lines
1.4 KiB
Bash
Executable File
54 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
quit_on_error() {
|
|
echo "Error on line $1, stopping build."
|
|
exit 1
|
|
}
|
|
|
|
list_dir() {
|
|
echo "listing directory $1 :"
|
|
ls -al $1
|
|
}
|
|
|
|
trap 'quit_on_error $LINENO' ERR
|
|
|
|
CATEGORY=$1
|
|
TRAVIS_BUILD_DIR=${2:-.}
|
|
|
|
if id travis &> /dev/null
|
|
then
|
|
TESTUSER=travis
|
|
else
|
|
TESTUSER=$(whoami)
|
|
fi
|
|
|
|
echo "Build script starting with parameters TRAVIS_BUILD_DIR=$TRAVIS_BUILD_DIR and CATEGORY=$CATEGORY"
|
|
|
|
# build duplicati
|
|
|
|
list_dir "${TRAVIS_BUILD_DIR}"/packages/
|
|
echo "travis_fold:start:build_duplicati"
|
|
msbuild /p:Configuration=Release Duplicati.sln
|
|
cp -r ./Duplicati/Server/webroot ./Duplicati/GUI/Duplicati.GUI.TrayIcon/bin/Release/webroot
|
|
echo "travis_fold:end:build_duplicati"
|
|
|
|
rm -rf ~/duplicati_testdata && mkdir ~/duplicati_testdata
|
|
chown -R $TESTUSER ~/duplicati_testdata/
|
|
chmod -R 755 ~/duplicati_testdata
|
|
|
|
# run unit tests
|
|
echo "travis_fold:start:unit_test"
|
|
if [[ "$CATEGORY" != "GUI" && "$CATEGORY" != "" ]]; then
|
|
mono ./testrunner/NUnit.ConsoleRunner.3.10.0/tools/nunit3-console.exe \
|
|
./Duplicati/UnitTest/bin/Release/Duplicati.UnitTest.dll --where:cat==$CATEGORY --workers=1
|
|
fi
|
|
echo "travis_fold:end:unit_test"
|
|
|
|
# start server and run gui tests
|
|
echo "travis_fold:start:gui_unit_test"
|
|
if [[ "$CATEGORY" == "GUI" ]]; then
|
|
mono ./Duplicati/GUI/Duplicati.GUI.TrayIcon/bin/Release/Duplicati.Server.exe &
|
|
python guiTests/guiTest.py
|
|
fi
|
|
echo "travis_fold:end:gui_unit_test"
|