pydpiper is a set of Python modules that offers programmatic control over pipelines.
It is very much under active development. The paper describing the framework can be found here (note that the internals have changed significantly over time):
We kindly ask you to reference this paper when using the code. For instructions on installing Pydpiper and optionally configuring it for your HPC environment, see the INSTALL file.
pydpiper supports config files (lowest precedence), environment variables, and command-line flags (highest precedence) in a mostly uniform way via the ConfigArgParse module. For examples, see the
config directory; note that unlike the command line, values in key-value pairs must not be quoted (e.g.,
--queue-type='sge'). The config file should also be accessible to any remote machines. You can specify a default configuration file location (e.g., for a site-wide default) with the (otherwise undocumented) environment variable
You can use environment variables to override our configuration defaults for the underlying Pyro library, except for
$PYRO_LOGFILE; in particular, you may wish to change
$PYRO_LOGLEVEL, since this also controls
the verbosity of some of the application's own logging. See the Pyro4 documentation for more options.
Application modules that utilize the pipeline class definitions are currently in applications folder. These applications may be moved to a separate repository at a later date.
When your pipeline is running, you can verify the state of your pipeline using the following tool (as of version 1.8):
Run a somewhat comprehensive test of the software: