<p>osmith has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-ci/+/22334">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">repo-install-test: add TESTS variable<br><br>Allow to enable only certain tests during development.<br><br>Related: OS#4733<br>Change-Id: I8d817f47d790e4cdc25c5182a0e91b66a00fbf52<br>---<br>M scripts/repo-install-test.sh<br>M scripts/repo-install-test/run-inside-docker.sh<br>2 files changed, 42 insertions(+), 3 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/34/22334/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/scripts/repo-install-test.sh b/scripts/repo-install-test.sh</span><br><span>index a785b74..71e55d7 100755</span><br><span>--- a/scripts/repo-install-test.sh</span><br><span>+++ b/scripts/repo-install-test.sh</span><br><span>@@ -4,6 +4,7 @@</span><br><span> # * FEED: binary package feed (e.g. "latest", "nightly")</span><br><span> # * PROJ: OBS project namespace (e.g. "network:osmocom:latest")</span><br><span> # * KEEP_CACHE: set to 1 to keep downloaded binary packages (for development)</span><br><span style="color: hsl(120, 100%, 40%);">+# * TESTS: which tests to run (all by default, see below for possible values)</span><br><span> . "$(dirname "$0")/common.sh"</span><br><span> </span><br><span> # Show usage</span><br><span>@@ -20,6 +21,14 @@</span><br><span> PROJ="${PROJ:-network:osmocom:$FEED}"</span><br><span> CONTAINER="$DISTRO-repo-install-test-$FEED"</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+if [ -z "$TESTS" ]; then</span><br><span style="color: hsl(120, 100%, 40%);">+     TESTS="</span><br><span style="color: hsl(120, 100%, 40%);">+          install_repo_packages</span><br><span style="color: hsl(120, 100%, 40%);">+         test_binaries</span><br><span style="color: hsl(120, 100%, 40%);">+         services_check</span><br><span style="color: hsl(120, 100%, 40%);">+        "</span><br><span style="color: hsl(120, 100%, 40%);">+fi</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> # Try to run "systemctl status" 10 times, kill the container on failure</span><br><span> check_if_systemd_is_running() {</span><br><span>         for i in $(seq 1 10); do</span><br><span>@@ -58,6 +67,7 @@</span><br><span>                 -e FEED="$FEED" \</span><br><span>          -e PROJ="$PROJ" \</span><br><span>          -e DISTRO="$DISTRO" \</span><br><span style="color: hsl(120, 100%, 40%);">+               -e TESTS="$TESTS" \</span><br><span>                -e container=docker \</span><br><span>                --tmpfs /run \</span><br><span>               --tmpfs /run/lock \</span><br><span>diff --git a/scripts/repo-install-test/run-inside-docker.sh b/scripts/repo-install-test/run-inside-docker.sh</span><br><span>index b10c97d..79dd3cf 100755</span><br><span>--- a/scripts/repo-install-test/run-inside-docker.sh</span><br><span>+++ b/scripts/repo-install-test/run-inside-docker.sh</span><br><span>@@ -4,6 +4,7 @@</span><br><span> # * PROJ: OBS project namespace (e.g. "network:osmocom:latest")</span><br><span> # * KEEP_CACHE: set to 1 to keep downloaded binary packages (for development)</span><br><span> # * DISTRO: linux distribution  name (e.g. "debian", "centos")</span><br><span style="color: hsl(120, 100%, 40%);">+# * TESTS: which tests to run (see repo-install-test.sh)</span><br><span> </span><br><span> # Systemd services that must start up successfully after installing all packages (OS#3369)</span><br><span> # Disabled services:</span><br><span>@@ -64,6 +65,11 @@</span><br><span>              echo "ERROR: missing environment variable \$DISTRO!"</span><br><span>               exit 1</span><br><span>       fi</span><br><span style="color: hsl(120, 100%, 40%);">+    if [ -n "$TESTS" ]; then</span><br><span style="color: hsl(120, 100%, 40%);">+            echo "Enabled tests: $TESTS"</span><br><span style="color: hsl(120, 100%, 40%);">+        else</span><br><span style="color: hsl(120, 100%, 40%);">+          echo "ERROR: missing environment variable \$TESTS!"</span><br><span style="color: hsl(120, 100%, 40%);">+ fi</span><br><span> }</span><br><span> </span><br><span> # $1: OBS project (e.g. "network:osmocom:nightly")</span><br><span>@@ -244,6 +250,29 @@</span><br><span> check_env</span><br><span> configure_keep_cache_${DISTRO}</span><br><span> configure_osmocom_repo_${DISTRO} "$PROJ"</span><br><span style="color: hsl(0, 100%, 40%);">-install_repo_packages_${DISTRO}</span><br><span style="color: hsl(0, 100%, 40%);">-test_binaries</span><br><span style="color: hsl(0, 100%, 40%);">-services_check</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+for test in $TESTS; do</span><br><span style="color: hsl(120, 100%, 40%);">+   set +x</span><br><span style="color: hsl(120, 100%, 40%);">+        echo</span><br><span style="color: hsl(120, 100%, 40%);">+  echo "### Running test: $test ###"</span><br><span style="color: hsl(120, 100%, 40%);">+  echo</span><br><span style="color: hsl(120, 100%, 40%);">+  set -x</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+      case "$test" in</span><br><span style="color: hsl(120, 100%, 40%);">+             install_repo_packages)</span><br><span style="color: hsl(120, 100%, 40%);">+                        install_repo_packages_${DISTRO}</span><br><span style="color: hsl(120, 100%, 40%);">+                       ;;</span><br><span style="color: hsl(120, 100%, 40%);">+            test_binaries)</span><br><span style="color: hsl(120, 100%, 40%);">+                        # install_repo_packages must run first!</span><br><span style="color: hsl(120, 100%, 40%);">+                       test_binaries</span><br><span style="color: hsl(120, 100%, 40%);">+                 ;;</span><br><span style="color: hsl(120, 100%, 40%);">+            services_check)</span><br><span style="color: hsl(120, 100%, 40%);">+                       # install_repo_packages must run first!</span><br><span style="color: hsl(120, 100%, 40%);">+                       services_check</span><br><span style="color: hsl(120, 100%, 40%);">+                        ;;</span><br><span style="color: hsl(120, 100%, 40%);">+            *)</span><br><span style="color: hsl(120, 100%, 40%);">+                    echo "ERROR: unknown test: $test"</span><br><span style="color: hsl(120, 100%, 40%);">+                   exit 1</span><br><span style="color: hsl(120, 100%, 40%);">+                        ;;</span><br><span style="color: hsl(120, 100%, 40%);">+    esac</span><br><span style="color: hsl(120, 100%, 40%);">+done</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-ci/+/22334">change 22334</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-ci/+/22334"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-ci </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I8d817f47d790e4cdc25c5182a0e91b66a00fbf52 </div>
<div style="display:none"> Gerrit-Change-Number: 22334 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: osmith <osmith@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>