Skip to main content

Pipeline library that simplifies creation of pipelines that run on top of hail Batch and other compute enviornments

Project description

step-pipeline

This library serves as a thin layer on top of Hail Batch (and eventually other execution engines) to provide the following features:

  • Skip steps that already ran and completed successfully (eg. their output files already exist and are newer than their input files). This is done prior to submitting the pipeline to the execution engine.
  • Make it easier to switch between different ways of localizing files (copy, gcsfuse, etc.) with minimal changes to pipeline code
  • Automatically define pipeline command-line args to force or skip execution of paticular steps
  • Use a config file to store various pipeline parameters (eg. cloud project account, etc.)
  • Add commands for sending pipeline completion notifications to Slack
  • Add commands for profiling pipeline steps while they are running, and saving this info to external storage
  • Generate a diagram of the pipeline execution graph (DAG)

Another longer-term goal is to allow the same pipeline definition to be submitted to different backends with minimal changes - including Hail Batch, Terra/Cromwell, and others. This can only work for pipelines that use the subset of workflow definition features that is shared across the relevant execution engines.


Installation

To install the step-pipeline library, run:

python3 -m pip install step-pipeline

Docs

API docs


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

step_pipeline-0.2.7.tar.gz (39.8 kB view details)

Uploaded Source

Built Distribution

step_pipeline-0.2.7-py3-none-any.whl (44.6 kB view details)

Uploaded Python 3

File details

Details for the file step_pipeline-0.2.7.tar.gz.

File metadata

  • Download URL: step_pipeline-0.2.7.tar.gz
  • Upload date:
  • Size: 39.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.9

File hashes

Hashes for step_pipeline-0.2.7.tar.gz
Algorithm Hash digest
SHA256 8924891b74f434be9ef4a084c13f24f385bec7d01649b9431fd3a133fc93057f
MD5 65a376ae033e9ac65c1ae40ca62cb8f8
BLAKE2b-256 69c8e9e10c60d35b3171887456f70124fccf7ebc803ed74bb2920365421b119d

See more details on using hashes here.

File details

Details for the file step_pipeline-0.2.7-py3-none-any.whl.

File metadata

File hashes

Hashes for step_pipeline-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 c94ad376af880d783c2dbbb5c21a02e0c47a0ad29beed7ebb9b4f374c893e845
MD5 afceaac7020d9e6a08c611f3c8ac96e0
BLAKE2b-256 fa14acb4c857b006f90f34063861b2f4ce29f0832f244add38ca827eba606536

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