qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Fam Zheng <famz@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v6 0/8] docker: Support building qemu-user powered docker test images
Date: Tue, 19 Jul 2016 10:58:11 +0100	[thread overview]
Message-ID: <87k2gilzkc.fsf@linaro.org> (raw)
In-Reply-To: <1468916208-18668-1-git-send-email-famz@redhat.com>


Fam Zheng <famz@redhat.com> writes:

> v6: A few tweaks to make this more mergable. Including:
>     - Add and catch magic pre script exit code "3" to allow skipping image.
>     - Tweak debian-bootstrap.pre to return '3' when appropriate (It should
>       still return 1 for debootstrap command failure).
>     - Fix "realpath" to "readlink -e" to be compatible with centos6.
>     - Add the last patch to skip test if the image is skipped by .pre.
>
> Alex, if this looks good to you, I can send a pull req today.

If you could apply the following changes to the appropriate patches I
think we are good to go:

diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 2bb8a51..d85f50f 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -46,7 +46,8 @@ docker-image: ${DOCKER_TARGETS}
 docker-image-%: $(DOCKER_FILES_DIR)/%.docker
        $(call quiet-command,\
                $(SRC_PATH)/tests/docker/docker.py build qemu:$* $< \
-		$(if $V,,--quiet) $(if $(NOCACHE),--no-cache),\
+		$(if $V,,--quiet) $(if $(NOCACHE),--no-cache) \
+		$(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\
                "  BUILD $*")

 # Expand all the pre-requistes for each docker image and test combination
@@ -95,6 +96,7 @@ docker:
        @echo '    DEBUG=1              Stop and drop to shell in the created container'
        @echo '                         before running the command.'
        @echo '    NOCACHE=1            Ignore cache when build images.'
+	@echo '    EXECUTABLE=<path>    Include executable in image.'

 docker-run-%: CMD = $(shell echo '$@' | sed -e 's/docker-run-\([^@]*\)@\(.*\)/\1/')
 docker-run-%: IMAGE = $(shell echo '$@' | sed -e 's/docker-run-\([^@]*\)@\(.*\)/\2/')
diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index fd162c0..40bda9d 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -238,7 +238,7 @@ class BuildCommand(SubCommand):
                 if rc == 3:
                     print "Skip"
                     return 0
-                else:
+                elif rc != 0:
                     print "%s exited with code %d" % (docker_pre, rc)
                     return 1

diff --git a/tests/docker/dockerfiles/debian-bootstrap.pre b/tests/docker/dockerfiles/debian-bootstrap.pre
index 55850be..5d9c8d5 100755
--- a/tests/docker/dockerfiles/debian-bootstrap.pre
+++ b/tests/docker/dockerfiles/debian-bootstrap.pre
@@ -81,7 +81,7 @@ else
     fi
 fi

-echo "Building a rootfs using ${FAKEROOT} and ${DEBOOTSTRAP}"
+echo "Building a rootfs using ${FAKEROOT} and ${DEBOOTSTRAP} ${DEB_ARCH}/${DEB_TYPE}"

 ${FAKEROOT} ${DEBOOTSTRAP} --variant=buildd --foreign --arch=$DEB_ARCH $DEB_TYPE . http://httpredir.debian.org/debian || exit 1
 exit 0


>
> Alex Bennée (5):
>   tests/docker/docker.py: docker_dir outside build
>   tests/docker/docker.py: support --include-executable
>   tests/docker/docker.py: check and run .pre script
>   tests/docker/dockerfiles: new debian-bootstrap.docker
>   tests/docker/docker.py: add update operation
>
> Fam Zheng (3):
>   docker: More sensible run script
>   docker: Fix exit code if $CMD failed
>   docker: Don't start a container that doesn't exist
>
>  tests/docker/Makefile.include                    |   9 +-
>  tests/docker/docker.py                           | 150 +++++++++++++++++++++--
>  tests/docker/dockerfiles/debian-bootstrap.docker |  21 ++++
>  tests/docker/dockerfiles/debian-bootstrap.pre    |  87 +++++++++++++
>  tests/docker/run                                 |  16 ++-
>  5 files changed, 267 insertions(+), 16 deletions(-)
>  create mode 100644 tests/docker/dockerfiles/debian-bootstrap.docker
>  create mode 100755 tests/docker/dockerfiles/debian-bootstrap.pre


--
Alex Bennée

  parent reply	other threads:[~2016-07-19  9:58 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-19  8:16 [Qemu-devel] [PATCH v6 0/8] docker: Support building qemu-user powered docker test images Fam Zheng
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 1/8] tests/docker/docker.py: docker_dir outside build Fam Zheng
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 2/8] tests/docker/docker.py: support --include-executable Fam Zheng
2016-07-19 11:06   ` Daniel P. Berrange
2016-07-19 11:28     ` Alex Bennée
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 3/8] tests/docker/docker.py: check and run .pre script Fam Zheng
2016-07-19  9:29   ` Alex Bennée
2016-07-19 11:44     ` Fam Zheng
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 4/8] tests/docker/dockerfiles: new debian-bootstrap.docker Fam Zheng
2016-07-19  9:00   ` Alex Bennée
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 5/8] tests/docker/docker.py: add update operation Fam Zheng
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 6/8] docker: More sensible run script Fam Zheng
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 7/8] docker: Fix exit code if $CMD failed Fam Zheng
2016-07-19  8:16 ` [Qemu-devel] [PATCH v6 8/8] docker: Don't start a container that doesn't exist Fam Zheng
2016-07-19 10:43   ` Alex Bennée
2016-07-19  9:58 ` Alex Bennée [this message]
2016-07-19 10:59 ` [Qemu-devel] [PATCH v6 0/8] docker: Support building qemu-user powered docker test images Alex Bennée

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87k2gilzkc.fsf@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=famz@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).