Kolibri

Asynchronous Processors/Workflow management for Django
Download

Kolibri Ranking & Summary

Advertisement

  • Rating:
  • License:
  • BSD License
  • Publisher Name:
  • Thomas Weholt
  • Publisher web site:
  • http://weholt.org

Kolibri Tags


Kolibri Description

Asynchronous Processors/Workflow management for Django Kolibri is a reusable Django app for designing and executing asynchronous processes and workflows. A workflow is a collections of steps in a defined order, processing data in each step. A step can break the flow if an exception is raised and/or a specified step can be executed to handle a specific exception. Kolibri uses celery to handle processing in the background. All processors and workflows can only be started by staff members, but more fine grained access control might be implemented in future versions.The project got started because I needed to control how I added content to a photo project I'm developing in django. The project involved lots of heavy processes like thumbnail generation and metadata processing. Adding content consists of steps that needs to be done in a specific order, and I need to control what action to take if one step throws an exception. I was using celery, but adding a new step or process was tedious and I wanted more dynamic way of defining and managing processors.The current implementation is not stable and a proof of concept. Comments very welcome, especially on how to monitor status of celery processes and provide feedback to the user.Installationpip install django-kolibriorhg clone https://bitbucket.org/weholt/django-kolibri python setup.py install set STATIC_ROOT and STATIC_URL in settings.py add 'kolibri' to your installed apps add url(r'^kolibri/', include('kolibri.urls')), to your urls.pyIt would be smart to read through usage.txt first for a more detailed tutorial or experiment with the working example project provided in the source, available at bitbucket.


Kolibri Related Software