Feature: add option to create view by copying/relocating files (#16480)

* add subcommand `spack view copy/relocate`

* update bash completions

* add copy/relocate commands to view tests

* allow copied views to be removed
This commit is contained in:
Greg Becker
2020-06-03 09:45:13 -07:00
committed by GitHub
parent 7aa9cb0f7a
commit 3347ef2de4
6 changed files with 108 additions and 17 deletions

View File

@@ -962,7 +962,7 @@ def add_files_to_view(self, view, merge_map):
bin_dir = self.spec.prefix.bin
for src, dst in merge_map.items():
if not path_contains_subdirectory(src, bin_dir):
view.link(src, dst)
view.link(src, dst, spec=self.spec)
elif not os.path.islink(src):
copy(src, dst)
if 'script' in get_filetype(src):
@@ -988,7 +988,7 @@ def add_files_to_view(self, view, merge_map):
orig_link_target = os.path.join(self.spec.prefix, realpath_rel)
new_link_target = os.path.abspath(merge_map[orig_link_target])
view.link(new_link_target, dst)
view.link(new_link_target, dst, spec=self.spec)
def remove_files_from_view(self, view, merge_map):
bin_dir = self.spec.prefix.bin