sartography / spiff-example-cli

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

spiff-example-cli ==============

Note

As of writing, this documentation has not been tried on Windows

This is the documentation and example repository for the SpiffWorkflow BPMN workflow engine. Below is a brief outline on how to get started using this documentation - which in itself is designed as a tool for getting started with Spiffworkflow.

Clone this repository ------------------

git clone https://github.com/sartography/spiff-example-cli.git

Set up virtual environment

cd spiff-example-cli
python3 -m venv venv
source ./venv/bin/activate

Install Requirements

pip3 install -r requirements.txt

Using the Application

This application is intended to accompany the documentation for SpiffWorkflow. Further discussion of the models and application can be found there.

Models

Example BPMN and DMN files can be found in the bpmn directory of this repository. There are several versions of a product ordering process of variying complexity located in the bpmn/tutorial directory of the repo which contain most of the elements that SpiffWorkflow supports. These diagrams can be viewed in any BPMN editor, but many of them have custom extensions created with bpmn-js-spiffworflow.

Loading Workflows

To add a workflow via the command line and store serialized specs in JSON files:

./runner.py -e spiff_example.spiff.file add \
   -p order_product \
   -b bpmn/tutorial/{top_level,call_activity}.bpmn \
   -d bpmn/tutorial/{product_prices,shipping_costs}.dmn

Running Workflows

To run the curses application using serialized JSON files:

./runner.py -e spiff_example.spiff.file

Select the 'Start Workflow' screen and start the process.

Run in docker

./bin/run_in_docker --help

## License GNU LESSER GENERAL PUBLIC LICENSE

About

License:GNU Lesser General Public License v3.0


Languages

Language:Python 99.4%Language:Shell 0.4%Language:Dockerfile 0.3%