From 6542126b9dd0b1d0344b28a6fde5ec2b64cc9a16 Mon Sep 17 00:00:00 2001 From: Chris Evich Date: Fri, 1 Oct 2021 14:44:55 -0400 Subject: [PATCH] Cirrus: Fix defunct package metadata breaking cache During VM image build, a number of packages are downloaded but not installed, since they may interfere with some testing. Then at runtime, where required, the packages are installed from cache and used. However, between image build and runtime it's possible the repository contents change, which will invalidate the package cache. Since the `--no-download --ignore-missing` options were used, the install will fail. Ref: https://github.com/containers/automation_images/issues/95 Fortunately, when it comes to the docker packages, no other dependencies are required and so `apt-get` isn't required. Switch to using a simple dpkg install command on the necessary files. If this ever breaks due to new dependencies, the list of files may simply be updated. Signed-off-by: Chris Evich --- contrib/cirrus/setup.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contrib/cirrus/setup.sh b/contrib/cirrus/setup.sh index bc988e92de..c41828e5a8 100755 --- a/contrib/cirrus/setup.sh +++ b/contrib/cirrus/setup.sh @@ -34,10 +34,10 @@ EOF ;; ubuntu) if [[ "$1" == "conformance" ]]; then - # Need to re-build lists (removed during image production) - lilto apt-get -qq -y update msg "Installing previously downloaded/cached packages" - $SHORT_APTGET install --no-download --ignore-missing containerd.io docker-ce docker-ce-cli + ooe.sh dpkg -i \ + $PACKAGE_DOWNLOAD_DIR/containerd.io*.deb \ + $PACKAGE_DOWNLOAD_DIR/docker-ce*.deb # At the time of this comment, Ubuntu is using systemd-resolved # which interfears badly with conformance testing. Some tests