[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: |
Alex Bennée |
Subject: |
Re: [PATCH v1 2/6] tests/docker: don't set DOCKER_REGISTRY on non-x86_64 |
Date: |
Wed, 31 Mar 2021 15:57:27 +0100 |
User-agent: |
mu4e 1.5.11; emacs 28.0.50 |
Philippe Mathieu-Daudé <f4bug@amsat.org> writes:
> 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.
I agree we should fix this properly but I don't think it's worth the
churn on the run up to release. ATM we don't really test building on
other architectures (qemu or tests) except manually. This step makes it
a little less painful. Once we actually have the non-x86 runners going
we can then start working out how to get them to push properly to the
registry and revert this change.
>
> 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.
--
Alex Bennée
- [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