From c48b0a13b9dbf83f76822d5ccfe42c23cfaed1b5 Mon Sep 17 00:00:00 2001 From: Owen Solberg Date: Tue, 8 Jan 2019 17:56:16 -0800 Subject: bug fix: copy permissions when staging (#10285) Fixes #10284 #10152 replaced shutil.move with llnl's copy and copy_tree for resources. This did not copy permissions so led to later failures if an executable was copied (e.g. a configure script). This uses install/install_tree instead, which preserve permissions. --- lib/spack/spack/stage.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/spack/spack/stage.py b/lib/spack/spack/stage.py index b337ae5617..fb0df21e6f 100644 --- a/lib/spack/spack/stage.py +++ b/lib/spack/spack/stage.py @@ -15,7 +15,7 @@ from six import iteritems from six.moves.urllib.parse import urljoin import llnl.util.tty as tty -from llnl.util.filesystem import mkdirp, can_access, copy, copy_tree +from llnl.util.filesystem import mkdirp, can_access, install, install_tree from llnl.util.filesystem import remove_if_dead_link, remove_linked_tree import spack.paths @@ -548,9 +548,9 @@ class ResourceStage(Stage): src = os.path.realpath(source_path) if os.path.isdir(src): - copy_tree(src, destination_path) + install_tree(src, destination_path) else: - copy(src, destination_path) + install(src, destination_path) @pattern.composite(method_list=[ -- cgit v1.2.3-60-g2f50