I read that there is interim support for podman (docker replacement) in CWL.
CWL, as a standard, does not specify that only certain software container engines are supported. So from the perspective of the standard there is nothing to prevent any CWL aware runner using
podman instead of
udocker , and so on.
cwl-runner is the generic name for any CWL capable runner. A well known CWL runner is the CWL reference implementation,
cwltool. There does not appear to be any interim support for
cwltool: https://github.com/common-workflow-language/cwltool/search?q=podman However, support for additional non-
docker software container runtimes has been identified as a desired enhancement to
I am running CWL via conda,
I think you are referring to
cwltool's conda package?
is the version difference too great to support podman at the moment ?
According to https://developers.redhat.com/blog/2019/02/21/podman-and-buildah-for-docker-users/ (under “Podman commands are the same as Docker’s”)
podman can act identically to
docker. Seems that in some Linux distribution you can install the
podman-docker package; if not you need to otherwise cause
podman to be available as
docker. To confirm that this works I recommend running the CWL conformance tests: https://github.com/common-workflow-language/common-workflow-language/blob/0c28d10a188e5da9a730d4db35511377337af9c1/CONFORMANCE_TESTS.md
If this is successful then
cwltool can be enhanced to use
docker is not available.
Are there alternative way to get the latest CWL (1.2?) without building lots of packages ? I am running CentOS 8.2
The most recommend method is to make a Python 3 virtualenv and to
pip install cwltool inside of it. I’m not able to personally support other methods on installing the CWL reference runner; perhaps others can.
Good luck and let us know!