summaryrefslogtreecommitdiffstats
path: root/tests/docker
diff options
context:
space:
mode:
authorAlex Bennée2021-05-12 12:20:22 +0200
committerAlex Bennée2021-05-18 10:35:35 +0200
commit3218d829e36ac46bfd0f49bf02f234a1450fadcf (patch)
tree68b6bf7462968354297aa7869c9e243396bf2824 /tests/docker
parentMerge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.1-pul... (diff)
downloadqemu-3218d829e36ac46bfd0f49bf02f234a1450fadcf.tar.gz
qemu-3218d829e36ac46bfd0f49bf02f234a1450fadcf.tar.xz
qemu-3218d829e36ac46bfd0f49bf02f234a1450fadcf.zip
tests/docker: fix copying of executable in "update"
We have the same symlink chasing problem when doing an "update" operation. Fix that. Based-on: 5e33f7fead ("tests/docker: better handle symlinked libs") Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Willian Rampazzo <willianr@redhat.com> Message-Id: <20210512102051.12134-3-alex.bennee@linaro.org>
Diffstat (limited to 'tests/docker')
-rwxr-xr-xtests/docker/docker.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index d28df4c140..0435a55d10 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -548,7 +548,14 @@ class UpdateCommand(SubCommand):
libs = _get_so_libs(args.executable)
if libs:
for l in libs:
- tmp_tar.add(os.path.realpath(l), arcname=l)
+ 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()