Skip to main content

The process virtual machine

Project description

Build Status

The process virtual machine

This project defines storage for an abstract _process_ in a company, and implements a virtual machine that keeps track of the execution of instances of the process.

Develop

You will need the redis and mongo databases, and rabbitmq for this to work.

git clone https://github.com/tracsa/cacahuate.git && cd cacahuate
virtualenv -p /usr/bin/python3 .env
echo "export CACAHUATE_SETTINGS=$(pwd)/settings_develop.py" >> .env/bin/activate
echo "export FLASK_APP=cacahuate.http.wsgi" >> .env/bin/activate
echo "export FLASK_DEBUG=1" >> .env/bin/activate
touch settings_develop.py
source .env/bin/activate
pip install -r requirements.txt
pytest

Installation

pip install cacahuate

Cacahuated

This is the daemon in charge of moving pointers in the process, run with:

cacahuated

The Cacahuate REST API

In this same repository you will find a flask application that exposes a REST api for controling Cacahuate.

How to run

FLASK_APP=cacahuate.http.wsgi flask run

You can use any wsgi-compliant server, like gunicorn, to run this:

gunicorn cacahuate.http.wsgi:app

TODO

  • cambiar api de LoginProvider y HierarchyProvider, no deben guardar usuarios

  • auth backends no deben crear usuarios, solo devolver objetos calificados

  • date input solo debe recibir yyyy-mm-dd

  • hacer validación intensiva de xml: - dependencias existen arriba en el xml - id de nodos son únicos - condicionales validan - params existen

  • guardar en un store privado por hash los xml al iniciar proceso, obsoleta el sistema de versiones (borrar toda referencia a la versión) - correr validaciones al mover un xml a este storage

  • atrapar excepciones de template de jinja y añadir mensaje al titulo

  • todo uso de jinja debe tener try

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

cacahuate-2.0.0rc4.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cacahuate-2.0.0rc4-py3-none-any.whl (37.8 kB view details)

Uploaded Python 3

File details

Details for the file cacahuate-2.0.0rc4.tar.gz.

File metadata

  • Download URL: cacahuate-2.0.0rc4.tar.gz
  • Upload date:
  • Size: 25.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for cacahuate-2.0.0rc4.tar.gz
Algorithm Hash digest
SHA256 843b656660cce85ab9c0b490182244de58a2dfca66b2a226a9908e06c356761e
MD5 7c9c69ffa48634fbeef0fd9448db5bec
BLAKE2b-256 f5b4405f0b35c94b740a6c6ee2b2e4e8d8d19dcb2c5adb9c2345d68101957ca6

See more details on using hashes here.

File details

Details for the file cacahuate-2.0.0rc4-py3-none-any.whl.

File metadata

File hashes

Hashes for cacahuate-2.0.0rc4-py3-none-any.whl
Algorithm Hash digest
SHA256 04451829e23dfb06d26e393658c9579dfa4e39e41c377a85d84442e26b70eb90
MD5 2b7bd8b8aa86140c279b46cd3ce45187
BLAKE2b-256 4462084b39f1cf79054d5c5eca9625c00a267522aca166d2ea575e94ae660eed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page