aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2021-04-07 10:39:50 +0200
committerlaforge <laforge@osmocom.org>2021-04-07 18:39:18 +0000
commit7ff8bea9f57c2426f88fd7976fe7522f98c2176e (patch)
tree5d63b19794471488848be204fb2cffbacd858e61
parent9d7a3b2aacc9b530cf1c6d9225529351f4e1e197 (diff)
docker_images_require: list installed Osmocom pkgs
Display an overview of installed Osmocom packages at the start of each ttcn3-*/jenkins.sh script (and others making use of docker_images_require). Closes: OS#5091 Change-Id: I62670017d790fd67c6a0d8d464386c0f8e94c1a8
-rw-r--r--jenkins-common.sh39
1 files changed, 38 insertions, 1 deletions
diff --git a/jenkins-common.sh b/jenkins-common.sh
index 6c27fae..67a467d 100644
--- a/jenkins-common.sh
+++ b/jenkins-common.sh
@@ -39,6 +39,40 @@ docker_dir_from_image_name() {
esac
}
+# $1: distro name, from docker_distro_from_image_name()
+# $2: docker image name (without $REPO_USER/ prefix)
+list_osmo_packages() {
+ local distro="$1"
+ local image="$2"
+ local docker_run_sh="docker run --rm --entrypoint=/bin/sh $REPO_USER/$image -c"
+
+ # Don't run on all images
+ case "$image" in
+ osmo-*) ;;
+ *) return ;;
+ esac
+
+ set +x
+ echo
+ echo "### Installed Osmocom packages in: $image ###"
+ echo
+
+ case "$distro" in
+ centos*)
+ $docker_run_sh "rpm -qa | grep osmo"
+ ;;
+ debian*)
+ $docker_run_sh "dpkg -l | grep osmo"
+ ;;
+ *)
+ echo "ERROR: don't know how to list installed packages for distro=$distro"
+ ;;
+ esac
+
+ echo
+ set -x
+}
+
# Make sure required images are available and build them if necessary.
# $*: image names (e.g. "debian-stretch-build", "osmo-mgw-master", "osmo-mgw-master-centos8")
# The images are automatically built from the Dockerfile of the subdir of
@@ -67,10 +101,11 @@ docker_images_require() {
docker_images_require $depends
fi
+ distro_arg="$(docker_distro_from_image_name "$i")"
+
# Trigger image build (cache will be used when up-to-date)
if [ -z "$NO_DOCKER_IMAGE_BUILD" ]; then
upstream_distro_arg="$(docker_upstream_distro_from_image_name "$i")"
- distro_arg="$(docker_distro_from_image_name "$i")"
dir="$(docker_dir_from_image_name "$i")"
# Pull upstream base images
@@ -94,6 +129,8 @@ docker_images_require() {
echo "ERROR: missing image: $i"
exit 1
fi
+
+ list_osmo_packages "$distro_arg" "$i"
done
}