本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
对 HealthOmics 工作流定义语言的版本支持
HealthOmics 支持用 Nextflow、WDL 或 CWL 编写的工作流程定义文件。以下各节提供有关这些语言的 HealthOmics 版本支持的信息。
WDL 版本支持
HealthOmics 支持 WDL 规范的 1.0、1.1 版本和 WDL 规范的开发版本。
每个 WDL 文档都必须包含一个版本声明,以指定它所遵循的规范版本(主要版本和次要版本)。有关版本的更多信息,请参阅 WDL
WDL 规范的 1.0 和 1.1 版本不支持该Directory
类型。要将该Directory
类型用于输入或输出,请在文件第一行development中将版本设置为:
version development # first line of .wdl file ... remainder of the file ...
CWL 版本支持
HealthOmics 支持 CWL 语言的 1.0、1.1 和 1.2 版本。
您可以在 CWL 工作流程定义文件中指定语言版本。有关 CWL 的更多信息,请参阅 CWL 用户指南
Nextflow版本支持
HealthOmics 支持三个 Nextflow 稳定版本。Nextflow 通常每六个月发布一次稳定版本。 HealthOmics 不支持每月发布的 “边缘” 版本。
HealthOmics 支持每个版本中已发布的功能,但不支持预览功能。
支持的版本
HealthOmics 支持以下 Nextflow 版本:
-
Nextflow v22.04.01 DSL 1 和 DSL 2
-
Nextflow v23.10.0 DSL 2(默认)
-
Nextflow v24.10.8 DSL 2
要将您的工作流程迁移到支持的最新版本 (v24.10.8),请按照 Next
从 Nextflow v23 迁移到 v24 时有一些重大更改,如 Nextflow 迁移指南的以下部分所述:
检测和处理 Nextflow 版本
HealthOmics 检测您指定的 DSL 版本和 Nextflow 版本。它会根据这些输入自动确定要运行的最佳 Nextflow 版本。
DSL 版本
HealthOmics 在您的工作流程定义文件中检测请求的 DSL 版本。例如,您可以指定:nextflow.enable.dsl=2
.
HealthOmics 默认情况下支持 DSL 2。如果在工作流程定义文件中指定,它可提供与 DSL 1 的向后兼容性。
-
如果你指定 DSL 2,则 HealthOmics 运行 Nextflow v23.10.0,除非你指定 Nextflow v22.04.0 或 v24.10.8。
-
如果你指定 DSL 1,则 HealthOmics 运行 Nextflow v22.04 DSL1 (唯一支持的运行 DSL 1 的版本)。
-
如果您未指定 DSL 版本,或者由于任何原因(例如工作流程定义文件中的语法错误)而 HealthOmics 无法解析 DSL 信息,则 HealthOmics 默认为 DSL 2 并运行 Nextflow v23.10.0。
-
要将工作流程从 DSL 1 升级到 DSL 2 以利用最新的 Nextflow 版本和软件功能,请参阅从 DSL 1 迁移
。
下一流版本
HealthOmics 如果你提供了 Nextflow 配置文件 (nextflow.config) 中请求的 Nextflow 版本。我们建议您在文件末尾添加nextflowVersion
子句,以避免包含的配置中出现任何意外覆盖。有关更多信息,请参阅 Nextflow 配置
您可以使用以下语法指定 Nextflow 版本或一系列版本:
// exact match manifest.nextflowVersion = '1.2.3' // 1.2 or later (excluding 2 and later) manifest.nextflowVersion = '1.2+' // 1.2 or later manifest.nextflowVersion = '>=1.2' // any version in the range 1.2 to 1.5 manifest.nextflowVersion = '>=1.2, <=1.5' // use the "!" prefix to stop execution if the current version // doesn't match the required version. manifest.nextflowVersion = '!>=1.2'
HealthOmics 按如下方式处理 Nextflow 版本信息:
-
如果您=使用指定 HealthOmics 支持的确切版本,则 HealthOmics 使用该版本。
-
如果您使用!指定不支持的确切版本或一系列版本,则 HealthOmics 会引发异常并导致运行失败。如果您想严格处理版本请求,请考虑使用此选项,如果请求包含不支持的版本,则会很快失败。
-
如果指定版本范围,则 HealthOmics 使用该范围内支持的最新版本,除非该范围包括 v24.10.8。在这种情况下, HealthOmics 优先考虑较早的版本。例如,如果该范围同时涵盖 v23.10.0 和 v24.10.8,则选择 v23.10.0。 HealthOmics
-
如果没有请求的版本,或者请求的版本无效或由于任何原因无法解析:
-
如果你指定了 DSL 1,则 HealthOmics 运行 Nextflow v22.04。
-
否则, HealthOmics 运行 Nextflow v23.10.0。
-
您可以检索有关每次运行时 HealthOmics 使用的 Nextflow 版本的以下信息:
-
运行日志包含有关 HealthOmics 用于运行的实际 Nextflow 版本的信息。
-
HealthOmics 如果与您请求的版本不直接匹配,或者需要使用与您指定的版本不同的版本,则会在运行日志中添加警告。
-
对 GetRun API 操作的响应包括一个字段 (
engineVersion
),其中包含 HealthOmics 用于运行的实际 Nextflow 版本。例如:"engineVersion":"22.04.0"