Skip to content

mcallaway/ptero-workflow

 
 

Repository files navigation

PTero Workflow Service

Build Status Coverage Status Requirements Status

This project provides web API for the PTero Workflow system of services. This system is designed to be a highly scalable replacement of the legacy Workflow system from The Genome Institute.

A prototype implementation, which does not provide an easy to use API (like this project does), easily handles our production workflows with tens of thousands of nodes. For reference, it can be found in two parts: core and workflow

The workflows are driven using an implementation of Petri nets with some extensions for color and token data.

The other existing components are: the petri core service and a forking shell command service.

Testing

The tests for this service depend on a running petri and forking shell command service. To run the tests, first install some tools:

pip install tox

Then setup the petri service and the shell-command service. In the parent directory:

git clone https://github.com/genome/ptero-petri.git
git clone https://github.com/genome/ptero-shell-command.git

And in the ptero-workflow directory:

ln -s ../ptero-petri
ln -s ../ptero-shell-command

Now, you can run the tests using tox:

tox -e py27

To see a coverage report after successfully running the tests:

coverage report

About

Client-facing API for the PTero system

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.8%
  • Other 1.2%