[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v1 3/7] tests/docker: allow "update" to add the current user
From: |
Alex Bennée |
Subject: |
[PATCH v1 3/7] tests/docker: allow "update" to add the current user |
Date: |
Wed, 10 Mar 2021 19:23:27 +0000 |
The current user functionality is used for cross compiling to avoid
complications with permissions when building test programs. However
for images that come from the registry we still need the ability to
add the user after the fact.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/docker.py | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index 2352fdcd24..86d31a5fe6 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -517,7 +517,7 @@ def run(self, args, argv):
class UpdateCommand(SubCommand):
- """ Update a docker image with new executables. Args: <tag> <executable>"""
+ """ Update a docker image. Args: <tag> <actions>"""
name = "update"
def args(self, parser):
@@ -525,6 +525,9 @@ def args(self, parser):
help="Image Tag")
parser.add_argument("--executable",
help="Executable to copy")
+ parser.add_argument("--add-current-user", "-u", dest="user",
+ action="store_true",
+ help="Add the current user to image's passwd")
def run(self, args, argv):
# Create a temporary tarball with our whole build context and
@@ -564,6 +567,13 @@ def run(self, args, argv):
df.write(u"ADD . /\n")
+ if args.user:
+ uid = os.getuid()
+ uname = getpwuid(uid).pw_name
+ df.write("\n")
+ df.write("RUN id %s 2>/dev/null || useradd -u %d -U %s" %
+ (uname, uid, uname))
+
df_bytes = BytesIO(bytes(df.getvalue(), "UTF-8"))
df_tar = TarInfo(name="Dockerfile")
--
2.20.1
- [PATCH v1 0/7] testing/next (hexagon 2, electric boogaloo), Alex Bennée, 2021/03/10
- [PATCH v1 2/7] tests/docker: make executable an optional argument to "update", Alex Bennée, 2021/03/10
- [PATCH v1 6/7] tests/tcg: Use Hexagon Docker image, Alex Bennée, 2021/03/10
- [PATCH v1 3/7] tests/docker: allow "update" to add the current user,
Alex Bennée <=
- [PATCH v1 1/7] tests/docker: fix copying of executable in "update", Alex Bennée, 2021/03/10
- [PATCH v1 5/7] docker: Add Hexagon image, Alex Bennée, 2021/03/10
- [PATCH v1 4/7] tests/docker: add "fetch" sub-command, Alex Bennée, 2021/03/10
- [PATCH v1 7/7] gitlab: add build-user-hexagon test, Alex Bennée, 2021/03/10
- Re: [PATCH v1 0/7] testing/next (hexagon 2, electric boogaloo), no-reply, 2021/03/10