{ "info": { "author": "Bynder", "author_email": "info@bynder.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Software Development", "Topic :: Utilities" ], "description": "qpid-bow\n========\n\n.. image:: https://travis-ci.org/Bynder/qpid-bow.svg?branch=master\n :target: https://travis-ci.org/Bynder/qpid-bow\n.. image:: https://coveralls.io/repos/github/Bynder/qpid-bow/badge.svg?branch=master\n :target: https://coveralls.io/github/Bynder/qpid-bow?branch=master\n.. image:: https://readthedocs.org/projects/qpid-bow/badge/?version=latest\n :target: https://qpid-bow.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\nQpid Bow is a higher level client framework for Python 3.6+ to communicate with\nAMQP/Qpid servers combined with a set of CLI tools to manage a Qpid server.\n\nWith its CLI tools Qpid Bow provides the missing tooling you always wanted\nto administrate or debug your Qpid-based AMQP stack. Providing you with the\npower to manage queues and exchanges, setup and save routing using YAML files\nand various other tools.\n\nAs a framework Qpid Bow can provide you with a higher level interface on top of\nthe low level Qpid Proton library to integrate with AMQP/Qpid queues,\nexchanges and Remote Procedure Call (RPC) functionality:\n\n* Simple, callback based receiver, supporting listening for multiple queues.\n* RPC calls with automatic temporary queues and callbacks.\n* Queue based sender.\n* Included Qpid management code for queue/exchange creation.\n* Support to run under Python's asyncio event loop with *async def* callbacks.\n\n\nRequirements\n------------\n\n* Python 3.6+\n* `python-qpid-proton `_\n* `PyYAML `_\n\n\nInstallation\n------------\nQpid Bow is available from PyPI:\n\n $ pip install qpid-bow\n\nOr add qpid-bow to your application's requirements using\n``requirements.txt`` / ``setup.py`` / ``Pipfile``.\n\n\nTesting\n-------\nQpid Bow's unit tests need to connect to an actual Apache Qpid server for all\ntests to succeed. By default the tests assume a server exists on localhost.\n\nTo specify the server address to use for tests use the environment variable:\n``AMQP_TEST_SERVERS``\n\n\nAvailable tools\n---------------\n\n**Queue**\n\n* ``qb queue create`` - Create queues.\n* ``qb queue delete`` - Delete queues.\n* ``qb queue purge`` - Purge messages from a queue.\n* ``qb queue reroute`` - Reroute messages from a queue to an exchange.\n* ``qb queue stats`` - Print queue usage statistics and active number of messages.\n\n\n**Message**\n\n* ``qb message receive`` - Receive messages from a queue or an exchange.\n* ``qb message send`` - Send messages to a queue or an exchange.\n\n\n**Route**\n\n* ``qb route dump`` - View & save exchange -> queue routing.\n* ``qb route config`` - Setup exchange -> queue routing from a saved file.\n\n\n**Connection**\n\n* ``qb connection kill`` - Kill connections from the server.\n\n\n**Session**\n\n* ``qb session outgoing`` - List outgoing sessions from the server.\n\n\nConfiguration & Environment variables\n-------------------------------------\nSeveral options exist to configure Qpid Bow. In order of preference:\n\n**Pass in arguments**\nOne can always override the used server URL using arguments:\n\n* For the CLI tools, use the ``--broker-url`` command line argument.\n* For the library pass in the keyword argument ``server_url``.\n\n**Configure using a dict**\nWhen using Qpid Bow as a library, one can pass in config using a dict to:\n``qpid_bow.config.configure``\n\nThe dict can contain the following entries:\n\n* ``amqp_url`` - Comma-separated list of main and failover servers to connect to.\n* ``username`` - Username to use when no username is provided in the URL.\n* ``password`` - Password to use when no password is provided in the URL.\n\n**Environment variables**\nThe easiest way to configure Qpid Bow's tools and library is to use environment variables.\nThese variables can be added to your shell's profile and will automatically get picked up.\n\n* ``AMQP_SERVERS`` - Comma-separated list of main and failover servers to connect to.\n* ``AMQP_TEST_SERVERS`` - Same as ``AMQP_SERVERS``, used solely for unittests.\n\nexample: ``AMQP_SERVERS=amqp://user:pass@192.168.1.1:5672,amqp://user:pass@192.168.1.2:5672``\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Bynder/qpid-bow/", "keywords": "bynder", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "qpid-bow", "package_url": "https://pypi.org/project/qpid-bow/", "platform": "", "project_url": "https://pypi.org/project/qpid-bow/", "project_urls": { "Homepage": "https://github.com/Bynder/qpid-bow/" }, "release_url": "https://pypi.org/project/qpid-bow/1.1.1/", "requires_dist": [ "python-qpid-proton (==0.24.0)", "PyYAML (>=3.12)", "python-qpid-proton (==0.24.0); extra == 'docs'", "PyYAML (>=3.12); extra == 'docs'", "sphinx; extra == 'docs'", "sphinx-rtd-theme; extra == 'docs'", "sphinxcontrib-asyncio; extra == 'docs'", "python-qpid-proton (==0.24.0); extra == 'test'", "PyYAML (>=3.12); extra == 'test'", "astroid (<1.6.0); extra == 'test'", "bandit; extra == 'test'", "mypy (==0.501); extra == 'test'", "pylint (==1.7.0); extra == 'test'", "pytest; extra == 'test'", "pytest-cov; extra == 'test'" ], "requires_python": "", "summary": "Set of tools to work with Qpid and a library for high-level Qpid interaction.", "version": "1.1.1" }, "last_serial": 4439958, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "69e4726829394153dde43628be4762fe", "sha256": "d5a5ed407bd37dc348551b183883970fa6ed2fb81def1b16fb053b851b414df2" }, "downloads": -1, "filename": "qpid_bow-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "69e4726829394153dde43628be4762fe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 37686, "upload_time": "2018-06-25T11:45:15", "url": "https://files.pythonhosted.org/packages/dc/8c/d40afb790224fc0fe00e9a5c7376248347c52191e3675ed1872779efe2c2/qpid_bow-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e0f783ed0c68352eb1a7d9f77609c17a", "sha256": "0ce7d2a06876ea2d4604f6055d297c4998b3ba6e611d5878e16aa8d318a87e2c" }, "downloads": -1, "filename": "qpid-bow-1.0.0.tar.gz", "has_sig": false, "md5_digest": "e0f783ed0c68352eb1a7d9f77609c17a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25327, "upload_time": "2018-06-25T11:45:17", "url": "https://files.pythonhosted.org/packages/e6/ba/0e48d2cc5a7416bba4ce538d73a4698ddf71879d099dc16936b4ba790a79/qpid-bow-1.0.0.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "cadaa0189fa588b5151ed7ef579f541c", "sha256": "094148c40ed5245368c77505955a7cff9067f558d7faf6f4c1cc62ee1d9defee" }, "downloads": -1, "filename": "qpid_bow-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "cadaa0189fa588b5151ed7ef579f541c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 37708, "upload_time": "2018-07-16T12:49:34", "url": "https://files.pythonhosted.org/packages/12/7f/7b8f938c6de1554ddd7ea0e57c58d519e9f7cc30530da2964f5b7d3d0af7/qpid_bow-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0ef8acb12de2df400531bdef3d384c0d", "sha256": "a51e5d229df63255c555e4494dd121e07af766ac437fd88685dc5330ccda149d" }, "downloads": -1, "filename": "qpid-bow-1.0.2.tar.gz", "has_sig": false, "md5_digest": "0ef8acb12de2df400531bdef3d384c0d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25385, "upload_time": "2018-07-16T12:49:35", "url": "https://files.pythonhosted.org/packages/17/4f/65934bfaeab443b57bf412132dbff8047fca3205977367f1058260e1b3d6/qpid-bow-1.0.2.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "c1dc3d67e794ab32496a6302c985a0b7", "sha256": "01f3b20d64e16cde07b70601941272e15069685a0ea3fcef0743d31a8866ef89" }, "downloads": -1, "filename": "qpid_bow-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "c1dc3d67e794ab32496a6302c985a0b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39098, "upload_time": "2018-08-02T10:59:46", "url": "https://files.pythonhosted.org/packages/de/68/6ad9a93fef42af677b8b1ac8f2e02a2caae12432b54b1c347fcd570af1e5/qpid_bow-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "902c21d17090a0521b533bc60df091d3", "sha256": "ac9a1dc339d42543bed26df9730537c607e04917c2475ba4d1f5464d1079f179" }, "downloads": -1, "filename": "qpid-bow-1.1.0.tar.gz", "has_sig": false, "md5_digest": "902c21d17090a0521b533bc60df091d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26876, "upload_time": "2018-08-02T10:59:47", "url": "https://files.pythonhosted.org/packages/91/79/e67b8889ce202f0501445da84a9c7581c0501db949972e16c13d6631e545/qpid-bow-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "6aadab5f729236e4e13f7638d78e2dfc", "sha256": "4f5fa68baabf7b3177d9fd69a2556c2ad36c835e6dabdd0ca632fd0f7bbce9d6" }, "downloads": -1, "filename": "qpid_bow-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6aadab5f729236e4e13f7638d78e2dfc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39095, "upload_time": "2018-11-01T09:12:45", "url": "https://files.pythonhosted.org/packages/5a/53/60deeae5222057484694226abeae613ce06726d302e9210126d40b08a400/qpid_bow-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3909dfe206ec7ebaa765b7c557f42447", "sha256": "aaaab9ab9fa44c294db78134731d14259e6885940beccdfa941a26e4bf54396c" }, "downloads": -1, "filename": "qpid-bow-1.1.1.tar.gz", "has_sig": false, "md5_digest": "3909dfe206ec7ebaa765b7c557f42447", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26375, "upload_time": "2018-11-01T09:12:46", "url": "https://files.pythonhosted.org/packages/da/d4/1732bf3d018b24c69352f0d90d099ece8be687e2350664e0a7ce5e699497/qpid-bow-1.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6aadab5f729236e4e13f7638d78e2dfc", "sha256": "4f5fa68baabf7b3177d9fd69a2556c2ad36c835e6dabdd0ca632fd0f7bbce9d6" }, "downloads": -1, "filename": "qpid_bow-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6aadab5f729236e4e13f7638d78e2dfc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39095, "upload_time": "2018-11-01T09:12:45", "url": "https://files.pythonhosted.org/packages/5a/53/60deeae5222057484694226abeae613ce06726d302e9210126d40b08a400/qpid_bow-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3909dfe206ec7ebaa765b7c557f42447", "sha256": "aaaab9ab9fa44c294db78134731d14259e6885940beccdfa941a26e4bf54396c" }, "downloads": -1, "filename": "qpid-bow-1.1.1.tar.gz", "has_sig": false, "md5_digest": "3909dfe206ec7ebaa765b7c557f42447", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26375, "upload_time": "2018-11-01T09:12:46", "url": "https://files.pythonhosted.org/packages/da/d4/1732bf3d018b24c69352f0d90d099ece8be687e2350664e0a7ce5e699497/qpid-bow-1.1.1.tar.gz" } ] }