Skip to main content

A library for supporting cloud bursting in Galaxy.

Project description

Documentation Status

GalaxyCloudRunner enables bursting of user jobs to remote compute resources for the Galaxy application. It provides a dynamic job runner that can be plugged into Galaxy.

Overview

GalaxyCloudRunner enables bursting of user jobs to remote compute resources for the Galaxy application. It provides several dynamic job rules that can be plugged into Galaxy, enabling Galaxy to submit jobs to remote cloud nodes.

How it works

The GalaxyCloudRunner provides a library of rules that can be plugged into Galaxy through job_conf.xml. Once configured, you can get your jobs to be automatically routed to remote Pulsar nodes running on the cloud. The GalaxyCloudRunner will discover what Pulsar nodes are available by querying the CloudLaunch API. Adding a new node is a simple matter of visiting the CloudLaunch site and launching a new Pulsar node on your desired cloud.

Getting Started

Getting started with the GalaxyCloudRunner is a simple process.

  1. First, install galaxycloudrunner into your Galaxy's virtual environment via pip install galaxycloudrunner.
  2. Add a job rule to Galaxy which will determine the Pulsar node to route to.
  3. Configure your job_conf.xml to use this rule.
  4. Launch as many Pulsar nodes as you need through CloudLaunch.
  5. Submit jobs as usual.

For detailed instructions, see: https://galaxycloudrunner.readthedocs.io/

Developer installation

Clone the source code repository and install the library with the dev dependencies.

git clone https://github.com/CloudVE/galaxycloudrunner.git
cd galaxycloudrunner
pip install --upgrade .[dev]

To build the HTML docs locally, run the following commands. The built site will be available in docs/_build/html.

cd docs
make html

Contributing

Community contributions for any part of the project are welcome. If you have a completely new idea or would like to bounce your idea before moving forward with the implementation, feel free to create an issue to start a discussion.

Contributions should come in the form of a pull request. The code needs to be well documented and all methods have docstrings. We are largely adhering to the PEP8 style guide with 80 character lines, 4-space indentation (spaces instead of tabs), explicit, one-per-line imports among others. Please keep the style consistent with the rest of the project.

Release process

  1. Update any dependencies in setup.py and commit the changes.
  2. Increment the library version number in galaxycloudrunner/__init__.py as per semver rules.
  3. Add release notes to CHANGELOG.rst, adding the most recent commit hash to the changelog. List of commits can be obtained using git shortlog <last release hash>..HEAD

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

galaxycloudrunner-0.3.0.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

galaxycloudrunner-0.3.0-py2.py3-none-any.whl (7.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file galaxycloudrunner-0.3.0.tar.gz.

File metadata

  • Download URL: galaxycloudrunner-0.3.0.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/2.7.16

File hashes

Hashes for galaxycloudrunner-0.3.0.tar.gz
Algorithm Hash digest
SHA256 227e80de830b3ddccd4f0c3d753472cef65a0f756a062cc608fabfe278c627a4
MD5 69cd9e30181a7482d7e824a3814f86f5
BLAKE2b-256 bfbf6e7af303ff8ca117bbaf7f9a4a34108c6ecaf22c67a570242f9be1792f2f

See more details on using hashes here.

File details

Details for the file galaxycloudrunner-0.3.0-py2.py3-none-any.whl.

File metadata

  • Download URL: galaxycloudrunner-0.3.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/2.7.16

File hashes

Hashes for galaxycloudrunner-0.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e2a3fe1c23eb398ecbf7b2b75d6082895cfce2a9fc0873dac5943f15a20afd5e
MD5 238ca8f04d22e45fd7357a984bdc213d
BLAKE2b-256 c88986b574dce48f1817fb81753c879549da4bb431b8376b736b8d9072477930

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page