Closed mr-c closed 6 years ago
Thanks for the suggestion - this makes sense, but I think it'll be best if the docker container which is required is specifies the path of the executable in an environmental variable like $GATK
(as suggested here https://software.broadinstitute.org/gatk/documentation/quickstart.php). Moving DockerRequirement
to hints
also seems like a good idea
From v1.3 (#3), this no longer depends on hgi's own docker container, but rather https://hub.docker.com/r/broadinstitute/gatk/ and https://hub.docker.com/r/broadinstitute/gatk3/. These docker containers don't have the gatk jar in JAVAPATH, so setting the baseCommand as above would not work with these docker containers. If you want to make the generated cwl files work with other containers, you could set both the options --docker_container_name
and --gatk_location
A key principle of CWL is separation of concerns between the science/research and operational details.
I've sent a PR to update the official GATK Docker container to set the JAVAPATH, but you could extend it on your own for now
https://github.com/wtsi-hgi/gatk-cwl-generator/blob/master/gatkcwlgenerator/json2cwl.py#L60
The generated CWL descriptions will be more portable if the dependency on this particular container is loosened:
JAVAPATH
environment in the container'sDockerfile
to include the location the GATK jar is installed to (/gatk
)DockerRequirement
to underhints