Celery signal processor for Bungiesearch
Project description
===================
celery-bungiesearch
===================
.. image:: https://travis-ci.org/afrancis13/celery-bungiesearch.svg
A repository that wraps the provided Bungiesearch signal processing class
in your own celery tasks.
This Django app allows you to utilize Celery for automatically updating and deleting
objects in a Bungiesearch search index.
Compatible with most recent version of Bungiesearch, which is similar to Haystack,
but interacts directly with elasticsearch-dsl and therefore allows for more custom
ranking functions.
Install
-------
.. code-block:: python
pip install celery-bungiesearch
Requirements
------------
* Django 1.4.3+
* Bungiesearch_ 1.1.0+
* Celery_ 3.1.18+
Usage
-----
1. Add ``'celery_bungiesearch'`` to ``INSTALLED_APPS`` in settings
.. code-block:: python
INSTALLED_APPS = [
# ..
'celery-bungiesearch',
]
2. Add ``CelerySignalProcessor`` to ``settings.BUNGIESEARCH['SIGNAL_CLASS']`` in settings. This will ensure that any model that's managed by a ``BungiesearchManager`` acquire ``CelerySignalProcessor`` as the signal processor.
.. code-block:: python
from celery_bungiesearch import CelerySignalProcessor
BUNGIESEARCH = {
# ..
'SIGNALS': {
'SIGNAL_CLASS': 'celery_bungiesearch.signals.CelerySignalProcessor',
'BUFFER_SIZE' : 100
}
}
3. Add celery-bungisearch configuration variables to your settings file. The task below is the default version, but you may include your own custom class if you desire:
.. code-block:: python
CELERY_BUNGIESEARCH_QUEUE = None
CELERY_BUNGIESEARCH_TASK = 'celery_bungiesearch.tasks.celeryindex.CeleryIndexTask'
3. Ensure your Celery instance is running.
Testing
-------
You can run tests locally for celery-bungiesearch by simply running the command ``tox`` or ``tox test``. You must have an instance of elasticsearch running locally. You can also run tests using continuous integration with Travis CI (build status at the top of this README).
Thanks
------
This application borrows liberally from Jannis Leidel's `celery-haystack`_ and from Christopher Rabotin's Bungiesearch_, which itself was the inspiration for this project.
Issues
------
Please submit a pull request or use the `Github issue tracker`_ for any bug fixes, bug reports, or feature requests.
.. _`celery-haystack`: https://celery-haystack.readthedocs.org/en/latest/
.. _Bungiesearch: https://github.com/Sparrho/bungiesearch
.. _Celery: http://celeryproject.org/
.. _`Github issue tracker`: https://github.com/afrancis13/celery-bungiesearch/issues
celery-bungiesearch
===================
.. image:: https://travis-ci.org/afrancis13/celery-bungiesearch.svg
A repository that wraps the provided Bungiesearch signal processing class
in your own celery tasks.
This Django app allows you to utilize Celery for automatically updating and deleting
objects in a Bungiesearch search index.
Compatible with most recent version of Bungiesearch, which is similar to Haystack,
but interacts directly with elasticsearch-dsl and therefore allows for more custom
ranking functions.
Install
-------
.. code-block:: python
pip install celery-bungiesearch
Requirements
------------
* Django 1.4.3+
* Bungiesearch_ 1.1.0+
* Celery_ 3.1.18+
Usage
-----
1. Add ``'celery_bungiesearch'`` to ``INSTALLED_APPS`` in settings
.. code-block:: python
INSTALLED_APPS = [
# ..
'celery-bungiesearch',
]
2. Add ``CelerySignalProcessor`` to ``settings.BUNGIESEARCH['SIGNAL_CLASS']`` in settings. This will ensure that any model that's managed by a ``BungiesearchManager`` acquire ``CelerySignalProcessor`` as the signal processor.
.. code-block:: python
from celery_bungiesearch import CelerySignalProcessor
BUNGIESEARCH = {
# ..
'SIGNALS': {
'SIGNAL_CLASS': 'celery_bungiesearch.signals.CelerySignalProcessor',
'BUFFER_SIZE' : 100
}
}
3. Add celery-bungisearch configuration variables to your settings file. The task below is the default version, but you may include your own custom class if you desire:
.. code-block:: python
CELERY_BUNGIESEARCH_QUEUE = None
CELERY_BUNGIESEARCH_TASK = 'celery_bungiesearch.tasks.celeryindex.CeleryIndexTask'
3. Ensure your Celery instance is running.
Testing
-------
You can run tests locally for celery-bungiesearch by simply running the command ``tox`` or ``tox test``. You must have an instance of elasticsearch running locally. You can also run tests using continuous integration with Travis CI (build status at the top of this README).
Thanks
------
This application borrows liberally from Jannis Leidel's `celery-haystack`_ and from Christopher Rabotin's Bungiesearch_, which itself was the inspiration for this project.
Issues
------
Please submit a pull request or use the `Github issue tracker`_ for any bug fixes, bug reports, or feature requests.
.. _`celery-haystack`: https://celery-haystack.readthedocs.org/en/latest/
.. _Bungiesearch: https://github.com/Sparrho/bungiesearch
.. _Celery: http://celeryproject.org/
.. _`Github issue tracker`: https://github.com/afrancis13/celery-bungiesearch/issues
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
Built Distribution
Close
Hashes for celery-bungiesearch-1.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5505bdc4a13fe079c3852d028c8ed63557fa3ea3f0e61fe59e6e899b83307742 |
|
MD5 | 4f26cb97692041345161af7666b3f17b |
|
BLAKE2b-256 | 0659943a4fd8151ba01682c9cad44561fdb91b4101c1f535afb5a8ce95648d32 |
Close
Hashes for celery_bungiesearch-1.0.0-cp27-none-macosx_10_10_intel.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a85f6827c57f3a4847a53d7be2714c06c522b3c93d65f76232745895e3b18a50 |
|
MD5 | 38ad38703d60816fe4292b99e755ef14 |
|
BLAKE2b-256 | 3a5165f4b22a1726053dbbda2d5ee7505de2c8c24dedb6b9532b473bd18a33c1 |