我想知道和理解如何为我已经进行了一些测试/检查的管道设置参数。我在nf-core sarek上看过几个github仓库,但我不了解那里使用的格式。所以,我在写我自己的结构基于类似的线。
我有main.nf、check.nf和nextflow.config文件。来自www.example.com的控件main.nf转到check.nf(在子工作流目录中),参数从nextflow.config设置或由用户作为-params-file file.json
提供
我在命令行上执行:nextflow run test_input.nf -c nextflow.config -params-file nextflow-params.json
我有几个问题(S):
main.nf
include { input_check } from './subworkflows/check.nf'
workflow {
input_check()
}
nextflow.config
params{
file_csv=null
out_dir=null
data_type=null
}
我需要写脚本,输出在check.nf?
./subworkflows/check.nf
process input_check {
output:
stdout
script:
println("hello inside input check")
if(!params.data_type){
error("no data type specified --data_type: wgs or wes or rna")
}
if(! params.file_csv){
error("no input file csv provided --file_csv")
exit 1
}
if(! params.out_dir){
error("no output dir provided --out_dir")
exit 1
}
"""
"""
}
我需要三个双引号吗?它们没有任何用途。如果我不使用它们,我会从nextflow得到奇怪的/随机的错误。
如果我错过了什么就告诉我。
1条答案
按热度按时间ergxz8rk1#
nf-core Sarek管道采用的方法是在主工作流脚本中执行参数检查/验证。这样,我们可以最小化完成工作流所需运行的进程数。举例来说: