运行YAML中配置的管道
prunner的Python项目详细描述
管道流道
运行时,配置文件夹应具有以下结构
example_configuration_folder
├── pipelines.yaml
├── variables.yaml
├── functions.py
├── templates
│ ├── script.jinja2
│ ├── singularity.jinja2
│ ├── etc.jinja2
在管道.yaml在
根元素应该是一个字典,其中keys=管道名称, 值=要运行的任务数组。在
可以在值中使用变量,方法是以美元符号作为前缀
($
),类似于shell扩展。您可以通过将其加倍为$$
来转义$
有关完整的示例,请查看example/pipelines.yaml。可能的任务包括:
set_from_env:dict
通常在开头使用,用于根据值定义变量 从环境变量。 示例:
^{pr2}$集合变量:dict
直接定义或重写特定变量。 示例:
-set_variables:NEW_VARIABLE:SupermanVAR2:True
加载变量:str
这将加载key str的平面字典。示例:
-load_variables:pipeline_one
转储文件名3>
这将把所有当前变量转储到由filename指定的文件中。示例:
-dump_variables:$SUBJECT/${SESSION}.sh# Assumming SUBJECT + SESSION have been defined in a prior step
生成_文件:dict
从Jinja2模板创建一个文件。这个步骤接受一个yaml字典 具有以下键值对:
- 模板
- 要使用的Jinja2模板文件相对于配置目录/templates/
- 文件路径
- 新文件应保存到的完整路径。
- 变量
- filepath的动态值转换为静态绝对路径,并且 保存到指定的变量。默认值=“输出文件”。
示例:
-generate_file:template:script.jinja2filepath:$WORKING_DIR/$SUBJECT/$SESSION_PROCESSING.shvariable:PROCESSING_SCRIPT# now $PROCESSING_SCRIPT can be used in a future step# for example, a function that adds the script on the PBS queue
功能:str
要调用的函数。注意:函数必须在configuration_dir/functions.py
中定义
示例:
-function:load_scripts_onto_pbs
- 项目
标签: