跳转到主要内容

为Galaxy(http://galaxyproject.org/)构建的分布式作业执行应用程序。

项目描述

Pulsar Logo
Documentation Status Pulsar on the Python Package Index (PyPI) Build Status Test Coverage

本项目是一个Python服务器应用程序,允许Galaxy服务器在远程系统(包括Windows)上运行作业,而无需共享挂载的文件系统。与传统的Galaxy作业运行器不同——输入文件、脚本和配置文件可以传输到远程系统,作业执行后,结果会传输回Galaxy服务器——消除了对共享文件系统的需求。

有关本项目的完整文档可以在Read The Docs上找到。

配置Galaxy

Galaxy作业运行器在Galaxy的job_conf.xml文件中配置。一些配置示例可以在这里找到,但请务必检查Galaxy代码库中的job_conf.xml.sample_advancedGithub上的完整信息。

快速入门

有关安装Pulsar的不同方法的完整细节可以在文档的安装部分中找到,但如果您的机器有适当的Python依赖项,可以快速下载并运行测试作业

$ mkdir pulsar
$ cd pulsar
$ python3 -m venv venv
$ . venv/bin/activate    # venv\Scripts\activate.bat on Windows
$ pip install 'pulsar-app[web]'
$ pulsar-config
$ pulsar --daemon        # just `pulsar` on Windows
$ pulsar-check           # runs a test job

请注意,从0.14.0版本开始,Pulsar不再支持任何版本的Python 2。最低支持的Python版本是3.5。

配置文档提供了许多关于保护您的Pulsar服务器以及启用集群集成和消息队列通信等高级功能的详细信息。

开发和测试

在Linux或macOS上设置Pulsar的开发环境的推荐方法大致如下

$ git clone https://github.com/galaxyproject/pulsar
$ cd pulsar
$ python3 -m venv .venv
$ . .venv/bin/activate    # .venv\Scripts\activate on Windows
$ pip install -e '.[web]'
$ pip install -r dev-requirements.txt

-e标志对pip的安装使Pulsar处于“可编辑”模式,这意味着您对源代码所做的更改将在运行虚拟环境中安装的pulsar命令时反映出来。

该项目附带单元和集成测试(许多测试在Windows下无法运行),以下命令将安装运行这些测试所需的Python组件。然后以下命令将运行这些测试

$ make tests

以下命令将生成与该测试对应的覆盖率报告,并将其放置在本项目的coverage_html_report子目录中。

$ coverage html

请参阅贡献文档以了解有关开发和贡献Pulsar的更多详细信息。

请注意,本项目发布时附带了一份贡献者行为准则。通过参与本项目,您同意遵守其条款。

支持

本文档是一个正在进行的未完成作品。有更多配置和使用Pulsar的方法,而且有越来越多的Pulsar专家愿意回答您的问题并帮助解决您在设置Pulsar部署时可能遇到的问题。请随时通过Galaxy管理员Gitter频道联系。

历史

0.15.6 (2024-01-15)

0.15.5 (2023-09-15)

0.15.4 (2023-08-29)

0.15.3 (2023-07-20)

0.15.2 (2023-05-02)

0.15.1 (2023-04-13)

  • 无更改,在处理pypi问题时采取替代方案。

0.15.0 (2023-04-13)

0.14.16 (2022-10-04)

  • 修复与客户端操作映射构建URL相关的小回归问题。

0.14.15 (2022-10-03)

  • 修复0.14.14中的小回归错误 - 更新runner util代码的交换比看起来更大。

0.14.14 (2022-10-30)

0.14.13 (2021-12-06)

0.14.12 (2021-11-10)

  • 修复以使HOME和temp目录处理更接近Galaxy原生运行器。

  • 为远程元数据启用从_work_dir输出。

0.14.11 (2021-07-19)

0.14.10 (2021-07-17)

0.14.9 (2021-07-16)

0.14.8 (2021-07-14)

0.14.7 (2021-07-13)

0.14.6 (2021-05-24)

  • 针对具有隔离主目录的新版Galaxy工具配置文件进行修复。

0.14.5 (2021-04-15)

  • 通过作业目标参数设置文件操作的潜在修复。

0.14.4 (2021-04-14)

  • 重新尝试发布过程 - 0.14.3发布了错误的分支。

0.14.3 (2021-04-13)

  • 当使用Galaxy的扩展元数据时,允许从Pulsar传输更少的文件。

0.14.2 (2021-02-15)

  • 修复与协同执行pod一起使用requests、limits和walltime的方法。Pull Request 246

0.14.1 (2021-02-02)

  • 修复与协同执行pod一起使用命名管理器的方法。Pull Request 242

0.14.0 (2020-09-17)

0.13.1 (2020-09-16)

  • 锁定所有列出的要求。这是支持Python 2的Pulsar的最终版本。

0.13.0 (2019-06-25)

  • 对Kubernetes作业执行进行各种改进和简化。

0.12.1 (2019-06-03)

  • 重试未包含所有相关提交的失败的发布。

0.12.0 (2019-06-03)

0.11.0 (2019-05-16)

0.10.0 (2019-05-06)

0.9.1 (2019-05-01)

0.9.0 (2019-04-12)

  • 添加配置参数以限制从磁盘读取的流大小。Pull Request 157

  • 将失败和丢失作业的完整作业状态传递。 拉取请求 159

  • 在作业设置/准备期间出现问题,改进消息处理。 拉取请求 160

  • 重新设计预处理作业状态,以提高可重启性并减少作业丢失。 应在此处没有作业运行时应用此更改。 拉取请求 164

  • 通过环境变量支持覆盖配置(感谢 @nuwang)。 拉取请求 165

  • 次要文档更新(感谢 @afgane)。 拉取请求 170

  • 在 Pulsar 客户端中修复 Python 3 问题(感谢 @mvdbeek)。 拉取请求 172

0.8.3 (2018-02-08)

  • 创建通用 wheels,以便在从 PyPI 安装时启用 Python 3 支持(感谢 @nsoranzo)。 拉取请求 156

0.8.1 (2018-02-08)

0.8.0 (2017-09-21)

  • 支持 Galaxy 作业运行/脚本中的新功能,以便 Pulsar 尊重 $GALAXY_VIRTUAL_ENV$PRESERVE_GALAXY_ENVIRONMENT。修复在工具环境更改 python$PATH 上的远程元数据。 拉取请求 137

  • 在远程执行之前预先创建 Galaxy 工具输出(修复了与阶段输出中缺失输出文件相关的错误)。 拉取请求 141

  • 支持不设置 jobs_directory 目标参数的远程传输文件操作 拉取请求 136

  • 修复作业管理器文档中的无效字符(感谢 @mapa17)。 拉取请求 130

  • 修复 conda_auto_* 选项解析,并包含一个 dependency_resolvers_conf.xml 示例(感谢 @mapa17)。 拉取请求 132

  • 修复 tox/Travis 测试。 拉取请求 138拉取请求 139拉取请求 140

  • 修复 AMQP 确认问题。 拉取请求 143

0.7.4 (2017-02-07)

0.7.3 (2016-10-31)

0.7.2 (2016-08-31)

  • 修复在处理预处理错误条件时导致的循环问题。

0.7.1 (2016-08-29)

  • 发布以绕过 Galaxy 中的工具版本逻辑错误(发布 Galaxy 版本认为 0.7.0 < 0.7.0.dev3)。

0.7.0 (2016-08-26)

  • 更新 Makefile,允许将 pulsar 作为 Galaxy 的应用程序和库同时发布。

  • 针对 TravisCI 变更对测试脚本进行的小更新。

  • 嵌入式 Galaxy 运行器的改进。(待定:填写此内容)

  • 移除对Python 2.6的支持。60bf962

  • 更新文档以描述项目治理和复用Galaxy的《行为准则》。7e23d43dc47140

  • 更新从Galaxy来的SLURM集群槽位检测。cadfc5a

  • 各种更改,允许在Galaxy中作为库使用。ce9d4f9

  • 各种更改,允许在Galaxy中嵌入Pulsar管理器。ce9d4f9d2623238f7c04a

  • 引入单独的工作和元数据目录,这是Galaxy 16.04所必需的,需要这种分离。6f4328e

  • 改进日志和注释。38953f3a985107ad33cb9

  • 添加Python 2.7单元测试的Tox目标。d7c524e

  • 为setup.py develop添加Makefile命令。fd82d00

0.6.1 (2015-12-23)

  • 调整发布流程,导致0.6.0的PyPI描述页面不正确。

0.6.0 (2015-12-23)

  • Pulsar现在依赖于新的Python包galaxy-lib,而不是手动在Pulsar和Galaxy之间同步Python文件。

  • 许多构建和测试改进。

  • 修复代码中的文档错误(感谢@erasche)。e8814ae

  • 从Pulsar客户端中删除galaxy.eggs内容(感谢@natefoo)。00197f2

  • 将新标志添加到README(感谢@martenson)。abbba40

  • 在消息队列系统之上实现可选的认可系统(感谢@natefoo)。Pull Request 82 431088c

  • 感谢@remimarenco的文档修复。Pull Request 78Pull Request 80

  • 修复此周期中引入的项目脚本错误(感谢@nsoranzo)。140a069

  • 修复Windows上的config.py(感谢@ssorgatem)。Pull Request 84

  • 添加XSEDE作业的工作管理器(感谢@natefoo)。1017bc5

  • 修复pip依赖项安装(感谢@afgane)Pull Request 73

0.5.0 (2015-05-08)

  • 允许cURL下载器在存档期间恢复传输(感谢@natefoo)。0c61bd9

  • 修复cURL下载器状态码处理问题(感谢@natefoo)。86f95ce

  • 修复来自PyPI的非wheel安装。Issue 72

  • 修复mesos导入,适用于更新的mesos版本(感谢@kellrott)。fe3e919

  • 更多,更好的日志。2b3942dfa2b6dc

0.4.0 (2015-04-20)

  • Python 3支持。Pull Request 62

  • 修复运行

    pulsar-main

    pulsar-config

    命令作为脚本时遇到的错误。9d43ae0

  • 添加针对 Pulsar 服务器的问题命令脚本 pulsar-run(实验性)。3cc7f74

0.3.0 (2015-04-12)

  • 将项目名称改为 Pulsar,并迁移到 Github。

  • 新增 RESTful 网络服务接口。

  • E. Rasche 添加了 SCP 和 Rsync 文件暂存选项。Pull Request

  • 允许基于 YAML 的配置。

  • 支持更传统的 pip/setup.py-style 安装。

  • 数十个小的错误修复和文档更新。

0.2.0

  • 上一个版本命名为 LWR - 可在 BitBucket 上找到。

  • 截至 15.03 版本,Galaxy 仍然支持。

  • 引入了对各种排队系统的支持,作为 Mesos 框架运行,Docker 支持,以及各种其他高级部署选项。

  • 消息队列支持。

  • 引入了可配置文件操作的框架。

0.1.0

0.0.1

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载适用于您平台的应用程序文件。如果您不确定选择哪个,请了解更多有关安装包的信息。

源分布

pulsar-galaxy-lib-0.15.6.tar.gz (323.2 kB 查看哈希值)

上传时间

构建分布

pulsar_galaxy_lib-0.15.6-py2.py3-none-any.whl (201.9 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下支持