From: Mark Berger Date: Mon, 5 Aug 2013 15:53:07 +0000 (-0400) Subject: tahoe cp -r now copies the top level directory with its children X-Git-Tag: allmydata-tahoe-1.10.1a1~154^2~3 X-Git-Url: https://git.rkrishnan.org/pf/content/%22file:/frontends/configuration.txt?a=commitdiff_plain;h=1c96039270f9489a52c5d514ee4702d31bd24c22;p=tahoe-lafs%2Ftahoe-lafs.git tahoe cp -r now copies the top level directory with its children --- diff --git a/src/allmydata/scripts/tahoe_cp.py b/src/allmydata/scripts/tahoe_cp.py index cf421ae0..965aa26f 100644 --- a/src/allmydata/scripts/tahoe_cp.py +++ b/src/allmydata/scripts/tahoe_cp.py @@ -654,8 +654,9 @@ class Copier: for (name,s) in source_files: self.attach_to_target(s, name, target) - for source in source_dirs: - self.assign_targets(source, target) + for (name, source) in source_dirs: + new_target = target.get_child_target(name) + self.assign_targets(source, new_target) self.progress("targets assigned, %s dirs, %s files" % (len(self.targetmap), self.files_to_copy)) @@ -763,7 +764,9 @@ class Copier: for name,source in source_infos: if isinstance(source, (LocalDirectorySource, TahoeDirectorySource)): source.populate(True) - graphs.append(source) + # Remove trailing slash (if applicable) and get dir name + name = os.path.basename(os.path.normpath(name)) + graphs.append((name, source)) return graphs