Optional docker string
open | Created 2017-08-21 | Last updated 2018-09-05| Posted by ruchim | See in Github


User Requested Improvement WDL Developer Joy


If docker is specified by an optional string, and that string is undefined, Cromwell tries to run that task anyways and fails. It would be nice if the task never ran and reported the missing docker value to the user.

Given this workflow:

workflow w {
  call t 
}

task t {
    String? dockerStr
	command {}
	runtime {
		docker: "${dockerStr}"
	}
}

A job gets started and the operations metadata shows a "null" value for the docker:

...
 "metadata": {
    "startTime": "2017-08-21T15:53:17Z",
    "request": {
      "@type": "type.googleapis.com/google.genomics.v1alpha2.RunPipelineRequest",
      "ephemeralPipeline": {
        "name": "w",
        "description": "",
        "projectId": "broad-firecloud-dsde",
        "docker": {
          "imageName": "null",
          "cmd": "/bin/bash /cromwell_root/exec.sh"
        } 
...

Return to top