E-Deposit's AMQP definitions and common classes/patterns.
Project description
Introduction
This module contains common parts shared with other AMQP modules from Edeposit project. Main purpose is to provide configuration data to AMQP server and generic daemons, to run the modules.
Installation
Module is hosted at PYPI, and can be easily installed using PIP:
pip install edeposit.amqp
Source code can be found at GitHub: https://github.com/edeposit/edeposit.amqp
Documentation
Full module documentation is hosted at ReadTheDocs: http://edeposit-amqp.readthedocs.org
Content
Content can be divided between generic modules to support AMQP communication and scripts, which provides ability to test and tweak AMQP communication.
Scripts
Scripts should be automatically installed to your $PATH.
edeposit_amqp_alephdaemon.py
Daemon providing AMQP communication with the edeposit.amqp.aleph module.
edeposit_amqp_calibre.py
Daemon providing AMQP communication with the edeposit.amqp.calibre module.
edeposit_amqp_tool.py
Script for testing the communication and creating exchanges/queues/routes in RabbitMQ.
Modules
edeposit.amqp.settings
Configuration for RabbitMQ server and E-deposit client modules connecting into it.
edeposit.amqp.daemonwrapper
Class for spawning Unix daemons.
edeposit.amqp.pikadaemon
Generic AMQP blocking communication daemon server.
Unittests
pytest is used to test the code. You can find the tests in edeposit/amqp/tests directory.
Tests can be invoked by running ./run_tests.sh script:
$ ./run_tests.sh -a ============================= test session starts ============================== platform linux2 -- Python 2.7.5 -- py-1.4.20 -- pytest-2.5.2 collected 8 items edeposit/amqp/tests/test_daemon.txt . edeposit/amqp/tests/integration/test_aleph.py started with pid 18108 sending response result ..No handlers could be found for logger "pika.adapters.base_connection" edeposit/amqp/tests/integration/test_daemons.py . edeposit/amqp/tests/integration/test_package.py .. edeposit/amqp/tests/unittests/test_settings.py .. ========================== 8 passed in 14.43 seconds ===========================
Contributors
Jan Stavel <stavel.jan@gmail.com>, Tester
Bystroushaak <bystrousak@kitakitsune.org>, Developer
Changelog
1.4.1
Fixed bug in setup.py.
1.4.0
Scripts moved to /bin directory. They will be put to $PATH when package is installed, so users won’t need too call them with full path.
Added bindings to edeposit.amqp.ftp.
Documentation improved.
Added new amqp tool.
Tests migrated to pytest.
Fixed some bugs.
1.3.0 - 1.3.3
Added tracebacks to the headers, if the exception is thrown.
RABBITMQ_ALEPH_DAEMON_QUEUE renamed to RABBITMQ_ALEPH_INPUT_QUEUE
RABBITMQ_ALEPH_PLONE_QUEUE renamed to RABBITMQ_ALEPH_OUTPUT_QUEUE
RABBITMQ_ALEPH_DAEMON_KEY renamed to RABBITMQ_ALEPH_INPUT_KEY.
RABBITMQ_ALEPH_PLONE_KEY renamed to RABBITMQ_ALEPH_OUTPUT_KEY.
Unicode added to allowed types in settings.py.
Added dependency to edeposit.amqp.calibre.
Version of package and documentation is now automatically parsed from this file.
Images in documentation were downloaded to _static.
Changed internal way of handling AMQP communication. This shouldn’t change user API.
Documentation updated to reflect changes in internal API. Added UML diagrams.
1.2.0 - 1.2.2
Documentation updated. Added intersphinx links to edeposit.amqp.serializers.
edeposit.amqp.serializers API changed, so this module needed to be adjusted.
Serialization is now handled (but not stored) in this module, instead of aleph. It will be used in other modules too.
Added dependency to edeposit.amqp.serializers.
1.1.5 - 1.1.6
Documentation is now even for settings.py’s attributes.
User defined JSON configuration is now supported.
Added autogeneration of documentation to the package generator (setup.py).
1.1.0
Project released at PYPI
1.0 (unreleased)
alephdaemon is working correctly, other classes are in release state too
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.