Are you able to post a working script in it's entirety. I tried putting the above together but it does not work for me
I still get errors
$ env PATH=`pwd`:$PATH cwl-runner io-redirection-cmd.cwl --in_file nicholas.txt --out_dir abc
/Users/u0079711/anaconda3/envs/rnaseq/bin/cwl-runner 1.0.20181217162649 Resolved 'io-redirection-cmd.cwl' to 'file:///Users/u0079711/projects/workflow-languages_git/CWL/io-redirection/take2/io-redirection-cmd.cwl' [job io-redirection-cmd.cwl] /private/tmp/docker_tmp19X9Uk$ sample_tool.sh \ /private/var/folders/qt/j80s9z1d4zxgfzty5kvc0hp0z_5035/T/tmpcQqP_M/stge4aa6191-78a1-4cc1-9bb4-fc52d124e4ba/nicholas.txt \ abc touch: abc//private/var/folders/qt/j80s9z1d4zxgfzty5kvc0hp0z_5035/T/tmpcQqP_M/stge4aa6191-78a1-4cc1-9bb4-fc52d124e4ba/nicholas.txt: No such file or directory Could not collect memory usage, job ended before monitoring began. [job io-redirection-cmd.cwl] Job error: Error collecting output for parameter 'out_file': io-redirection-cmd.cwl:31:7: Did not find output file with glob pattern: '['abc/nicholas.txt']' [job io-redirection-cmd.cwl] completed permanentFail {} Final process status is permanentFail
Yes, this is possible, here's the tutorial for
InitialWorkDirRequirement: http://www.commonwl.org/user_guide/15-staging/I think you are asking to create one or more directories to enclose each sample? If you could be more specific about what you need to do, that would help us help you :-)
Here is a very complex example where many input
Files are collected, renamed, and placed into a directory hierarchy:https://github.com/EBI-Metagenomics/ebi-metagenomics-cwl/blob/master/workflows/convert-to-v3-layout.cwl Permalink from today: https://github.com/EBI-Metagenomics/ebi-metagenomics-cwl/blob/886df9de6713e06228d2560c40f451155a196383/workflows/convert-to-v3-layout.cwl
But there is a good chance won't need something that complex
Yes your interpretation is correct! Sorry I was trying to not overcomplicate my question. I tried using
InitialWorkDirRequirementas such:[Errno 2] No such file or directory: /home/path/to/outputand it just told me that the directories did not exist, which made me wonder whether or not it can actually create those directories for you or if they have to exist to be "staged" alongside your inputs. The script itself requires the directories exist before running, but at least in my CWL script it also requires that. Is there a different way I need to set up
InitialWorkDirRequirementso that the directories are created?As an additional note, I've also tried this variation, but I think I am just misunderstanding how this works:
since I still get a
cwltool.errors.WorkflowException: Expression evaluation error: [Errno 13] Permission deniedWhere sample_tool.sh is just