Skip to main content

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_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

Changelog

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

edeposit.amqp-1.4.0.tar.gz (263.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page