-
Notifications
You must be signed in to change notification settings - Fork 23.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RabbitMQ publisher module #44718
RabbitMQ publisher module #44718
Conversation
The test
The test
The test
|
The test
The test
|
Look at adding a blocking subscriber to retrieve messages.
|
The test
The test
|
6b752de
to
718ea5d
Compare
The test
|
c8b04db
to
515f643
Compare
@Jorge-Rodriguez fyi re modifications to |
1237f7b
to
d0e270b
Compare
The test
|
May we call it |
@tonyseek Thanks for the comment. I'm not against the idea of changing the name. Just wondered, have you tested the module against another broker? Does it work fine? I've only tested against Rabbit, including all the integration test plans. |
@tonyseek given that pika is only an AMQP 0.9.1 client and that the current AMQP standard is 1.0 which most other brokers provide as either default or only option, I suspect this will cause confusion. e.g. azure has AMQP (1.0), as does apache qpid, but their clients and services don't support AMQP 0.9.1. https://www.rabbitmq.com/specification.html is a good explanation of the differences. Unless somebody's actually confirmed this works, with a popular and widely deployed AMQP 0.9.1 compatible alternative broker, I'd stick firmly to calling it rabbitmq until demonstrated otherwise, or perhaps the middle ground amqp091 or something like it to allow a future amqp10 module in the same namespace. |
@dch Yes. They (AMQP 0.9 and AMQP 1.0) are different protocols. I think @Im0 Maybe we don't need to worry about AMQP10 because it is another protocol. I think I propose to consider using protocol name because I saw the |
@pilou- @dch @mattclay - thanks for the reviews and feedback. Otherwise, I'm hoping you can give your support to shipit. Thanks. |
LGTM (I am not an RabbitMQ user). |
👏 nice work @Im0 |
Merged, thanks @Im0 ! |
* RabbitMQ basic publisher * Split out of a module_util. Preparing for binary posts. * Can now send a file to the queue. * Allowing an empty queue to be used so RabbitMQ returns a random queue. * Added RETURN docstring. * Updated and added tests. Now returns a dictionary with msg, content_type and queue published to. * Extra tests and introduced a none url method of providing server host details. * Added testing and errors for url/host parameters. * Updating RETURN sample * Added an image file for testing binary publishing. * Minor changes to test. * Added filename key/value to headers if a binary file is published. * Adding ability to specify headers. * Renaming to rabbitmq_publish * Changed tests to reflect name, and, preparing for testing headers. * Updated some documentation * Minor pip install update * Modifications after feedback. * Updates based on feedback. * Fixing pep8 issue. * Updating module and module_util name to amqp. * Reverting back to rabbitmq_publish naming. * Minor addition to notes.
* RabbitMQ basic publisher * Split out of a module_util. Preparing for binary posts. * Can now send a file to the queue. * Allowing an empty queue to be used so RabbitMQ returns a random queue. * Added RETURN docstring. * Updated and added tests. Now returns a dictionary with msg, content_type and queue published to. * Extra tests and introduced a none url method of providing server host details. * Added testing and errors for url/host parameters. * Updating RETURN sample * Added an image file for testing binary publishing. * Minor changes to test. * Added filename key/value to headers if a binary file is published. * Adding ability to specify headers. * Renaming to rabbitmq_publish * Changed tests to reflect name, and, preparing for testing headers. * Updated some documentation * Minor pip install update * Modifications after feedback. * Updates based on feedback. * Fixing pep8 issue. * Updating module and module_util name to amqp. * Reverting back to rabbitmq_publish naming. * Minor addition to notes.
SUMMARY
Publish a message on a rabbitmq queue using a basic publisher
ISSUE TYPE
COMPONENT NAME
notification/rabbitmq_publish.py
ANSIBLE VERSION
ADDITIONAL INFORMATION
Output: