diff options
author | Oliver Smith <osmith@sysmocom.de> | 2021-04-07 10:39:50 +0200 |
---|---|---|
committer | laforge <laforge@osmocom.org> | 2021-04-07 18:39:18 +0000 |
commit | 7ff8bea9f57c2426f88fd7976fe7522f98c2176e (patch) | |
tree | 5d63b19794471488848be204fb2cffbacd858e61 | |
parent | 9d7a3b2aacc9b530cf1c6d9225529351f4e1e197 (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.sh | 39 |
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 } |