Achelous Cromwell 工作流管理
Achelous 平台支持通过 Cromwell 引擎运行 WDL 工作流。用户可以通过 biocli cromwell 系列命令,完成 Cromwell 工作流的提交、状态查看、输出获取、元数据查询和终止等操作。
Cromwell 工作流基本概念
Cromwell 是 Broad Institute 开发的 WDL(Workflow Description Language)工作流执行引擎。Achelous 平台集成了 Cromwell,用户可以:
- 使用标准的 WDL 语法编写工作流
- 通过
biocli cromwell submit提交工作流 - 通过
biocli cromwell status监控工作流运行状态 - 通过
biocli cromwell outputs获取工作流输出结果
提交 Cromwell 工作流
biocli cromwell submit [选项] <file>
<file>:WDL 工作流文件路径-i/--inputs=INPUTS:Cromwell 作业输入文件-o/--options=OPTIONS:包含执行配置选项的 JSON 文件-z/--zipfile=ZIPFILE:包含 WDL 源文件的 ZIP 文件(用于解析本地导入)
例如:
[demo@Cc1Xtcls]$ biocli cromwell submit workflow.wdl -i inputs.json
[demo@Cc1Xtcls]$ biocli cromwell submit workflow.wdl -i inputs.json -o options.json -z dependencies.zip
提交成功后会返回工作流 ID:
Workflow ID: c1a2b3d4-e5f6-7890-abcd-ef1234567890
查看 Cromwell 工作流状态
biocli cromwell status <id>
<id>:Cromwell 工作流 ID
例如:
[demo@Cc1Xtcls]$ biocli cromwell status c1a2b3d4
获取 Cromwell 工作流输出
biocli cromwell outputs <id>
<id>:Cromwell 工作流 ID
工作流运行完成后,可通过此命令获取所有输出结果。
例如:
[demo@Cc1Xtcls]$ biocli cromwell outputs c1a2b3d4
获取 Cromwell 工作流元数据
biocli cromwell metadata [选项] <id>
<id>:Cromwell 工作流 ID-i/--includekey=INCLUDEKEY:仅返回名称以此值开头的字段-e/--excludekey=EXCLUDEKEY:不返回名称以此值开头的字段
例如:
[demo@Cc1Xtcls]$ biocli cromwell metadata c1a2b3d4
[demo@Cc1Xtcls]$ biocli cromwell metadata -i calls c1a2b3d4
终止 Cromwell 工作流
biocli cromwell abort <id>
<id>:Cromwell 工作流 ID
终止正在运行的 Cromwell 工作流。
例如:
[demo@Cc1Xtcls]$ biocli cromwell abort c1a2b3d4
恢复 Cromwell 工作流
Cromwell 工作流失败后,可通过 biocli job recover 命令进行恢复:
biocli job recover -i <job-id> -c -f <wdl-file> [-O OPTIONS] [-z ZIPFILE]
-c/--recover_cromwell_job:标记恢复 Cromwell 作业-f/--file:Cromwell 源文件-O/--options:Cromwell 选项 JSON 文件-z/--zipfile:Cromwell 导入 ZIP 文件
关于 biocli job recover 的更多选项,请参见如何恢复 Achelous 作业