<p>osmith has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/10862">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">debian-repo-install-test: new binary package test<br><br>Installs all packages from the Debian repository into a plain<br>debian:stretch container. The list of packages is automatically<br>generated with aptitude, so the job does not need to be changed<br>for every new package.<br><br>The feed ("latest", "nightly") can be specified with the FEED<br>environment variable in the jenkins.sh (defaults to nightly).<br><br>Change-Id: I0f0a8b4f0ccd706cd1af98fe25accd6fd410e007<br>Relates: OS#3176<br>---<br>A debian-repo-install-test/jenkins.sh<br>A debian-repo-install-test/testdata/Release.key<br>A debian-repo-install-test/testdata/repo-install-test.sh<br>3 files changed, 90 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/62/10862/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/debian-repo-install-test/jenkins.sh b/debian-repo-install-test/jenkins.sh</span><br><span>new file mode 100755</span><br><span>index 0000000..8c497bf</span><br><span>--- /dev/null</span><br><span>+++ b/debian-repo-install-test/jenkins.sh</span><br><span>@@ -0,0 +1,18 @@</span><br><span style="color: hsl(120, 100%, 40%);">+#!/bin/sh</span><br><span style="color: hsl(120, 100%, 40%);">+. ../jenkins-common.sh</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# Configuration</span><br><span style="color: hsl(120, 100%, 40%);">+[ -z "$FEED" ] && FEED="nightly"</span><br><span style="color: hsl(120, 100%, 40%);">+interactive="false"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# Run the container</span><br><span style="color: hsl(120, 100%, 40%);">+extra_args=""</span><br><span style="color: hsl(120, 100%, 40%);">+[ "$interactive" = "true" ] && extra_args="-it"</span><br><span style="color: hsl(120, 100%, 40%);">+docker run        --rm \</span><br><span style="color: hsl(120, 100%, 40%);">+                -v "$PWD/testdata:/testdata:ro" \</span><br><span style="color: hsl(120, 100%, 40%);">+           -v "$VOL_BASE_DIR:/data" \</span><br><span style="color: hsl(120, 100%, 40%);">+          --entrypoint "/testdata/repo-install-test.sh" \</span><br><span style="color: hsl(120, 100%, 40%);">+             --name "${BUILD_TAG}" \</span><br><span style="color: hsl(120, 100%, 40%);">+             -e FEED="$FEED" \</span><br><span style="color: hsl(120, 100%, 40%);">+           $extra_args \</span><br><span style="color: hsl(120, 100%, 40%);">+         debian:stretch</span><br><span>diff --git a/debian-repo-install-test/testdata/Release.key b/debian-repo-install-test/testdata/Release.key</span><br><span>new file mode 100644</span><br><span>index 0000000..e656238</span><br><span>--- /dev/null</span><br><span>+++ b/debian-repo-install-test/testdata/Release.key</span><br><span>@@ -0,0 +1,20 @@</span><br><span style="color: hsl(120, 100%, 40%);">+-----BEGIN PGP PUBLIC KEY BLOCK-----</span><br><span style="color: hsl(120, 100%, 40%);">+Version: GnuPG v1.4.5 (GNU/Linux)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+mQENBFJBt/wBCADAht3d/ilNuyzaXYw/QwTRvmjyoDvfXw+H/3Fvk1zlDZoiKPPc</span><br><span style="color: hsl(120, 100%, 40%);">+a1wCVBINUZl7vYM2OXqbJwYa++JP2Q48xKSvC6thbRc/YLievkbcvTemf7IaREfl</span><br><span style="color: hsl(120, 100%, 40%);">+CTjoYpoqXHa9kHMw1aALDm8CNU88jZmnV7v9L6hKkbYDxie+jpoj7D6B9JlxgNJ4</span><br><span style="color: hsl(120, 100%, 40%);">+5dQyRNsFGVcIl4Vplt1HyGc5Q5nQI/VgS2rlF/IOXmhRQBc4LEDdU8R2IKnkU4ee</span><br><span style="color: hsl(120, 100%, 40%);">+S7TWanAigGAQhxGuCkS39/CWzc1DhLhjlNhBl/+RTPejkqJtAy00ZLps3+RqUN1Y</span><br><span style="color: hsl(120, 100%, 40%);">+CU/Fsr7aRlYVGqQ/BlptwV0XQ2VVYJX2oEBBABEBAAG0MG5ldHdvcmsgT0JTIFBy</span><br><span style="color: hsl(120, 100%, 40%);">+b2plY3QgPG5ldHdvcmtAYnVpbGQub3BlbnN1c2Uub3JnPokBPAQTAQIAJgUCWmMc</span><br><span style="color: hsl(120, 100%, 40%);">+aQIbAwUJDEAUbQYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEGLrGgkXKA3fjsoI</span><br><span style="color: hsl(120, 100%, 40%);">+ALSXmXzFCpTxg8a6tvXkqddY/qAmeBMNUf7hslI9wN3leNmCrnuHS8TbHWYJZgtw</span><br><span style="color: hsl(120, 100%, 40%);">+8M5fKL3aRQYaIiqqm1XOUF0OqwYNDj5V3y38mM68NYOkzgSP7foMwZp9Y0TlGhtI</span><br><span style="color: hsl(120, 100%, 40%);">+L8weA+2RUjB4hwwGMAYMqkRZyKW3NhPqdlGGoXac1ilwEyGXFHdOLbkhtyS+P2yb</span><br><span style="color: hsl(120, 100%, 40%);">+/EvaKIN5cMLzRZKeYgdp9WuAirV+yV/SDbgvabW098lrWhGLltlRRDQgMV883p8I</span><br><span style="color: hsl(120, 100%, 40%);">+ERMI1wlLFZGnHL3mfBWGeQ24M/DaBOdXQDtfBLCJ9nGztmDBUb8i6GFWU7nD2TGi</span><br><span style="color: hsl(120, 100%, 40%);">+8mYUsED1ZDwO/0jdvJ4gSluIRgQTEQIABgUCUkG3/AAKCRA7MBG3a51lIzhdAJ9v</span><br><span style="color: hsl(120, 100%, 40%);">+d6XPffMZRcCGgDEY5OaTn/MsCQCgrXbeZpFJgnirSrc8rRonvzYFiF4=</span><br><span style="color: hsl(120, 100%, 40%);">+=Gvly</span><br><span style="color: hsl(120, 100%, 40%);">+-----END PGP PUBLIC KEY BLOCK-----</span><br><span>diff --git a/debian-repo-install-test/testdata/repo-install-test.sh b/debian-repo-install-test/testdata/repo-install-test.sh</span><br><span>new file mode 100755</span><br><span>index 0000000..b1585db</span><br><span>--- /dev/null</span><br><span>+++ b/debian-repo-install-test/testdata/repo-install-test.sh</span><br><span>@@ -0,0 +1,52 @@</span><br><span style="color: hsl(120, 100%, 40%);">+#!/bin/sh -e</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+HTTP="http://download.opensuse.org/repositories/network:/osmocom:/$FEED/Debian_9.0/"</span><br><span style="color: hsl(120, 100%, 40%);">+OBS="obs://build.opensuse.org/network:osmocom:$FEED/Debian_9.0"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+check_env() {</span><br><span style="color: hsl(120, 100%, 40%);">+ if [ -n "$FEED" ]; then</span><br><span style="color: hsl(120, 100%, 40%);">+             echo "Checking feed: $FEED"</span><br><span style="color: hsl(120, 100%, 40%);">+ else</span><br><span style="color: hsl(120, 100%, 40%);">+          echo "ERROR: missing environment variable \$FEED!"</span><br><span style="color: hsl(120, 100%, 40%);">+          exit 1</span><br><span style="color: hsl(120, 100%, 40%);">+        fi</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%);">+install_depends() {</span><br><span style="color: hsl(120, 100%, 40%);">+  echo "Installing dependencies"</span><br><span style="color: hsl(120, 100%, 40%);">+      apt-get update</span><br><span style="color: hsl(120, 100%, 40%);">+        apt-get install -y gnupg aptitude</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%);">+configure_osmocom_repo() {</span><br><span style="color: hsl(120, 100%, 40%);">+    echo "Configuring Osmocom repository"</span><br><span style="color: hsl(120, 100%, 40%);">+       apt-key add /testdata/Release.key</span><br><span style="color: hsl(120, 100%, 40%);">+     echo "deb $HTTP ./" \</span><br><span style="color: hsl(120, 100%, 40%);">+               > /etc/apt/sources.list.d/osmocom-latest.list</span><br><span style="color: hsl(120, 100%, 40%);">+      apt-get update</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%);">+install_all_repo_packages() {</span><br><span style="color: hsl(120, 100%, 40%);">+    echo "Installing all repository packages"</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ # Reference for aptitude search patterns:</span><br><span style="color: hsl(120, 100%, 40%);">+     # https://www.debian.org/doc/manuals/aptitude/ch02s04s05.en.html</span><br><span style="color: hsl(120, 100%, 40%);">+      aptitude search -F%p \</span><br><span style="color: hsl(120, 100%, 40%);">+                "?origin($OBS) ?architecture(native)" > /data/osmocom_packages.txt</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+     apt install -y $(cat /data/osmocom_packages.txt)</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%);">+finish() {</span><br><span style="color: hsl(120, 100%, 40%);">+     echo "Test finished successfully!"</span><br><span style="color: hsl(120, 100%, 40%);">+  if [ -t 0 ]; then</span><br><span style="color: hsl(120, 100%, 40%);">+             echo "Dropping to interactive shell"</span><br><span style="color: hsl(120, 100%, 40%);">+                bash</span><br><span style="color: hsl(120, 100%, 40%);">+  fi</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%);">+check_env</span><br><span style="color: hsl(120, 100%, 40%);">+install_depends</span><br><span style="color: hsl(120, 100%, 40%);">+configure_osmocom_repo</span><br><span style="color: hsl(120, 100%, 40%);">+install_all_repo_packages</span><br><span style="color: hsl(120, 100%, 40%);">+finish</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/10862">change 10862</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/10862"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: docker-playground </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I0f0a8b4f0ccd706cd1af98fe25accd6fd410e007 </div>
<div style="display:none"> Gerrit-Change-Number: 10862 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: osmith <osmith@sysmocom.de> </div>