From: "Alex Bennée" <alex.bennee@linaro.org>
To: Fam Zheng <famz@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH RFC v4 3/4] docker: Support "QEMU_CHROOT" in dockerfiles
Date: Mon, 11 Jul 2016 12:31:46 +0100 [thread overview]
Message-ID: <87poqk9zrx.fsf@linaro.org> (raw)
In-Reply-To: <1468207242-5015-4-git-send-email-famz@redhat.com>
Fam Zheng <famz@redhat.com> writes:
> This allows a docker file to say "ENV QEMU_CHROOT /path/to/new/root" to
> indicate that the test execution should be done in a chroot in the
> container.
>
> Bind mount dev,sys,proc into QEMU_CHROOT to make them avaiable for
> testing scripts.
>
> The SYS_ADMIN is a required capability for mount, add it to the
> docker run command line.
>
> Signed-off-by: Fam Zheng <famz@redhat.com>
> ---
> tests/docker/Makefile.include | 1 +
> tests/docker/run | 12 ++++++++++++
> 2 files changed, 13 insertions(+)
>
> diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
> index c5546ee..e9821ba 100644
> --- a/tests/docker/Makefile.include
> +++ b/tests/docker/Makefile.include
> @@ -107,6 +107,7 @@ docker-run-%: docker-qemu-src
> $(call quiet-command,\
> $(SRC_PATH)/tests/docker/docker.py run $(if $V,,--rm) \
> -t \
> + --cap-add SYS_ADMIN \
> $(if $(DEBUG),-i,--net=none) \
> -e TARGET_LIST=$(TARGET_LIST) \
> -e EXTRA_CONFIGURE_OPTS=$(EXTRA_CONFIGURE_OPTS) \
> diff --git a/tests/docker/run b/tests/docker/run
> index 38ce789..4e80cc3 100755
> --- a/tests/docker/run
> +++ b/tests/docker/run
> @@ -19,6 +19,18 @@ fi
>
> BASE="$(dirname $(realpath $0))"
>
> +# cp files into the chroot and execute there
> +if test -n "$QEMU_CHROOT"; then
> + mkdir -p $QEMU_CHROOT/$BASE
> + cp $BASE/* $QEMU_CHROOT/$BASE
> + QEMU_CHROOT_SAVE="$QEMU_CHROOT"
> + for bp in dev sys proc; do
> + mount --bind /$bp $QEMU_CHROOT/$bp
So this misses out /dev/pts which is a subdir of dev which leads to
messages like:
debconf: delaying package configuration, since apt-utils is not
installed
Fetched 103 kB in 0s (133 kB/s)
E: Can not write log (Is /dev/pts mounted?) - posix_openpt (2: No such
file or directory)
> + done
> + QEMU_CHROOT="" chroot $QEMU_CHROOT_SAVE $BASE/run "$@"
> + exit 0
> +fi
> +
> # Prepare the environment
> . /etc/profile || true
> export PATH=/usr/lib/ccache:$PATH
--
Alex Bennée
next prev parent reply other threads:[~2016-07-11 11:31 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-11 3:20 [Qemu-devel] [PATCH RFC v4 0/4] docker: Support building qemu-user powered docker test images Fam Zheng
2016-07-11 3:20 ` [Qemu-devel] [PATCH RFC v4 1/4] docker: More sensible run script Fam Zheng
2016-07-11 3:20 ` [Qemu-devel] [PATCH RFC v4 2/4] docker: Fix exit code if $CMD failed Fam Zheng
2016-07-11 12:58 ` Eric Blake
2016-07-11 3:20 ` [Qemu-devel] [PATCH RFC v4 3/4] docker: Support "QEMU_CHROOT" in dockerfiles Fam Zheng
2016-07-11 9:20 ` Paolo Bonzini
2016-07-11 10:08 ` Alex Bennée
2016-07-11 10:37 ` Paolo Bonzini
2016-07-11 11:31 ` Alex Bennée [this message]
2016-07-11 12:17 ` Alex Bennée
2016-07-11 3:20 ` [Qemu-devel] [PATCH RFC v4 4/4] docker: Add debootstrap-arm image Fam Zheng
2016-07-11 19:06 ` Alex Bennée
2016-07-12 1:40 ` Fam Zheng
2016-07-12 14:16 ` Alex Bennée
2016-07-11 9:09 ` [Qemu-devel] [PATCH RFC v4 0/4] docker: Support building qemu-user powered docker test images Alex Bennée
2016-08-22 9:32 ` no-reply
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=87poqk9zrx.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 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.