qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 2/6] tests/docker: don't set DOCKER_REGISTRY on non-x86_64


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH v1 2/6] tests/docker: don't set DOCKER_REGISTRY on non-x86_64
Date: Wed, 31 Mar 2021 14:32:18 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.0

Hi Alex, Willian,

On 3/29/21 1:02 PM, Alex Bennée wrote:
> Currently our gitlab registry is x86_64 only so attempting to pull an
> image from it on something else will end in tears.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>  tests/docker/Makefile.include | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
> index 7cab761bf5..9f464cb92c 100644
> --- a/tests/docker/Makefile.include
> +++ b/tests/docker/Makefile.include
> @@ -16,7 +16,10 @@ DOCKER_IMAGES := $(sort $(notdir $(basename $(wildcard 
> $(DOCKER_FILES_DIR)/*.doc
>  DOCKER_TARGETS := $(patsubst %,docker-image-%,$(DOCKER_IMAGES))
>  # Use a global constant ccache directory to speed up repetitive builds
>  DOCKER_CCACHE_DIR := $$HOME/.cache/qemu-docker-ccache
> -DOCKER_REGISTRY := $(if 
> $(REGISTRY),$(REGISTRY),registry.gitlab.com/qemu-project/qemu)
> +ifeq ($(HOST_ARCH),x86_64)
> +DOCKER_DEFAULT_REGISTRY := registry.gitlab.com/qemu-project/qemu
> +endif
> +DOCKER_REGISTRY := $(if $(REGISTRY),$(REGISTRY),$(DOCKER_DEFAULT_REGISTRY))

I remember we chatted about Docker multiarch on IRC.

It doesn't look going into the right direction. IMO the problem
you are having is because we push an amd64 docker image into the now
multiarch namespace, so it is obviously failing on all non-amd64 hosts.

I think the correct way is to remove the images stored in the multiarch
namespace (they are amd64, not multiarch); and store the amd64 images
under the amd64 namespace.

IOW prepend amd64/ in our amd64 specific images.

Then you could push a aarch64 image using the arm64v8/ prefix namespace
and the buildsys machinery will work with the registry.

FWIW I tested it with mips64le/ prefix on the mips64le runner.

Willian, can you have a try with ppc64le/ (eventually s390x/) prefix
for similar hosts?

Related info:
https://github.com/docker-library/official-images#architectures-other-than-amd64
https://github.com/docker-library/official-images#multiple-architectures

Regards,

Phil.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]