[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.
- [PATCH for 6.0-rc2? v1 0/6] check-tcg for non-x86 hosts, Alex Bennée, 2021/03/29
- [PATCH v1 3/6] tests/tcg: add concept of container_hosts, Alex Bennée, 2021/03/29
- [PATCH v1 2/6] tests/docker: don't set DOCKER_REGISTRY on non-x86_64, Alex Bennée, 2021/03/29
- [PATCH v1 1/6] tests/tcg: update the defaults for x86 compilers, Alex Bennée, 2021/03/29
- [PATCH v1 5/6] tests/tcg/i386: expand .data sections for system tests, Alex Bennée, 2021/03/29
- [PATCH v1 4/6] tests/tcg/configure.sh: make sure we pick up x86_64 cross compilers, Alex Bennée, 2021/03/29
- [PATCH v1 6/6] tests/i386/test-i386: try and correct constrain 16 bit call (WIP), Alex Bennée, 2021/03/29