I’m adapting a workflow to be useable inside a scatter construct - for this I am gathering all output files into a directory which has a unique name for each workflow (as the files themselves have generic names), and returning these directories to the user instead.
My working example of this tool is here:
My cut-down running script is
md_step15_only.cwl, the tool that it is calling is
I’ve tested this with the cwl-runner tool. The workflow does what I want if I pre-create the directories using
mkdir (see script
run_script_mkdir_working.sh), and also if I use the
--copy-outputs flag (see script
run_script_copy_working.sh). But if I don’t pre-create the directory, and allow cwl-tool to do it’s own thing, what I get in the final directory is links to the original files, not copies of them.
Is there a way for me to write this script so that the default behaviour is to return copies of the files, not links?
Also - this tool does not work using TOIL-CWL (see the
run_script_toil_not_working.sh script, and
md_step15_only_toil.cwl - as it needs to use standard 1.2.0-rev5). I think that this is because the second step in the process can’t access the directory created in the first step, but I’m having trouble getting useful information out from the log files. Can anyone advise on what might be going wrong, and how I might fix it?