All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 00/24] docker/shippable: cross-build mipsel and powerpc targets
@ 2017-05-21  3:29 Philippe Mathieu-Daudé
  2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 01/24] docker: let _copy_with_mkdir() sub_path argument be optional Philippe Mathieu-Daudé
                   ` (24 more replies)
  0 siblings, 25 replies; 66+ messages in thread
From: Philippe Mathieu-Daudé @ 2017-05-21  3:29 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.

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.

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

Each arch builds in around ~9min. Using Shippable free open source projects
service, the 5 jobs take ~38-44min in total.

v3:
- Addressed review feedbacks from Fam:
- Keep building images in various layers, but use DEBIAN_FRONTEND=noninteractive
- Document '--extra-files', now it supports adding various files at once
- Checksum extra files to trigger a docker image rebuild if modified
- Use better regex to generate deb-src entries
- Reordered extra libs, to ease further add/remove diffs

v2:
- Addressed review feedback from Alex, added his R-B
- Fixed the "Problem with the SSL CA cert" problem while cloning from github.com
  installing the ca-certificates package.
- Squashed/split some commits
- use 'apt-get clean' instead of brutal 'rm -rf'
- checked how many cores are available on Shippable and use them fully
  (reduced total time from 44min to 38min)
- build armeb-linux-user target

v1:
- 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.

Regards,

Phil.

Philippe Mathieu-Daudé (24):
  docker: let _copy_with_mkdir() sub_path argument be optional
  docker: add --include-files argument to 'build' command
  docker: rebuild image if 'extra files' checksum does not match
  docker: add 'apt-fake' script which generate fake debian packages
  docker: install ca-certificates package in base image
  docker: create deb-src entry and setup Emdebian in the same layer
  docker: use better regex to generate deb-src entries
  docker: use eatmydata, install common build packages in base image
  docker: use eatmydata in debian armhf image
  docker: use eatmydata in debian arm64 image
  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
  docker: add powerpc build target
  shippable: use C locale to simplify console output
  shippable: build using all available cpus
  shippable: do not initialize submodules automatically
  shippable: be verbose while building docker images
  shippable: add armeb-linux-user target
  shippable: add powerpc target
  shippable: add mipsel target
  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                      |  8 +++-
 tests/docker/docker.py                             | 29 ++++++++++----
 tests/docker/dockerfiles/debian-apt-fake.sh        | 46 ++++++++++++++++++++++
 tests/docker/dockerfiles/debian-arm64-cross.docker | 18 ++++++++-
 tests/docker/dockerfiles/debian-armhf-cross.docker | 18 ++++++++-
 .../docker/dockerfiles/debian-mipsel-cross.docker  | 41 +++++++++++++++++++
 .../docker/dockerfiles/debian-powerpc-cross.docker | 40 +++++++++++++++++++
 tests/docker/dockerfiles/debian-s390x-cross.docker | 10 +++++
 tests/docker/dockerfiles/debian.docker             | 18 +++++----
 11 files changed, 230 insertions(+), 23 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] 66+ messages in thread

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

Thread overview: 66+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-21  3:29 [Qemu-devel] [PATCH v3 00/24] docker/shippable: cross-build mipsel and powerpc targets Philippe Mathieu-Daudé
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 01/24] docker: let _copy_with_mkdir() sub_path argument be optional Philippe Mathieu-Daudé
2017-05-22 10:00   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 02/24] docker: add --include-files argument to 'build' command Philippe Mathieu-Daudé
2017-05-22 10:09   ` Alex Bennée
2017-05-24  5:21   ` Fam Zheng
2017-05-24  5:34     ` Fam Zheng
2017-05-26 23:18       ` Philippe Mathieu-Daudé
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 03/24] docker: rebuild image if 'extra files' checksum does not match Philippe Mathieu-Daudé
2017-05-22  7:55   ` Alex Bennée
2017-05-22 13:23     ` Philippe Mathieu-Daudé
2017-05-22 13:39       ` Alex Bennée
2017-05-24  5:24   ` Fam Zheng
2017-05-26 23:17     ` Philippe Mathieu-Daudé
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 04/24] docker: add 'apt-fake' script which generate fake debian packages Philippe Mathieu-Daudé
2017-05-22 13:47   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 05/24] docker: install ca-certificates package in base image Philippe Mathieu-Daudé
2017-05-22 13:48   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 06/24] docker: create deb-src entry and setup Emdebian in the same layer Philippe Mathieu-Daudé
2017-05-22 13:49   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 07/24] docker: use better regex to generate deb-src entries Philippe Mathieu-Daudé
2017-05-22 13:53   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 08/24] docker: use eatmydata, install common build packages in base image Philippe Mathieu-Daudé
2017-05-22 13:58   ` Alex Bennée
2017-05-21  3:29 ` [PATCH v3 09/24] docker: use eatmydata in debian armhf image Philippe Mathieu-Daudé
2017-05-21  3:29   ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-05-22 13:59   ` Alex Bennée
2017-05-22 13:59     ` [Qemu-devel] " Alex Bennée
2017-05-21  3:29 ` [PATCH v3 10/24] docker: use eatmydata in debian arm64 image Philippe Mathieu-Daudé
2017-05-21  3:29   ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-05-22 13:59   ` Alex Bennée
2017-05-22 13:59     ` [Qemu-devel] " Alex Bennée
2017-05-21  3:29 ` [PATCH v3 11/24] docker: add extra libs to armhf target to extend codebase coverage Philippe Mathieu-Daudé
2017-05-21  3:29   ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-05-22 14:03   ` Alex Bennée
2017-05-22 14:03     ` [Qemu-devel] " Alex Bennée
2017-05-21  3:29 ` [PATCH v3 12/24] docker: add extra libs to arm64 " Philippe Mathieu-Daudé
2017-05-21  3:29   ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-05-22 14:04   ` Alex Bennée
2017-05-22 14:04     ` [Qemu-devel] " Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 13/24] docker: add extra libs to s390x " Philippe Mathieu-Daudé
2017-05-22 14:08   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 14/24] docker: add mipsel build target Philippe Mathieu-Daudé
2017-05-22 14:05   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 15/24] docker: add powerpc " Philippe Mathieu-Daudé
2017-05-22 14:08   ` Alex Bennée
2017-05-24  4:52     ` Philippe Mathieu-Daudé
2017-05-24  8:59       ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 16/24] shippable: use C locale to simplify console output Philippe Mathieu-Daudé
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 17/24] shippable: build using all available cpus Philippe Mathieu-Daudé
2017-05-22 14:08   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 18/24] shippable: do not initialize submodules automatically Philippe Mathieu-Daudé
2017-05-22 14:10   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 19/24] shippable: be verbose while building docker images Philippe Mathieu-Daudé
2017-05-22 14:11   ` Alex Bennée
2017-05-21  3:29 ` [PATCH v3 20/24] shippable: add armeb-linux-user target Philippe Mathieu-Daudé
2017-05-21  3:29   ` [Qemu-devel] " Philippe Mathieu-Daudé
2017-05-22 14:12   ` Alex Bennée
2017-05-22 14:12     ` [Qemu-devel] " Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 21/24] shippable: add powerpc target Philippe Mathieu-Daudé
2017-05-22 14:13   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 22/24] shippable: add mipsel target Philippe Mathieu-Daudé
2017-05-22 16:48   ` Alex Bennée
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 23/24] MAINTAINERS: add Shippable automation platform URL Philippe Mathieu-Daudé
2017-05-21  3:29 ` [Qemu-devel] [PATCH v3 24/24] MAINTAINERS: self-appoint me as reviewer in build/test automation Philippe Mathieu-Daudé
2017-05-24  5:28 ` [Qemu-devel] [PATCH v3 00/24] docker/shippable: cross-build mipsel and powerpc targets Fam Zheng

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.