Skip to content

Commit 9ad4594

Browse files
committed
mount portidr as ro in batch mode
In batch mode we don't drop into a shell. Therefore, it's safe to mount it as read-only as no modifications would happen.
1 parent e43d8d3 commit 9ad4594

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

ebuildtester/docker.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -149,10 +149,9 @@ def _setup_container(self, docker_image):
149149
docker = subprocess.Popen(docker_args)
150150
docker.wait()
151151

152-
def _create_container(self, docker_image, local_portage, overlays):
152+
def _create_container(self, docker_image, portdir, overlays):
153153
"""Create new container."""
154154

155-
156155
cache_dir = user_cache_dir("ebuildtester")
157156
os.makedirs(cache_dir, exist_ok=True)
158157

@@ -162,6 +161,11 @@ def _create_container(self, docker_image, local_portage, overlays):
162161
pkgdir = "{}/packages".format(cache_dir)
163162
os.makedirs(pkgdir, exist_ok=True)
164163

164+
if options.OPTIONS.batch:
165+
portdir_opt = "ro"
166+
else:
167+
portdir_opt = "rw"
168+
165169
docker_args = options.OPTIONS.docker_command \
166170
+ ["create",
167171
"--tty",
@@ -172,9 +176,9 @@ def _create_container(self, docker_image, local_portage, overlays):
172176
"--security-opt", "apparmor:unconfined",
173177
"--device", "/dev/fuse",
174178
"--workdir", "/root",
175-
"--volume", "%s:/var/db/repos/gentoo" % local_portage,
176-
"--volume", "%s:/var/cache/distfiles" % distdir,
177-
"--volume", "%s:/var/cache/binpkgs" % pkgdir]
179+
"--volume", f"{portdir}:/var/db/repos/gentoo:{portdir_opt}",
180+
"--volume", f"{distdir}:/var/cache/distfiles",
181+
"--volume", f"{pkgdir}:/var/cache/binpkgs"]
178182

179183
if options.OPTIONS.storage_opt:
180184
for s in options.OPTIONS.storage_opt:

0 commit comments

Comments
 (0)