【发布时间】:2022-11-10 23:58:43
【问题描述】:
我正在 Nextflow 中编写一个管道,并希望使用多个不同的 conda(现有)环境来避免工具安装和共享管道的特定模块的不一致。 Nextflow 文档指出,最佳实践是在 nextflow.config - see here. 中指定 conda 环境。但是,声明只是process.conda,似乎适用于所有进程,而不是特定于进程。
我知道我可以在each process 中指定一个现有的 conda 环境,但我正在努力遵守可移植性的最佳实践。
由于我无法在网上找到有关此特定问题的任何文档,因此我在配置文件中尝试了以下声明:
profiles {
conda {
process.conda = "something" // works but single env for all processes
fastqc.conda = "something" // where fastqc is the name of the process - FAILS
process.fastqc.conda = "something" // FAILS
}
}
我也试过:
profiles {
conda {
process {
withName: fastqc {
process.conda = "something"
}
}
}
}
这也因错误而失败:unknown config attribute withName
有趣的是,
process {
conda {
withName: fastqc {
process.conda = "something"
}
}
}
确实允许我为每个进程运行不同的 conda 环境,但不能通过 -profile 选项打开和关闭(因为指定配置文件块会破坏它)。
【问题讨论】: