CWL NO JSON object could be decoded
2
0
Entering edit mode
5.8 years ago
yifan wang ▴ 20

I run CWL as cwl-runner bwa_index.cwl index.yml And get ERROR Message as following /Users/yifanwang/Test/CWL_work/venv_cwl/bin/cwl-runner 1.0.20181217162649 Resolved 'bwa_index.cwl' to 'file:///Users/yifanwang/Test/CWL_work/bwa_index.cwl' Workflow error, try again with --debug for more information: Expression evaluation error:

No JSON object could be decoded
  
script was:
01 "use strict";
02 var inputs = {
03     "block_size": null,
04     "algorithm": null,
05     "reference": {
06         "basename": "reference.fa",
07         "nameroot": "reference",
08         "nameext": ".fa",
09         "location": "file:///Users/yifanwang/Test/CWL_work/reference.fa",
10         "path": "/private/var/folders/1m/zpv1ttyd3klg2ywkv8c_r4z40000gn/T/tmpjboEOm/stg52a9e9c2-5261-4d37-a158-54a58addce79/reference.fa",
11         "dirname": "/private/var/folders/1m/zpv1ttyd3klg2ywkv8c_r4z40000gn/T/tmpjboEOm/stg52a9e9c2-5261-4d37-a158-54a58addce79",
12         "class": "File",
13         "size": 3249912778
14     }
15 };
16 var self = null;
17 var runtime = {
18     "outdirSize": 1024,
19     "ram": 1024,
20     "cores": 1,
21     "tmpdirSize": 1024,
22     "tmpdir": "/private/var/folders/1m/zpv1ttyd3klg2ywkv8c_r4z40000gn/T/tmp4QfOHd",
23     "outdir": "/private/tmp/docker_tmpIRpon0"
24 };
25 (function(){return ((inputs.sequences));})()
stdout was: 'undefined'
stderr was: ''
CWL JSON • 1.8k views
ADD COMMENT
2
Entering edit mode
5.8 years ago
Tom ▴ 540

You reference $(inputs.sequences) in your InitialWorkDirRequirement as well as your outputBinding. "seqences" does not show up in your inputs field though. Hence the error occurs.

If i understand the workflow correctly, then it should be $(inputs.reference) / $(inputs.reference.basename).

ADD COMMENT
2
Entering edit mode

Thanks for your answer, it worked

ADD REPLY
0
Entering edit mode

You're welcome! Please use the checkmark-button on the left to "accept" the answer, so the thread will be marked as solved.

ADD REPLY
0
Entering edit mode
5.8 years ago
yifan wang ▴ 20

Script## bwa_index.cwl ##

class: CommandLineTool
cwlVersion: v1.0
$namespaces:
  sbg: 'https://www.sevenbridges.com/'
baseCommand:
  - bwa
  - index
inputs:
  - id: algorithm
    type: string?
    inputBinding:
      position: 0
      prefix: '-a'
    doc: |
      BWT construction algorithm: bwtsw or is (Default: auto)
  - id: block_size
    type: int?
    inputBinding:
      position: 0
      prefix: '-b'
    doc: >
      Block size for the bwtsw algorithm (effective with -a bwtsw) (Default:
      10000000)
  - id: reference
    type: File
    inputBinding:
      position: 1
      valueFrom: reference.fa
outputs:
  - id: output
    type: File
    outputBinding:
      glob: $(inputs.sequences.basename)
    secondaryFiles:
      - .amb
      - .ann
      - .bwt
      - .pac
      - .sa
doc: |
  Usage:   bwa index [options] <in.fasta>

  Options: -a STR    BWT construction algorithm: bwtsw or is [auto]
           -p STR    prefix of the index [same as fasta name]
           -b INT    block size for the bwtsw algorithm (effective with -a bwtsw) [10000000]
           -6        index files named as <in.fasta>.64.* instead of <in.fasta>.*

  Warning: `-a bwtsw' does not work for short genomes, while `-a is' and
           `-a div' do not work not for long genomes.
requirements:
  - class: InitialWorkDirRequirement
    listing:
      - $(inputs.sequences)
  - class: InlineJavascriptRequirement

index.yml
reference:
  class: File
  path: reference.fa
ADD COMMENT

Login before adding your answer.

Traffic: 2850 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6