common-workflow-library / legacy

Deprecated
https://github.com/common-workflow-library/bio-cwl-tools
Apache License 2.0
100 stars 62 forks source link

WIP LobSTR v1.0 upgrade #126

Closed StarvingMarvin closed 7 years ago

StarvingMarvin commented 7 years ago

@mr-c @tetron I've added another commit. Current state is that with bunny, it completes but hangs, and cwltool fails because expressions don't get path value, only location.

StarvingMarvin commented 7 years ago

I've fixed the last issue: I failed to translate draft-3's workflow output source to v1's outputSource.

Basically, except for general v1 beautifying, and fixing docker image issue, only thing I changed was expression for secondary files in lobstr and allelotype. The original expressions created additional 'ref' in name, and I wasn't really into debugging why.

bamuzesc commented 7 years ago

I replaced description with doc but I still get errors:

bamuzesc@mrcdev:~$ cwltool lobSTR-workflow.cwl lobSTR-demo.json
/home/bamuzesc/.local/bin/cwltool 1.0.20170111193653
Resolved 'lobSTR-workflow.cwl' to 'file:///home/bamuzesc/lobSTR-workflow.cwl'
Exception on step 'lobSTR'
[step lobSTR] Cannot make job: Expression evaluation error:

evalmachine.<anonymous>:124
(function(){return ((self.path.replace(/ref$/, "chromsizes.tab")));})()
                              ^

TypeError: Cannot read property 'replace' of undefined
    at evalmachine.<anonymous>:124:31
    at evalmachine.<anonymous>:124:70
    at ContextifyScript.Script.runInNewContext (vm.js:18:15)
    at Object.exports.runInNewContext (vm.js:49:17)
    at Socket.<anonymous> ([eval]:10:55)
    at emitOne (events.js:77:13)
    at Socket.emit (events.js:169:7)
    at readableAddChunk (_stream_readable.js:153:18)
    at Socket.Readable.push (_stream_readable.js:111:10)
    at Pipe.onread (net.js:537:20)
[workflow lobSTR-workflow.cwl] outdir is /tmp/tmp95ikjN
{}
Final process status is permanentFail
mr-c commented 7 years ago

@StarvingMarvin @bamuzesc Yeah, I think this is a cwltool error -- it isn't filling out the path property on the File object.

Possibly related to https://github.com/common-workflow-language/cwltool/issues/268

mr-c commented 7 years ago

@StarvingMarvin can you move your branch to this repo so we can commit some fixes?

bamuzesc commented 7 years ago

Performed the following fixes in lobSTR-tool.cwl (lines 64-66) and allelotype.cwl (lines 61-63):

  - $(self.location.replace(/ref\.fasta$/, "chromsizes.tab"))
  - $(self.location.replace(/ref\.fasta$/, "mergedref.bed"))
  - $(self.location.replace(/\.fasta$/, ""))_map.tab

This renders the workflow functional with the default reference data.