-
Notifications
You must be signed in to change notification settings - Fork 0
format_dependencies
lijiaping edited this page Apr 25, 2019
·
1 revision
该文件定义了App之间的依赖关系,包括Module内部及外部。还定义了App生成的脚本路径,默认值。
name: Filter # 模块名,必须与parameters.conf中保持一致。
wc: # App名,必须与config.yaml中的名字保持一致
# jinja2模板脚本路径,若有{{parameters.sample_name}}说明为样品相关的脚本,会生成与满足条件的(如{{parameters.seq_type}}可控制生成2/3代测序数据的脚本)样品数相等的脚本。
# App中的参数、Parameters.conf中samples里每个样品的参数都可以使用。
version: 0.1.0 # App版本号,用于确保流程的可重复性
sh_file: shell/Filter/wc_{{parameters.sample_name}}_{{parameters.seq_type}}.sh
defaults: # 输入输出或参数的默认值
line_stat: process/Filter/{{parameters.sample_name}}.line_stat.txt # {{parameters.sample_name}}同前面所诉,每个样品都会生成一个。
depends: [] # 依赖的App,可以为零至多个。
cat:
version: 0.1.0
sh_file: shell/Filter/cat_wc.sh
defaults:
line_stat: process/Filter/{{extra.sample_name}}.line_stat.txt # {{extra.sample_name}}说明需要输入所有样品对应的文件。
merge_stat: process/Filter/LineSummary.xls
depends: [wc]
ls:
version: 0.1.0
sh_file: shell/Filter/ls_{{parameters.sample_name}}_{{parameters.seq_type}}.sh
defaults:
ls_file: process/Filter/{{parameters.sample_name}}.line_stat.txt
depends: [wc]
ls_merge: # 此App为Alias App,即复用了ls。只需设置新的App名字,指定alias即可。
version: 0.1.0
alias: ls # 使用ls这个App
sh_file: shell/Filter/ls_merge.sh # 与ls处不同了
defaults:
ls_file: process/Filter/LineSummary.xls # 与ls处不同了
depends: [cat]