layerindex-web/layerindex
Diana Thayer 2e671480c7 Asynchronous email notifications, task execution
This patch adds asynchronous task execution using a Celery backend
and RabbitMQ task queue, so that the layer submission process to
proceed even in the event that sending the notification email fails,
and establishing an asynchronous execution mechanism that we can use
in the future e.g. for triggering parse operations from the web UI.
This pertains to bug 11197:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=11197

It updates the README to reflect the installation and configuration
of a basic RabbitMQ setup, adds a 'tasks.py' file to contain task
definitions, updates the 'edit_layer_view' function to send
emails to administrators about new and updated layers asynchronously,
modifies the 'settings.py' to include a default configuration
for a RabbitMQ connection, and updates the Dockerfile to start a Celery
worker alongside the Gunicorn daemon.

Fixes [YOCTO #11197].

Signed-off-by: Diana Thayer <garbados@gmail.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2017-09-01 16:59:43 +12:00
..
migrations layerindex: add "No update" status to LayerItem 2017-03-14 15:19:53 +13:00
static editlayer: allow selecting web interface type 2016-10-25 20:33:42 +13:00
templatetags Support (and require) Python 3 2016-06-12 11:33:08 +12:00
tools layerconfparse.py: remove unused layerbranch from parse_layer() 2017-07-21 08:14:57 +02:00
__init__.py Initial commit of layerindex-web 2013-02-13 12:09:57 +00:00
admin.py Record and display update logs 2016-11-16 15:31:46 +13:00
bulkchange.py layerindex: Update tinfoil to call shutdown method 2017-01-11 21:56:35 +13:00
context_processors.py Use Django sites framework to specify website title 2013-12-28 11:03:29 +00:00
forms.py layerindex: add "No update" status to LayerItem 2017-03-14 15:19:53 +13:00
layerconfparse.py layerconfparse.py: remove unused layerbranch from parse_layer() 2017-07-21 08:14:57 +02:00
models.py layerindex: add "No update" status to LayerItem 2017-03-14 15:19:53 +13:00
querysethelper.py Use functools.reduce instead of reduce 2016-07-04 09:51:21 +12:00
recipedesc.py layerindex: Update tinfoil to call shutdown method 2017-01-11 21:56:35 +13:00
recipeparse.py recipeparse.py: restore cwd when the parsing is done 2017-07-21 08:15:19 +02:00
restperm.py expose REST API for layerindex 2014-09-24 11:32:34 +01:00
restviews.py layerindex: add "No update" status to LayerItem 2017-03-14 15:19:53 +13:00
simplesearch.py Improve recipe search 2013-02-19 17:22:45 +00:00
tasks.py Asynchronous email notifications, task execution 2017-09-01 16:59:43 +12:00
update_layer.py update_layer.py: delete layerbranch for non-existent branch 2017-07-21 08:15:53 +02:00
update.py update.py: add -p to git fetch 2017-07-21 08:15:53 +02:00
urls_branch.py Record and display update logs 2016-11-16 15:31:46 +13:00
urls.py Record and display update logs 2016-11-16 15:31:46 +13:00
utils.py update.py: update layers in dependency order 2017-07-21 08:15:53 +02:00
views.py Asynchronous email notifications, task execution 2017-09-01 16:59:43 +12:00