summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.cirrus.yml2
-rwxr-xr-xcontrib/cirrus/optional_system_test.sh24
2 files changed, 26 insertions, 0 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
index c5d35141e..f78205a49 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -63,6 +63,8 @@ full_vm_testing_task:
integration_test_script: $SCRIPT_BASE/integration_test.sh
+ optional_system_test_script: $SCRIPT_BASE/optional_system_test.sh
+
success_script: $SCRIPT_BASE/success.sh
diff --git a/contrib/cirrus/optional_system_test.sh b/contrib/cirrus/optional_system_test.sh
new file mode 100755
index 000000000..705dda5ad
--- /dev/null
+++ b/contrib/cirrus/optional_system_test.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+set -e
+source $(dirname $0)/lib.sh
+
+MAGIC_RE='\*\*\*\s*CIRRUS:\s*SYSTEM\s*TEST\s*\*\*\*'
+if ! echo "$CIRRUS_CHANGE_MESSAGE" | egrep -q "$MAGIC_RE"
+then
+ echo "Skipping system-testing because PR title or description"
+ echo "does not match regular expression: $MAGIC_RE"
+ exit 0
+fi
+
+req_env_var "
+GOSRC $GOSRC
+OS_RELEASE_ID $OS_RELEASE_ID
+OS_RELEASE_VER $OS_RELEASE_VER
+"
+
+show_env_vars
+
+set -x
+cd "$GOSRC"
+make localsystem