From: "Alex Bennée" <alex.bennee@linaro.org>
To: qemu-devel@nongnu.org
Cc: fam@euphon.net, berrange@redhat.com,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
f4bug@amsat.org, stefanha@redhat.com, crosa@redhat.com,
pbonzini@redhat.com, "Alex Bennée" <alex.bennee@linaro.org>,
aurelien@aurel32.net
Subject: [PATCH v1 2/7] tests/docker: make executable an optional argument to "update"
Date: Wed, 10 Mar 2021 19:23:26 +0000 [thread overview]
Message-ID: <20210310192331.29284-3-alex.bennee@linaro.org> (raw)
In-Reply-To: <20210310192331.29284-1-alex.bennee@linaro.org>
We're going to extend the abilities of the command shortly.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/Makefile.include | 2 +-
tests/docker/docker.py | 56 ++++++++++++++++++-----------------
2 files changed, 30 insertions(+), 28 deletions(-)
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 7cab761bf5..8f66049dcc 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -245,7 +245,7 @@ docker-run: docker-qemu-src
$(if $(EXECUTABLE), \
$(call quiet-command, \
$(DOCKER_SCRIPT) update \
- $(IMAGE) $(EXECUTABLE), \
+ $(IMAGE) --executable $(EXECUTABLE), \
" COPYING $(EXECUTABLE) to $(IMAGE)"))
$(call quiet-command, \
$(DOCKER_SCRIPT) run \
diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index 0435a55d10..2352fdcd24 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -523,7 +523,7 @@ class UpdateCommand(SubCommand):
def args(self, parser):
parser.add_argument("tag",
help="Image Tag")
- parser.add_argument("executable",
+ parser.add_argument("--executable",
help="Executable to copy")
def run(self, args, argv):
@@ -532,35 +532,37 @@ def run(self, args, argv):
tmp = tempfile.NamedTemporaryFile(suffix="dckr.tar.gz")
tmp_tar = TarFile(fileobj=tmp, mode='w')
- # Add the executable to the tarball, using the current
- # configured binfmt_misc path. If we don't get a path then we
- # only need the support libraries copied
- ff, enabled = _check_binfmt_misc(args.executable)
-
- if not enabled:
- print("binfmt_misc not enabled, update disabled")
- return 1
-
- if ff:
- tmp_tar.add(args.executable, arcname=ff)
-
- # Add any associated libraries
- libs = _get_so_libs(args.executable)
- if libs:
- for l in libs:
- so_path = os.path.dirname(l)
- name = os.path.basename(l)
- real_l = os.path.realpath(l)
- try:
- tmp_tar.add(real_l, arcname="%s/%s" % (so_path, name))
- except FileNotFoundError:
- print("Couldn't add %s/%s to archive" % (so_path, name))
- pass
-
# Create a Docker buildfile
df = StringIO()
df.write(u"FROM %s\n" % args.tag)
- df.write(u"ADD . /\n")
+
+ if args.executable:
+ # Add the executable to the tarball, using the current
+ # configured binfmt_misc path. If we don't get a path then we
+ # only need the support libraries copied
+ ff, enabled = _check_binfmt_misc(args.executable)
+
+ if not enabled:
+ print("binfmt_misc not enabled, update disabled")
+ return 1
+
+ if ff:
+ tmp_tar.add(args.executable, arcname=ff)
+
+ # Add any associated libraries
+ libs = _get_so_libs(args.executable)
+ if libs:
+ for l in libs:
+ so_path = os.path.dirname(l)
+ name = os.path.basename(l)
+ real_l = os.path.realpath(l)
+ try:
+ tmp_tar.add(real_l, arcname="%s/%s" % (so_path, name))
+ except FileNotFoundError:
+ print("Couldn't add %s/%s to archive" % (so_path, name))
+ pass
+
+ df.write(u"ADD . /\n")
df_bytes = BytesIO(bytes(df.getvalue(), "UTF-8"))
--
2.20.1
next prev parent reply other threads:[~2021-03-10 19:28 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-10 19:23 [PATCH v1 0/7] testing/next (hexagon 2, electric boogaloo) Alex Bennée
2021-03-10 19:23 ` [PATCH v1 1/7] tests/docker: fix copying of executable in "update" Alex Bennée
2021-03-10 19:23 ` Alex Bennée [this message]
2021-03-10 19:23 ` [PATCH v1 3/7] tests/docker: allow "update" to add the current user Alex Bennée
2021-03-10 19:23 ` [PATCH v1 4/7] tests/docker: add "fetch" sub-command Alex Bennée
2021-03-10 20:13 ` Philippe Mathieu-Daudé
2021-03-10 19:23 ` [PATCH v1 5/7] docker: Add Hexagon image Alex Bennée
2021-03-10 19:23 ` [PATCH v1 6/7] tests/tcg: Use Hexagon Docker image Alex Bennée
2021-03-10 19:23 ` [PATCH v1 7/7] gitlab: add build-user-hexagon test Alex Bennée
2021-03-10 19:45 ` [PATCH v1 0/7] testing/next (hexagon 2, electric boogaloo) 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=20210310192331.29284-3-alex.bennee@linaro.org \
--to=alex.bennee@linaro.org \
--cc=aurelien@aurel32.net \
--cc=berrange@redhat.com \
--cc=crosa@redhat.com \
--cc=f4bug@amsat.org \
--cc=fam@euphon.net \
--cc=pbonzini@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/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).