Execute pipelines based on files and containers.
Project description
Proceed
Declarative file processing with YAML and containers.
Proceed is a Python library and CLI tool for declarative batch processing. It reads a pipeline specification declared in YAML. A pipeline contains a list of steps that are based on Docker images and containers.
Each pipeline execution accepts values for declared args, allowing controlled, explicit configuration of steps at runtime. Each execution produces an execution record that accounts for accepted arg values, step logs, and checksums of input and output files.
Hopefully, Proceed will allow you to express everything you need to know about your processing pipeline in a "nothing up my sleeves" way. The pipeline specification should be complete enough to share with others who have Proceed and Docker installed. The execution record should allow for auditing of expected outcomes and reproducibility.
docs
Here are the main docs for Proceed.
Installation
Proceed requires Python and Docker to be installed. With those, it should be able to run a wide variety pipelines and steps via containers.
pip
Proceed itself is available on PyPI. This is the recommended way to install Proceed:
$ pip install proceed
git and pip
You can also install Proceed from source.
$ pip install git+https://https://github.com/benjamin-heasly/proceed.git
# editable mode
$ git checkout https://github.com/benjamin-heasly/proceed.git
$ pip install -e ./proceed
check installation
You can check if Proceed installed correctly using the proceed command.
$ proceed --version
Proceed x.y.z
$ proceed --help
usage etc...
development and testing
You can set up a development environment with conda and dev-environment.yml.
conda env create -f dev-environment.yml
# or
conda env update -f dev-environment.yml
With that, you should be able to run through the Proceed unit and integration tests.
conda activate proceed-dev
hatch run test:cov
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file proceed-0.0.8.tar.gz.
File metadata
- Download URL: proceed-0.0.8.tar.gz
- Upload date:
- Size: 38.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c5ad1af788cff195d6578d8f971a2da16772be20ed622b9ffa62868a10ca2fe9
|
|
| MD5 |
6e8b2a322d770053d7b6d851339d70c2
|
|
| BLAKE2b-256 |
9da09ac85c5783fd120925fb60a0c32cba47ddd10d88fa2785500cdb77c91cdb
|
File details
Details for the file proceed-0.0.8-py3-none-any.whl.
File metadata
- Download URL: proceed-0.0.8-py3-none-any.whl
- Upload date:
- Size: 25.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1cf1b46bde00c4ca36ccd9592516fd57f021812642eafdb8117f15aa7187c5f3
|
|
| MD5 |
228b8c56c4fa80db779f561370a68e05
|
|
| BLAKE2b-256 |
3b85f9194fea1a19afb83fca6feb8d2f474fc5594414eff2b16c56008188f5a5
|