通过CLI在Galaxy上执行工作流

galaxy-workflow-executor的Python项目详细描述


PyPI version fury.ioBuild Status

银河工作流执行器0.2.4

此设置使用bioblend(0.12-0.13测试)通过CLI运行Galaxy工作流:

  • 输入:
    • Galaxy workflow的步骤用标签注释为JSON文件(必须在Galaxy UI中从“共享工作流”>;“下载”获得)。在
    • 参数字典为YAML(也支持JSON)。支持简单输入参数和简单输入参数不公开的工具参数。在
    • 在YAML文件中指定为路径或数据集id的输入文件。在
    • 在YAML文件中指定允许错误的步骤(可选)
    • 要创建的历史记录的名称(可选)

Galaxy工作流

工作流应该用标签标注,最好是所有步骤,但至少 对于希望能够通过参数设置参数的步骤 字典。它应该是由工作流(上菜单)>;“共享工作流”生成的JSON文件 (在工作流的下拉菜单上,在工作流列表中)->gt;下载 (在下面的屏幕中)。在

执行状态

安装程序将在运行期间存储执行状态,以便在出现断开连接或错误时重新启动 跟踪同一工作流的进度。默认情况下,它将状态存储在工作目录中 exec_state.pickle。这可能不是会话证明:运行工作流a失败,然后尝试运行 随后的工作流B可能会出错。因此,当切换正在运行的工作流时,请确保使用不同的 或通过--state-file显式指定状态路径的路径。请注意 对于新运行,该文件不应存在。在

成功执行后,状态文件将自动删除。在

参数YAML

通过执行以下操作,可以为所需的工作流生成参数YAML文件:

generate_params_from_workflow.py -C galaxy_credentials.yaml \
                            -G test_instance -o test \
                            -W wf.json
  • 输入:
    • Galaxy实例的凭据文件(此文件使用与parsec使用的格式相同的格式)
    • 凭据文件中列出的Galaxy实例的名称(可选)。在
    • Galaxy工作流作为JSON文件(来自共享工作流->下载)
    • 输出目录路径(可选)

输出wf-参数.yaml将遵循以下结构:

^{pr2}$

YAML中的输入文件

它应该指向文件系统中的文件,设置一个名称(需要匹配 具有工作流输入标签)和文件类型(在Galaxy识别的文件类型中)。在

用于输入的YAML文件的结构是:

matrix:path:/path/to/E-MTAB-4850.aggregated_filtered_counts.mtxtype:txtgenes:path:/path/to/E-MTAB-4850.aggregated_filtered_counts.mtx_rowstype:tsvbarcodes:path:/path/to/E-MTAB-4850.aggregated_filtered_counts.mtx_colstype:tsvgtf:dataset_id:fe139k21xsak

在这个例子中,Galaxy工作流应该有一个名为matrix的输入标签, genesbarcodes和{}。如果在输入中设置path,则路径需要存在于本地文件系统中。或者是本地文件系统中的一个路径,如果文件已经在Galaxy实例上,则可以给出文件的dataset_id,如gtf的例子所示。在

允许错误的步骤

这个可选的YAML文件指示执行器在不考虑整体执行的情况下允许哪些步骤失败 失败,因此仍然检索结果文件。这是为了给这样一个事实腾出空间,在生产设置中,可能 是可能产生可接受故障的数据集的边界条件。在

文件的结构依赖于工作流和参数文件中使用的步骤的标签

step_label_x:-anystep_label_z:-1-43

上面的示例意味着带有标签step_label_x的步骤可能会失败,并返回任何错误代码,而带有标签的步骤则会失败 step_label_z只允许代码1或43失败(具体的错误代码处理尚未实现)。在

结果

在要显示的工作流中标记的所有工作流输出都将下载到指定的结果目录, 隐藏结果将被忽略。除非另有规定,历史(及其内容)和工作流将从实例中删除。在

玩具示例

在CI测试中使用的一个简单示例可以通过 run_tests_with_containers.sh脚本。在

退出错误代码

当前生成的错误代码:

Error codeDescription
3Connection error during history deletion, this is not a critical error as most probably the history will get deleted by the server. A file named histories_to_check.txt is created in the working directory. Data will have been downloaded by then.
4Workflow scheduling cancelled at the Galaxy instance. Currently no downloads or clean-up done. This is probably an error that you cannot recover automatically from.
5Workflow scheduling failed at the Galaxy instance. Currently no downloads or clean-up done. This is probably an error that you cannot recover automatically from.

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Windows 8.1上的netbeans 7 Java控制面板   在另一台设备上创建的将安卓设备连接到WiFi热点的java   java领域生命周期处理安卓中的关闭/无效实例   使用firebasemlkit访问cloud vision api时关闭javasocket   jsp中基于64字节数组的Java图像显示   每次方向更改并丢失字段值时,java Android OnCreateView调用两次   如何使用idljmavenplugin生成java文件   并发性如何进行同步以防止java冲突。util。ConcurrentModificationException   Java中非连通无向图的圈检测   java如何在不使用列表或集合方法的情况下删除数组元素   计算三维SAT碰撞法向量时出现java错误   java翻译自定义通知字符串   java如何从HttpURLConnection读取json数据   java如何将整数添加到字符串ArrayList?   java cxf生成的wsdl:将soap地址位置协议更改为https   jakarta ee Java:Java ee应用程序中的静态和线程安全   java在Android中传递变量   组合框的swing Java selectionChange侦听器