[PATCH v2 1/3] tools: docker: Install a readable kernel for libguestfs-tools
Heinrich Schuchardt
xypron.glpk at gmx.de
Mon Jun 14 19:29:00 CEST 2021
On 6/13/21 4:07 PM, Alper Nebi Yasak wrote:
> The filesystem and EFI (capsule and secure boot) test setups try to use
> guestmount and virt-make-fs respectively to prepare disk images to run
> tests on. However, these libguestfs tools need a kernel image and fail
> with the following message (revealed in debug/trace mode) if it can't
> find one:
>
> supermin: failed to find a suitable kernel (host_cpu=x86_64).
>
> I looked for kernels in /boot and modules in /lib/modules.
>
> If this is a Xen guest, and you only have Xen domU kernels
> installed, try installing a fullvirt kernel (only for
> supermin use, you shouldn't boot the Xen guest with it).
>
> This failure then causes these tests to be skipped in CIs. Install a
> kernel package in the Docker containers so the CIs can run these
> tests with libguestfs tools again (assuming the container is run with
> necessary host devices and privileges). As this kernel would be only
> used for virtualization, we can use the kernel package specialized for
> that. On Ubuntu systems kernel images are not readable by non-root
> users, so explicitly add read permissions with chmod as well.
>
> Signed-off-by: Alper Nebi Yasak <alpernebiyasak at gmail.com>
> Acked-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> ---
>
> Changes in v2:
> - Add tag "Acked-by: Heinrich Schuchardt <xypron.glpk at gmx.de>"
>
> tools/docker/Dockerfile | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile
> index d2f0074ee8a6..563b16639e54 100644
> --- a/tools/docker/Dockerfile
> +++ b/tools/docker/Dockerfile
> @@ -71,6 +71,7 @@ RUN apt-get update && apt-get install -y \
> libssl-dev \
> libudev-dev \
> libusb-1.0-0-dev \
> + linux-image-kvm \
> lzma-alone \
> lzop \
> mount \
> @@ -99,6 +100,9 @@ RUN apt-get update && apt-get install -y \
> zip \
> && rm -rf /var/lib/apt/lists/*
>
> +# Make kernels readable for libguestfs tools to work correctly
> +RUN chmod +r /boot/vmlinu* /lib/modules/*/vmlinu* || true
/lib/modules/4.15.0-1092-kvm# find . -name 'vm*'
does not find any file.
We don't need '|| true' if you do not refer to non-existent files.
Best regards
Heinrich
> +
> # Manually install libmpfr4 for the toolchains
> RUN wget http://mirrors.kernel.org/ubuntu/pool/main/m/mpfr4/libmpfr4_3.1.4-1_amd64.deb && dpkg -i libmpfr4_3.1.4-1_amd64.deb && rm libmpfr4_3.1.4-1_amd64.deb
>
>
More information about the U-Boot
mailing list