cccnrc
March 18, 2021, 3:20pm
1
I am using CWL, just got a fresh install of cwltool (cwl-runner says its version 2.0) and the way I always used to specify secondaryFiles doesn’t work anymore, especially:
inputs:
- id: reference_fasta
type: File
inputBinding:
position: 1
prefix: '--reference'
secondaryFiles:
- $( inputs.reference_index )
- $( inputs.reference_dict )
- id: reference_index
type: File
- id: reference_dict
type: File
does not recognize $( inputs.file ) format anymore, it keeps failing with:
ERROR Workflow error: can only concatenate str (not “dict”) to str
Any idea?
mrc
March 22, 2021, 5:08pm
2
Hello @cccnrc
I was not able to reproduce your error, sorry.
cwl-runner is just a shortcut to some CWL aware workflow engine or another. Most often it points to the CWL reference runner cwltool. What is your version of cwltool?
pip show cwltool
Here is what I tried:
$ cat 330.cwl
cwlVersion: v1.0
class: CommandLineTool
inputs:
- id: reference_fasta
type: File
inputBinding:
position: 1
prefix: '--reference'
secondaryFiles:
- $( inputs.reference_index )
- $( inputs.reference_dict )
- id: reference_index
type: File
- id: reference_dict
type: File
baseCommand: []
outputs: []
$ cwltool --validate 330.cwl
INFO /home/michael/cwltool/env3.9/bin/cwltool 3.0.20210319143721
INFO Resolved '330.cwl' to 'file:///home/michael/cwltool/330.cwl'
330.cwl is valid CWL.