diff options
author | Alex Bennée | 2021-05-12 12:20:22 +0200 |
---|---|---|
committer | Alex Bennée | 2021-05-18 10:35:35 +0200 |
commit | 3218d829e36ac46bfd0f49bf02f234a1450fadcf (patch) | |
tree | 68b6bf7462968354297aa7869c9e243396bf2824 /tests/docker | |
parent | Merge remote-tracking branch 'remotes/vivier2/tags/trivial-branch-for-6.1-pul... (diff) | |
download | qemu-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-x | tests/docker/docker.py | 9 |
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() |