I’m trying to write a tool for running fgbio ExtractUmisFromBam
and am having some difficulty with a particular argument. The molecular_index_tags
argument expects a string of SAM tags of any length. When I provide a string I receive the error Error: SAM tags must be of length two
so I have tried instead to have my tool accept an array of strings, but that also fails with the same error. When running fgbio manually without using CWL I do not encounter this issue. Clearly I am not providing the input string properly in CWL, but I’m at a loss as to what else to do. Any help would be appreciated.
My tool so far is:
cwlVersion: v1.2
class: CommandLineTool
hints:
DockerRequirement:
dockerPull: quay.io/biocontainers/fgbio
baseCommand: ["fgbio", "ExtractUmisFromBam"]
arguments:
- prefix: "--output"
valueFrom: $(inputs.sampleID).fgbio.bam
inputs:
input:
type: File
inputBinding:
position: 1
prefix: "--input"
sampleID:
type: string
read_structure:
type: string
inputBinding:
position: 2
prefix: "--read-structure"
molecular_index_tags:
type: string[]
inputBinding:
position: 3
itemSeparator: ' '
shellQuote: false
prefix: "--molecular-index-tags"
single_tag:
type: string
inputBinding:
position: 4
prefix: "--single-tag"
outputs:
output_bam:
type: File
outputBinding:
glob: "*.fgbio.bam"
My input is structured like so
input:
class: File
format: edam:format_2572
path: ./test_files/input.bam
sampleID: "test_sample"
read_structure: "8M143T 8M143T"
molecular_index_tags:
- "ZA"
- "ZB"
single_tag: "RX"
The error I’m receiving is
Exception: ValidationException
Error: SAM tags must be of length two: ZA ZB