Skip to content

format_dependencies

lijiaping edited this page Apr 25, 2019 · 1 revision

dependencies.yaml

该文件定义了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]
Clone this wiki locally