qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH RFC 00/10] docker on non-x86 hosts


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH RFC 00/10] docker on non-x86 hosts
Date: Fri, 27 Jul 2018 16:26:14 +0800
User-agent: Mutt/1.10.0 (2018-05-17)

On Wed, 07/18 11:04, Alex Bennée wrote:
> Hi,
> 
> Our existing support for docker is fairly x86 centric. While docker
> itself has support for multiple architectures not all architectures
> are equal. For example Debian only packages the widest range of
> cross-compilers in it's x86 images (although for example armhf is
> available on aarch64 based images).
> 
> As the binfmt support is getting more solid we always have that fall
> back option and I've converted a number of the guests that way.
> Unfortunately I've overloaded the meaning of DOCKER_PARTIAL_IMAGES but
> I was loathed to throw in yet another magic variable without some
> discussion first. I'm not sure if my current path will end up with a
> maze of twisty if/else statements all subtly alike.

Just my two cents.  So far it looks reasonable. Though I guess we could give
DOCKER_PARTIAL_IMAGES a better name or at least better documentation.

Would a per-arch variable list look cleaner? Like

    DOCKER_IMAGES_GENERIC = debian
    DOCKER_IMAGES_X86_64 = ubuntu fedora centos7
    DOCKER_PARTIAL_IMAGES_X86_64 = ...
    DOCKER_IMAGES_AARCH64 = ...
    DOCKER_PARTIAL_IMAGES_AARCH64 = ...

Then the actual host arch can be used to expand rules:

    docker-all-images: $(DOCKER_IMAGES_GENERIC)
    docker-all-images: $(DOCKER_IMAGES_$(shell uname -m | tr '[a-z]' '[A-Z]))

Fam

> 
> Thoughts?
> 
> Alex Bennée (10):
>   docker: rename docker-amd64 to docker-host
>   docker: change docker-image to docker-all-images target
>   docker: add a placeholder for handling non-x86 hosts
>   docker: don't include docker-arm64-cross on aarch64 hosts
>   docker: fall-back to binfmt_misc debian-mips64el-user-cross on non-x86
>   docker: fall-back to binfmt_misc debian-ppc64el-user-cross on non-x86
>   docker: fall-back to binfmt_misc debian-s390x-user-cross on non-x86
>   docker: disable additional non-x86 images
>   tests: tcg skip docker images we can't build
>   tests/tcg: debian-mips64el-user-cross fallback
> 
>  Makefile                                      |  4 +-
>  tests/docker/Makefile.include                 | 58 +++++++++++++++++--
>  ...debian-amd64.docker => debian-host.docker} |  4 +-
>  .../debian-mips64el-user-cross.docker         | 16 +++++
>  .../debian-ppc64el-user-cross.docker          | 16 +++++
>  .../debian-s390x-user-cross.docker            | 16 +++++
>  tests/tcg/Makefile.include                    |  3 +
>  tests/tcg/Makefile.probe                      |  2 +-
>  tests/tcg/mips/Makefile.include               |  5 ++
>  9 files changed, 116 insertions(+), 8 deletions(-)
>  rename tests/docker/dockerfiles/{debian-amd64.docker => debian-host.docker} 
> (91%)
>  create mode 100644 tests/docker/dockerfiles/debian-mips64el-user-cross.docker
>  create mode 100644 tests/docker/dockerfiles/debian-ppc64el-user-cross.docker
>  create mode 100644 tests/docker/dockerfiles/debian-s390x-user-cross.docker
> 
> -- 
> 2.17.1
> 



reply via email to

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