qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/23] docker/shippable: cross-build mipsel and powerpc targets
@ 2017-05-08  4:56 Philippe Mathieu-Daudé
  2017-05-08  4:56 ` [Qemu-devel] [PATCH 01/23] shippable: use C locale to simplify console output Philippe Mathieu-Daudé
                   ` (22 more replies)
  0 siblings, 23 replies; 46+ messages in thread
From: Philippe Mathieu-Daudé @ 2017-05-08  4:56 UTC (permalink / raw)
  To: qemu-devel, Alex Bennée, Fam Zheng; +Cc: Philippe Mathieu-Daudé

This patchset add 2 more architectures to the cross-build farm.

- Reorganize Dockerfiles to use less layers, resulting in smaller images.
  This also reduce time of image transfer, for example while using:
  `docker save qemu:debian | ssh remote docker load`
- Install more debian packages so the configure script enable more features and
  more code can be compiled/covered.
- There are still some incorrect multiarch packages on debian/jessie used in
  the docker images, add a script to generate fake packages and avoid
  dependencies issues.
- Modify the docker.py script to include an extra file while building images.

There is still some issue trying to cross-build mips64el-softmmu, it seems the
cross tools use the system outdated libfdt instead of the one checkouted in the
dtc submodule. I disabled this target for now.

I had some issues in some jobs, git reporting "Problem with the SSL CA cert"
trying to clone from github.com. I enabled GIT_CURL_VERBOSE but didn't want to
spend more time on this right now so I disabled the verification by setting
GIT_SSL_NO_VERIFY. Since we use Shippable services to compile the codebase and
not to release binaries it seemed Ok to me.

The branch https://github.com/philmd/qemu/tree/docker_shippable can be checked
here at Shippable:
  https://app.shippable.com/github/philmd/qemu/status/dashboard

With the free open source projects service, each arch builds in around ~9min,
the 5 jobs take ~44min in total. It seems each docker image is rebuilt from
scratch, maybe we could save a lot pushing/pulling to a registry.

Regards,

Phil.

Philippe Mathieu-Daudé (23):
  shippable: use C locale to simplify console output
  shippable: build using all available cpus
  shippable: ignore SSL verification
  docker: compact debian base
  docker: compact debian armhf
  docker: compact debian arm64
  docker: add extra libs to armhf target to extend codebase coverage
  docker: add extra libs to arm64 target to extend codebase coverage
  docker: add extra libs to s390x target to extend codebase coverage
  docker: add mipsel build target
  shippable: add mipsel target
  docker: let _copy_with_mkdir() sub_path argument be optional
  docker: add --include-file argument to 'build' command
  docker: add 'apt-fake' script which generate fake debian packages
  docker: fix mipsel debian/stable dependencies problem
  shippable: do not initialize submodules automatically
  shippable: use dtc submodule if distrib packages are too old
  shippable: temporary disable mips64el-softmmu build
  docker: add powerpc build target
  shippable: add powerpc target
  docker: fix powerpc debian/stable dependencies problem
  MAINTAINERS: add Shippable automation platform URL
  MAINTAINERS: self-appoint me as reviewer in build/test automation

 .shippable.yml                                     | 23 ++++++++++-
 MAINTAINERS                                        |  2 +
 tests/docker/Makefile.include                      |  7 +++-
 tests/docker/docker.py                             |  7 +++-
 tests/docker/dockerfiles/debian-apt-fake.sh        | 46 ++++++++++++++++++++++
 tests/docker/dockerfiles/debian-arm64-cross.docker | 16 ++++++--
 tests/docker/dockerfiles/debian-armhf-cross.docker | 16 ++++++--
 .../docker/dockerfiles/debian-mipsel-cross.docker  | 30 ++++++++++++++
 .../docker/dockerfiles/debian-powerpc-cross.docker | 30 ++++++++++++++
 tests/docker/dockerfiles/debian-s390x-cross.docker |  6 +++
 tests/docker/dockerfiles/debian.docker             | 24 ++++++-----
 11 files changed, 186 insertions(+), 21 deletions(-)
 create mode 100755 tests/docker/dockerfiles/debian-apt-fake.sh
 create mode 100644 tests/docker/dockerfiles/debian-mipsel-cross.docker
 create mode 100644 tests/docker/dockerfiles/debian-powerpc-cross.docker

-- 
2.11.0

^ permalink raw reply	[flat|nested] 46+ messages in thread

end of thread, other threads:[~2017-05-08 18:19 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-08  4:56 [Qemu-devel] [PATCH 00/23] docker/shippable: cross-build mipsel and powerpc targets Philippe Mathieu-Daudé
2017-05-08  4:56 ` [Qemu-devel] [PATCH 01/23] shippable: use C locale to simplify console output Philippe Mathieu-Daudé
2017-05-08 10:54   ` Alex Bennée
2017-05-08  4:56 ` [Qemu-devel] [PATCH 02/23] shippable: build using all available cpus Philippe Mathieu-Daudé
2017-05-08 10:55   ` Alex Bennée
2017-05-08 13:21     ` Philippe Mathieu-Daudé
2017-05-08 14:42       ` Philippe Mathieu-Daudé
2017-05-08  4:56 ` [Qemu-devel] [RFC PATCH 03/23] shippable: ignore SSL verification Philippe Mathieu-Daudé
2017-05-08 10:58   ` Alex Bennée
2017-05-08 11:56     ` Philippe Mathieu-Daudé
2017-05-08  4:56 ` [Qemu-devel] [PATCH 04/23] docker: compact debian base Philippe Mathieu-Daudé
2017-05-08 11:04   ` Alex Bennée
2017-05-08 18:19     ` Philippe Mathieu-Daudé
2017-05-08  4:56 ` [Qemu-devel] [PATCH 05/23] docker: compact debian armhf Philippe Mathieu-Daudé
2017-05-08  4:56 ` [Qemu-devel] [PATCH 06/23] docker: compact debian arm64 Philippe Mathieu-Daudé
2017-05-08  4:56 ` [Qemu-devel] [PATCH 07/23] docker: add extra libs to armhf target to extend codebase coverage Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 08/23] docker: add extra libs to arm64 " Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 09/23] docker: add extra libs to s390x " Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 10/23] docker: add mipsel build target Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 11/23] shippable: add mipsel target Philippe Mathieu-Daudé
2017-05-08 11:06   ` Alex Bennée
2017-05-08  4:57 ` [Qemu-devel] [PATCH 12/23] docker: let _copy_with_mkdir() sub_path argument be optional Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [RFC PATCH 13/23] docker: add --include-file argument to 'build' command Philippe Mathieu-Daudé
2017-05-08 11:10   ` Alex Bennée
2017-05-08  4:57 ` [Qemu-devel] [RFC PATCH 14/23] docker: add 'apt-fake' script which generate fake debian packages Philippe Mathieu-Daudé
2017-05-08 11:12   ` Alex Bennée
2017-05-08 17:48     ` Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 15/23] docker: fix mipsel debian/stable dependencies problem Philippe Mathieu-Daudé
2017-05-08 11:14   ` Alex Bennée
2017-05-08  4:57 ` [Qemu-devel] [PATCH 16/23] shippable: do not initialize submodules automatically Philippe Mathieu-Daudé
2017-05-08 11:15   ` Alex Bennée
2017-05-08 17:48     ` Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 17/23] shippable: use dtc submodule if distrib packages are too old Philippe Mathieu-Daudé
2017-05-08 11:15   ` Alex Bennée
2017-05-08  4:57 ` [Qemu-devel] [PATCH 19/23] docker: add powerpc build target Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 20/23] shippable: add powerpc target Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 21/23] docker: fix powerpc debian/stable dependencies problem Philippe Mathieu-Daudé
2017-05-08 11:19   ` Alex Bennée
2017-05-08 17:50     ` Philippe Mathieu-Daudé
2017-05-08  4:57 ` [Qemu-devel] [PATCH 22/23] MAINTAINERS: add Shippable automation platform URL Philippe Mathieu-Daudé
2017-05-08 11:21   ` Alex Bennée
2017-05-08  4:57 ` [Qemu-devel] [PATCH 23/23] MAINTAINERS: self-appoint me as reviewer in build/test automation Philippe Mathieu-Daudé
2017-05-08 11:22   ` Alex Bennée
2017-05-08  5:02 ` [Qemu-devel] [PATCH 18/23] shippable: temporary disable mips64el-softmmu build Philippe Mathieu-Daudé
2017-05-08 11:22   ` Alex Bennée
2017-05-08 17:52     ` Philippe Mathieu-Daudé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).