Michael Krotscheck b2e26aa7ed Stevedore worker plugins
The deferred processor now loads plugins via stevedore, and passes
all event messages to each plugin found. This provides the first
extensibility mechanism for storyboard, by allowing anyone to write
tasks that should be handled asynchronously when the system changes.
Custom workers must implement two methods: 'enabled' and 'handle'.
The first checks to see whether this plugin is enabled, and will be
run only once during initialization. The second handles the event.

The intent is to drive more advanced functionality off of this
mechanism, such as emails, search indexes, and third party tool
integration.

Change-Id: I32b40eab9355c18db1e4ec132b09dc77561a3475
2014-10-02 10:41:02 -07:00

63 lines
1.7 KiB
INI

[metadata]
name = storyboard
summary = OpenStack Story Tracking
description-file =
README.rst
author = OpenStack
author-email = openstack-dev@lists.openstack.org
home-page = http://www.openstack.org/
classifier =
Environment :: OpenStack
Framework :: Pecan/WSME
Intended Audience :: Developers
Intended Audience :: Information Technology
Intended Audience :: System Administrators
License :: OSI Approved :: Apache Software License
Operating System :: OS Independent
Operating System :: POSIX :: Linux
Programming Language :: Python
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.3
Topic :: Internet :: WWW/HTTP
[files]
packages =
storyboard
data_files =
etc/storyboard =
etc/storyboard.conf.sample
[entry_points]
console_scripts =
storyboard-api = storyboard.api.app:start
storyboard-subscriber = storyboard.notifications.subscriber:subscribe
storyboard-worker-daemon = storyboard.worker.daemon:run
storyboard-db-manage = storyboard.db.migration.cli:main
storyboard-migrate = storyboard.migrate.cli:main
storyboard.worker.task =
subscription = storyboard.worker.task.subscription:Subscription
[build_sphinx]
source-dir = doc/source
build-dir = doc/build
all_files = 1
[upload_sphinx]
upload-dir = doc/build/html
[compile_catalog]
directory = storyboard/locale
domain = storyboard
[update_catalog]
domain = storyboard
output_dir = storyboard/locale
input_file = storyboard/locale/storyboard.pot
[extract_messages]
keywords = _ gettext ngettext l_ lazy_gettext
mapping_file = babel.cfg
output_file = storyboard/locale/storyboard.pot