Entering edit mode
6.3 years ago
a.james
▴
240
Dear All,
I have a CWL script to run a python script. The commad line tool version of CWL is as following,
cwlVersion: v1.0
class: CommandLineTool
doc: Spladder
baseCommand: [python, sladder.py]
requirements:
- class: InlineJavascriptRequirement
- class: InitialWorkDirRequirement
listing:
- entry: "$({class: 'Directory', listing: []})"
entryname: $(inputs.spladder_outDir)
writable: true
inputs:
spladder_gtf:
type: File
inputBinding:
position: 1
prefix: -a
spladder_bams:
type: File[]
inputBinding:
position: 2
prefix: -b
itemSeparator: ","
secondaryFiles: .bai
spladder_outDir:
type: string
inputBinding:
position: 3
prefix: -o
spladder_phase2:
type: string
inputBinding:
position: 4
prefix: -T
spladder_confidence:
type: int
inputBinding:
position: 4
prefix: -c
spladder_merge_graphs:
type: string
inputBinding:
position: 5
prefix: -M
spladder_alt:
type: string
inputBinding:
position: 7
prefix: -t
spladder_RL:
type: int
inputBinding:
position: 8
prefix: -n
spladder_primary_alignment:
type: string
inputBinding:
position: 9
prefix: -P
outputs:
spladder_out_dir1:
type: Directory
outputBinding:
glob: $(inputs.spladder_outDir)/lad
spladder_out_dir2:
type: Directory
outputBinding:
glob: $(inputs.spladder_outDir)
spladderFile:
type: File
outputBinding:
glob: $(inputs.spladder_outDir)/lad/genes_graph_conf3.merge_graphs.pickle
And the YML file looks like,
spladder_gtf:
class: File
path: /ur/home/gencode.v19.annotation.hs37d5_chr.spladder.gtf
spladder_outDir: ladder_out
spladder_bams: [
{class: File, path: /cluster/work/sampleA.bam},
{class: File, path: /cluster/work/sampleB.bam}
]
spladder_confidence: 2
spladder_merge_graphs: merge_graphs
spladder_alt: alt_3prime
spladder_RL: 100
spladder_phase2: y
spladder_primary_alignment: y
I execute the above as following cwltool lad.cwl lad.yml
, it is throwing the following error,
lad.cwl:77:4: Did not find output file with glob pattern: '['./ladder_out/lad/genes_graph_conf3.merge_graphs.pickle']'
The directory ladder_out is not existing and the python script create it while executing.