Metadata-Version: 2.1
Name: pipeline_factory
Version: 0.0.0a0
Summary: Python server framework to define, manage, schedule and execute custom defined code pipelines and series of pipeline across multiple worker processes
Author-email: Hristo Gueorguiev <hristo.gueorguiev@gmail.com>
License: MIT License
Keywords: task,pipeline,schedule,workers,async,pipeline framework
Classifier: Framework :: FastAPI
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
Requires-Dist: fastapi
Requires-Dist: sqlmodel
Requires-Dist: croniter
Provides-Extra: dev
Requires-Dist: pyright ; extra == 'dev'
Requires-Dist: ruff ; extra == 'dev'
Requires-Dist: build ; extra == 'dev'
Requires-Dist: twine ; extra == 'dev'

::
                                                                                            
                                                O                                           
                                               ( ))                                         
                                              (    )                                        
                                             (   )  )                                       
                                            (  )   )                                        
                                             (  ) )                                         
                                              (  )                                          
                                              (   )                                         
                                               ( )                                          
                                      ──┐      ──┐                                          
                                    /   │    /   │                                          
                                   /    │   /    │                                          
                                  /     │  /     │                                          
                                 /      │ /      │                                          
                                /       │/       │                                          
                               /        │        │                                          
                              ┌─────────┴────────┴┐                                         
                              │                   │                                         
                              │ ┌──┐             ┌┘ ┌──┐                                    
                              │ │  │      ┌─┐    │  │  │  ┌──┐                              
                              │ └──┘      │ │    └┬─┴──┴──┴──┴───                           
                              │           │ │     │* * * * * * * O                          
                              └───────────┴─┴─────┘---------------                          
            ____  _            ___               ______           __                        
           / __ \(_)___  ___  / (_)___  ___     / ____/___ ______/ /_____  _______  __      
          / /_/ / / __ \/ _ \/ / / __ \/ _ \   / /_  / __ `/ ___/ __/ __ \/ ___/ / / /      
         / ____/ / /_/ /  __/ / / / / /  __/  / __/ / /_/ / /__/ /_/ /_/ / /  / /_/ /       
        /_/   /_/ .___/\___/_/_/_/ /_/\___/  /_/    \__,_/\___/\__/\____/_/   \__, /        
               /_/                                                           /____/         
                                                                                            

Pipeline Factory is a Python server framework to define, manage, schedule and execute custom defined code pipelines and series of pipeline across multiple worker processes.

- Based on Fastapi and Python multiprocessing
- Define pipelines of action steps to process data, make api calls, generate artifacts etc.
- Resumable pipelines where steps can define recovery action to avoid redoing work
- Run series of pipelines based on state/ results of previous pipelines
- Cron schedule tasks to auto run or resume pipelines
- Tasks that run pipelines execute on a worker process pool
- Add python callables as custom tasks, to extend pipeline execution capabilities or support execution of arbitrary work on worker pool

Installation
============
::

 pip install pipeline-factory

Example usage
=============
`Example app <example_app>`_

