Marek noticed that some builds were failing with: + cd dist/install + find + cpio -R 0:0 -o -H newc ./automation/scripts/build: line 111: cpio: command not found + gzip
but succeeding overall, and producing a zero length xen-tools.cpio.gz as an artefact. In fact, it's all of: archlinux:current debian:12-x86_32 fedora:41 opensuse:tumbleweed ubuntu (all versions) Add cpio into all of these containers, including opensuse leap for good measure, and use pipefail in the build script. Fixes: 4611ae6fb8f9 ("CI: save toolstack artifact as cpio.gz") Reported-by: Marek Marczykowski-Górecki <marma...@invisiblethingslab.com> Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com> --- CC: Anthony PERARD <anthony.per...@vates.tech> CC: Michal Orzel <michal.or...@amd.com> CC: Jan Beulich <jbeul...@suse.com> CC: Julien Grall <jul...@xen.org> CC: Roger Pau Monné <roger....@citrix.com> CC: Stefano Stabellini <sstabell...@kernel.org> CC: Shawn Anastasio <sanasta...@raptorengineering.com> CC: Oleksii Kurochko <oleksii.kuroc...@gmail.com> CC: Doug Goldstein <car...@cardoe.com> CC: Marek Marczykowski-Górecki <marma...@invisiblethingslab.com> CC: Victor Lira <victorm.l...@amd.com> v4: * New I have already deployed the updated containers. All failures: https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/2036157692 --- automation/build/archlinux/current.dockerfile | 1 + automation/build/debian/12-x86_32.dockerfile | 1 + automation/build/fedora/41-x86_64.dockerfile | 1 + automation/build/opensuse/leap-15.6-x86_64.dockerfile | 1 + automation/build/opensuse/tumbleweed-x86_64.dockerfile | 1 + automation/build/ubuntu/16.04-x86_64.dockerfile | 1 + automation/build/ubuntu/18.04-x86_64.dockerfile | 1 + automation/build/ubuntu/20.04-x86_64.dockerfile | 1 + automation/build/ubuntu/22.04-x86_64.dockerfile | 1 + automation/build/ubuntu/24.04-x86_64.dockerfile | 1 + automation/scripts/build | 2 ++ 11 files changed, 12 insertions(+) diff --git a/automation/build/archlinux/current.dockerfile b/automation/build/archlinux/current.dockerfile index 657ddd77a85c..4e53c835fa50 100644 --- a/automation/build/archlinux/current.dockerfile +++ b/automation/build/archlinux/current.dockerfile @@ -8,6 +8,7 @@ RUN pacman-key --init RUN pacman -S --refresh --sysupgrade --noconfirm --noprogressbar --needed \ bridge-utils \ bzip2 \ + cpio \ discount \ dtc \ e2fsprogs \ diff --git a/automation/build/debian/12-x86_32.dockerfile b/automation/build/debian/12-x86_32.dockerfile index ef7a2571556b..447152d7e5e4 100644 --- a/automation/build/debian/12-x86_32.dockerfile +++ b/automation/build/debian/12-x86_32.dockerfile @@ -23,6 +23,7 @@ RUN <<EOF # Tools (general) ca-certificates + cpio git-core pkg-config wget diff --git a/automation/build/fedora/41-x86_64.dockerfile b/automation/build/fedora/41-x86_64.dockerfile index 8032a2098632..e33329aedc9e 100644 --- a/automation/build/fedora/41-x86_64.dockerfile +++ b/automation/build/fedora/41-x86_64.dockerfile @@ -23,6 +23,7 @@ RUN <<EOF checkpolicy # Tools (general) + cpio git-core gzip patch diff --git a/automation/build/opensuse/leap-15.6-x86_64.dockerfile b/automation/build/opensuse/leap-15.6-x86_64.dockerfile index 97890dfc006c..33db3ecd634b 100644 --- a/automation/build/opensuse/leap-15.6-x86_64.dockerfile +++ b/automation/build/opensuse/leap-15.6-x86_64.dockerfile @@ -29,6 +29,7 @@ RUN <<EOF python311 # Tools (general) + cpio git-core gzip patch diff --git a/automation/build/opensuse/tumbleweed-x86_64.dockerfile b/automation/build/opensuse/tumbleweed-x86_64.dockerfile index 61e840fc67da..218bc45294c1 100644 --- a/automation/build/opensuse/tumbleweed-x86_64.dockerfile +++ b/automation/build/opensuse/tumbleweed-x86_64.dockerfile @@ -28,6 +28,7 @@ RUN <<EOF python3 # Tools (general) + cpio git-core gzip patch diff --git a/automation/build/ubuntu/16.04-x86_64.dockerfile b/automation/build/ubuntu/16.04-x86_64.dockerfile index 9cc8ca89e8e0..72a46389fa0d 100644 --- a/automation/build/ubuntu/16.04-x86_64.dockerfile +++ b/automation/build/ubuntu/16.04-x86_64.dockerfile @@ -24,6 +24,7 @@ RUN <<EOF # Tools (general) ca-certificates + cpio git-core gzip patch diff --git a/automation/build/ubuntu/18.04-x86_64.dockerfile b/automation/build/ubuntu/18.04-x86_64.dockerfile index aefe52125a22..2634856c8980 100644 --- a/automation/build/ubuntu/18.04-x86_64.dockerfile +++ b/automation/build/ubuntu/18.04-x86_64.dockerfile @@ -24,6 +24,7 @@ RUN <<EOF # Tools (general) ca-certificates + cpio git-core gzip patch diff --git a/automation/build/ubuntu/20.04-x86_64.dockerfile b/automation/build/ubuntu/20.04-x86_64.dockerfile index 1ee20a13ac6b..9ec57eb975e1 100644 --- a/automation/build/ubuntu/20.04-x86_64.dockerfile +++ b/automation/build/ubuntu/20.04-x86_64.dockerfile @@ -24,6 +24,7 @@ RUN <<EOF # Tools (general) ca-certificates + cpio git-core gzip patch diff --git a/automation/build/ubuntu/22.04-x86_64.dockerfile b/automation/build/ubuntu/22.04-x86_64.dockerfile index a9a9b84930fb..6ae7f4faa859 100644 --- a/automation/build/ubuntu/22.04-x86_64.dockerfile +++ b/automation/build/ubuntu/22.04-x86_64.dockerfile @@ -24,6 +24,7 @@ RUN <<EOF # Tools (general) ca-certificates + cpio git-core gzip patch diff --git a/automation/build/ubuntu/24.04-x86_64.dockerfile b/automation/build/ubuntu/24.04-x86_64.dockerfile index 2005723b31ad..84777d188c0d 100644 --- a/automation/build/ubuntu/24.04-x86_64.dockerfile +++ b/automation/build/ubuntu/24.04-x86_64.dockerfile @@ -24,6 +24,7 @@ RUN <<EOF # Tools (general) ca-certificates + cpio git-core gzip patch diff --git a/automation/scripts/build b/automation/scripts/build index d0511843e7ea..7a81d229decd 100755 --- a/automation/scripts/build +++ b/automation/scripts/build @@ -1,5 +1,7 @@ #!/bin/bash -ex +set -o pipefail + test -f /etc/os-release && cat "$_" # Construct $cc such that it matches what `make` will chose when taking -- 2.39.5