I want to split out some off my settings to a central configuration file and decided to use the mixin keyword. I started out with this example: http://www.commonwl.org/v1.0/SchemaSalad.html#Mixin
cwlVersion: "v1.0" class: Workflow inputs: $mixin: settings.yml inpFile: type: File ...
java6: type: string default: "/opt/java6/bin/java" java8: type: string default: "/opt/java8/bin/java"
Running this through cwltool (v1.0.20161110155008) I get the following error:
Tool definition failed validation: While checking field `inputs` While checking object `file:///DEEP_fhgfs/projects/karln/WGBS/161007.cwlPlayground/git/BS-seq-pipelines/CWL/pipelines/postMap/bisSNP-realignPipe.yml#$mixin` Field `type` contains undefined reference to `../settings.yml`, tried [u'file:///DEEP_fhgfs/projects/karln/WGBS/161007.cwlPlayground/git/BS-seq-pipelines/CWL/pipelines/postMap/bisSNP-realignPipe.yml#../settings.yml']
My question is two-fold:
- What am I doing wrong? I assume that I'm formatting the settings.yml file wrongly. (Including the curly brackets from the example renders me another error)
- Is there a better way to provide global settings for multiple tools?
(Edit: after trying to figure it out for a while this is as far as I got. I also found an issue on the CWL-github page referring to something similar)