diff mbox series

[v1,02/25] tests/docker: fix copying of executable in "update"

Message ID 20210419145435.14083-3-alex.bennee@linaro.org
State New
Headers show
Series testing/next (hexagon/tricore/test cc) | expand

Commit Message

Alex Bennée April 19, 2021, 2:54 p.m. UTC
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>
---
 tests/docker/docker.py | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

Comments

Willian Rampazzo April 23, 2021, 5:35 p.m. UTC | #1
On Mon, Apr 19, 2021 at 11:54 AM Alex Bennée <alex.bennee@linaro.org> wrote:
>
> 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>
> ---
>  tests/docker/docker.py | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
>

Reviewed-by: Willian Rampazzo <willianr@redhat.com>
diff mbox series

Patch

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 @@  def run(self, args, argv):
         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()