7 arvados.job_setup.one_task_per_input_file(if_sequence=0, and_end_task=True,
10 task = arvados.current_task()
12 input_file = arvados.gettaskparam('input')
14 result = re.match(r"(^[a-f0-9]{32}\+\d+)(\+\S+)*(/.*)(/.*)?$", input_file)
16 outdir = os.path.join(task.tmpdir, "output")
21 cr = arvados.CollectionReader(re.group(1))
23 if re.group(3) != None:
24 streamname += re.group(2)
25 filename = re.group(3)[1:]
27 filename = re.group(2)[1:]
31 streamreader = filter(lambda s: s.name() == streamname, cr.all_streams())[0]
32 filereader = stream.files()[filename]
33 rc = subprocess.call("dtrx", "-r", "-n", arvados.get_task_param_mount('input'))
35 out.write_directory_tree(outdir, max_manifest_depth=0)
36 arvados.task_set_output(out.finish())
38 arvados.task_set_output(streamname + filereader.as_manifest()[1:])