diff --git a/lib/common.sh b/lib/common.sh
index 5863fcf..f97a537 100644
--- a/lib/common.sh
+++ b/lib/common.sh
@@ -247,11 +247,11 @@ function fetch_package_to_test() {
# Force the branch master if no branch is specified.
if [ -z "$gitbranch" ]
then
- if git ls-remote --quiet --exit-code $path_to_package_to_test master
+ if git ls-remote --quiet --exit-code $path_to_package_to_test master >/dev/null
then
gitbranch="-b master"
else
- if git ls-remote --quiet --exit-code $path_to_package_to_test stable
+ if git ls-remote --quiet --exit-code $path_to_package_to_test stable >/dev/null
then
gitbranch="-b stable"
else
diff --git a/lib/lxc.sh b/lib/lxc.sh
index f3d23ef..76685e7 100644
--- a/lib/lxc.sh
+++ b/lib/lxc.sh
@@ -84,7 +84,8 @@ LOAD_LXC_SNAPSHOT () {
LXC_STOP $LXC_NAME
- lxc restore $LXC_NAME $snapname
+ lxc restore $LXC_NAME $snapname || log_error "Failed to restore snapshot ? The next step may miserably crash because of this ... if this happens to often, maybe restarting the LXD daemon can help ..."
+
lxc start $LXC_NAME
_LXC_START_AND_WAIT $LXC_NAME
}
@@ -100,7 +101,7 @@ LXC_EXEC () {
start_timer
# Execute the command given in argument in the container and log its results.
- lxc exec $LXC_NAME --env PACKAGE_CHECK_EXEC=1 -t -- /bin/bash -c "$cmd" | tee -a "$complete_log" $current_test_log
+ lxc exec $LXC_NAME --env PACKAGE_CHECK_EXEC=1 -t -- /bin/bash -c "$cmd" | tee -a "$full_log" $current_test_log
# Store the return code of the command
local returncode=${PIPESTATUS[0]}
@@ -135,7 +136,7 @@ LXC_RESET () {
LXC_STOP $LXC_NAME
if lxc info $LXC_NAME >/dev/null 2>/dev/null; then
- local current_storage=$(lxc list $LXC_NAME --format json --columns b | jq '.[].expanded_devices.root.pool')
+ local current_storage=$(lxc list $LXC_NAME --format json --columns b | jq -r '.[].expanded_devices.root.pool')
swapoff "$(lxc storage get $current_storage source)/containers/$LXC_NAME/rootfs/swap" 2>/dev/null
fi
@@ -145,7 +146,7 @@ LXC_RESET () {
_LXC_START_AND_WAIT() {
- restart_container()
+ restart_container()
{
LXC_STOP $1
lxc start "$1"
diff --git a/lib/tests.sh b/lib/tests.sh
index ecd16a9..5fe7a31 100644
--- a/lib/tests.sh
+++ b/lib/tests.sh
@@ -277,7 +277,7 @@ _VALIDATE_THAT_APP_CAN_BE_ACCESSED () {
then
# Print the title of the page
local page_title=$(grep "
" "$curl_output" | cut --delimiter='>' --fields=2 | cut --delimiter='<' --fields=1)
- local page_extract=$(lynx -dump -force_html "$curl_output" | head --lines 20 | tee -a "$complete_log")
+ local page_extract=$(lynx -dump -force_html "$curl_output" | head --lines 20 | tee -a "$full_log")
# Check if the page title is neither the YunoHost portail or default NGINX page
if [ "$page_title" = "YunoHost Portal" ]
@@ -355,8 +355,8 @@ TEST_PACKAGE_LINTER () {
start_test "Package linter"
# Execute package linter and linter_result gets the return code of the package linter
- ./package_linter/package_linter.py "$package_path" | tee -a "$complete_log"
- ./package_linter/package_linter.py "$package_path" --json | tee -a "$complete_log" > $current_test_results
+ ./package_linter/package_linter.py "$package_path" | tee -a "$full_log"
+ ./package_linter/package_linter.py "$package_path" --json | tee -a "$full_log" > $current_test_results
return ${PIPESTATUS[0]}
}
diff --git a/lib/tests_coordination.sh b/lib/tests_coordination.sh
index 7fefd3a..01c82e2 100644
--- a/lib/tests_coordination.sh
+++ b/lib/tests_coordination.sh
@@ -5,13 +5,17 @@ source lib/tests.sh
source lib/witness.sh
source lib/legacy.sh
-readonly complete_log="./Complete-${WORKER_ID}.log"
+readonly full_log="./full_log_${WORKER_ID}.log"
+readonly result_json="./results_${WORKER_ID}.json"
+readonly summary_png="./summary_${WORKER_ID}.png"
# Purge some log files
-rm -f "$complete_log" && touch "$complete_log"
+rm -f "$full_log" && touch "$full_log"
+rm -f $result_json
+rm -f $summary_png
-# Redirect fd 3 (=debug steam) to complete log
-exec 3>>$complete_log
+# Redirect fd 3 (=debug steam) to full log
+exec 3>>$full_log
#=================================================
# Misc test helpers & coordination
@@ -84,15 +88,18 @@ run_all_tests() {
# Print the final results of the tests
log_title "Tests summary"
- python3 lib/analyze_test_results.py $TEST_CONTEXT 2> ./results-${WORKER_ID}.json
- [[ -e "$TEST_CONTEXT/summary.png" ]] && cp "$TEST_CONTEXT/summary.png" ./summary.png || rm -f summary.png
+ python3 lib/analyze_test_results.py $TEST_CONTEXT 2> $result_json
+ [[ -e "$TEST_CONTEXT/summary.png" ]] && cp "$TEST_CONTEXT/summary.png" $summary_png || rm -f $summary_png
# Restore the started time for the timer
starttime=$complete_start_timer
# End the timer for the test
stop_timer all_tests
- echo "You can find the complete log of these tests in $(realpath $complete_log)"
+ if [[ "$IN_YUNORUNNER" != "1" ]]
+ then
+ echo "You can find the complete log of these tests in $(realpath $full_log)"
+ fi
}