WDL (workflow description language) 介绍
WDL是什么?
WDL( workflow description language 工作流描述语言) 是Broadinstitute推出的一种,用于描述流程的编程语言。与一般通用编程语言(C、Python、R、Perl等)不同,WDL语言开发的目标是为了更好的进行在集群环境下进行任务调度
WDL 版本
WDL目前分为三个主要版本
- WDL Draft-2
- WDL version 1.0
- WDL version 1.1
三个版本之间存在一定的语法差异。目前Cromwell官方支持的版本只有 Draft-2 和 WDL 1.0. WDL version 1.1 虽然在一些场合号称支持,但是不保证其正确运行。 另外一方面,由于broad在发布GATK 流程的过程中,采用的WDL版本非常混乱。因此在github上发布的流程,只有在Terra平台上可以正常运行。 例如:nested scatter block 目前cromwell并不支持(目前官方的说法是,只有通过sub workflow的方式才可以绕开这个问题)
WDL 语法规范
WDL的语法规范由BroadInstitute维护,用户可参见以下列表
WDL版本 | 链接 |
---|---|
version 1.0 | https://github.com/openwdl/wdl/blob/main/versions/1.0/SPEC.md |
version 1.1 | https://github.com/openwdl/wdl/blob/main/versions/1.1/SPEC.md |