task docker tests: add is_plugin_loaded test
Add is_plugin_loaded test which fails the docker tests when task plugin
does not load. This test prevents unnecessary execution of plugin tests.
Change-Id: Idfc5b8c8e3420aa41da532120e4e90a0583ba987
diff --git a/test/docker/run_tests/start.sh b/test/docker/run_tests/start.sh
index dd2cb63..73d69c3 100755
--- a/test/docker/run_tests/start.sh
+++ b/test/docker/run_tests/start.sh
@@ -1,5 +1,11 @@
#!/usr/bin/env bash
+die() { echo "ERROR: $1" >&2 ; exit 1 ; } # errormsg
+
+is_plugin_loaded() { # plugin_name
+ ssh -p 29418 "$GERRIT_HOST" gerrit plugin ls | awk '{print $1}' | grep -q "^$1\$"
+}
+
USER_RUN_TESTS_DIR="$USER_HOME"/"$RUN_TESTS_DIR"
mkdir "$USER_HOME"/task && cp -r /task/{src,test} "$USER_HOME"/task
@@ -16,6 +22,8 @@
"Gerrit Code Review@$GERRIT_HOST" suexec --as "admin@example.com" -- gerrit create-account \
--ssh-key - --email "gerrit_admin@localdomain" --group "Administrators" "gerrit_admin"
+is_plugin_loaded "task" || die "Task plugin is not installed"
+
./"$USER_RUN_TESTS_DIR"/create-test-project-and-changes.sh
./"$USER_RUN_TESTS_DIR"/update-all-users-project.sh