I have a workflow that starts with untarring a file into a directory. In the second step, I need one file from that directory as parameter --genomeDir
for my tool.
Currently this is solved like so:
Workflow snippet:
star:
run: ../tools/STAR.cwl
in:
index: tar/output
fastq: [TUMOR_FASTQ_1, TUMOR_FASTQ_2]
out: [output]
Tool snippet:
inputs:
index:
type: Directory
(...)
arguments:
- valueFrom: $(inputs.index.path + "/ref_genome.fa.star.idx")
position: 0
prefix: --genomeDir
This works, but seems unnecessarily complex, and it also puts a prefix
in the arguments. How do I pass the file directly from the workflow? I'm thinking something along the lines of
index: $((tar/output).path + "/ref_genome.fa.star.idx")
And while we're at it, what if I did want to parse this inside the tool cwl, how do I do it in the inputs?
Great to hear!
FYI: You can have multiple outputs in your untaring step that give names to each of your input files: