Sometimes it may be worth while to keep a copy of the
files being submitted.
else:
logger.warn("File %s doesn't exist.", a)
else:
logger.warn("File %s doesn't exist.", a)
- if opts.make_tree_from is not None:
- results.make_tree_from(opts.make_tree_from)
+ if opts.make_link_tree_from is not None:
+ results.make_tree_from(opts.make_tree_from, link=True)
+
+ if opts.copy_tree_from is not None:
+ results.make_tree_from(opts.make_tree_from, link=False)
if opts.fastq:
logger.info("Building fastq extraction scripts")
if opts.fastq:
logger.info("Building fastq extraction scripts")
parser.add_option_group(model)
# commands
commands = OptionGroup(parser, 'commands')
parser.add_option_group(model)
# commands
commands = OptionGroup(parser, 'commands')
- commands.add_option('--make-tree-from',
+ commands.add_option('--make-link-tree-from',
help="create directories & link data files",
default=None)
help="create directories & link data files",
default=None)
+ commands.add_option('--copy-tree-from',
+ help="create directories & copy data files",
+ default=None)
commands.add_option('--fastq', default=False, action="store_true",
help="generate scripts for making fastq files")
commands.add_option('--scan-submission', default=False, action="store_true",
commands.add_option('--fastq', default=False, action="store_true",
help="generate scripts for making fastq files")
commands.add_option('--scan-submission', default=False, action="store_true",
lib_path = os.path.join(basepath, lib_path)
self[lib_id] = lib_path
lib_path = os.path.join(basepath, lib_path)
self[lib_id] = lib_path
- def make_tree_from(self, source_path, destpath = None):
+ def make_tree_from(self, source_path, destpath = None, link=True):
"""Create a tree using data files from source path.
"""
if destpath is None:
"""Create a tree using data files from source path.
"""
if destpath is None:
raise IOError(
"{0} does not exist".format(source_pathname))
if not os.path.exists(target_pathname):
raise IOError(
"{0} does not exist".format(source_pathname))
if not os.path.exists(target_pathname):
- os.symlink(source_pathname, target_pathname)
+ if link:
+ os.symlink(source_pathname, target_pathname)
+ else:
+ os.copy(source_pathname, target_pathname)
LOGGER.info(
'LINK {0} to {1}'.format(source_pathname,
target_pathname))
LOGGER.info(
'LINK {0} to {1}'.format(source_pathname,
target_pathname))