Set up your rabbit instance using a declarative yaml file.
Project description
RoboRabbit
Set up your rabbit instance using a declarative yaml file.
Command
roborabbit --config path/to/roborabbit.yaml
info
Usage: roborabbit [OPTIONS]
import yaml config file and creates a dictionary from it
Options:
--config TEXT Path to rabbit config yaml file
--host TEXT RabbitMQ host
--port TEXT RabbitMQ port
--virtualhost TEXT RabbitMQ virtualhost
--username TEXT RabbitMQ username
--password TEXT RabbitMQ password
--help Show this message and exit.
Override environment variables
RABBIT_USER=guest
RABBIT_PASS=guest
RABBIT_HOST=localhost
RABBIT_PORT=5672
RABBIT_VHOST=/
Example yaml files
Simple declare queue, exchange, and bind
# Connection info
host: localhost
username: guest
password: guest
virtualhost: /
port: 5672
exchanges:
- name: exchange_1
type: topic
queues:
- name: queue_1
bindings:
- from:
type: exchange
name: exchange_1
to:
type: queue
name: queue_1
routing_key: records.created
Header exchange declaration and binding
# Connection info
host: localhost
username: guest
password: guest
virtualhost: /
port: 5672
exchanges:
- name: exchange_2
type: headers
queues:
- name: queue_2
bindings:
- from:
type: exchange
name: exchange_2
to:
type: queue
name: queue_1
bind_options:
x-match: all
hw-action: header-value
All Values Available
# Connection info
host: localhost
username: guest
password: guest
virtualhost: /
port: 5672
# Exchange declarations
exchanges:
- name: string
type: topic|headers|direct|fanout # topic is default
durable: false # default
auto_delete: true # default
# queue declarations
queues:
- name: string
type: quorum # Not required. This is the default and currently only option available (For us, all our queues are quorum. We manually create the queue that needs other requirements). MR welcome
# create_dlq: true # TODO: This will be the default. Set to false if you do not want a dead letter queue/exchange for this queue
durable: true # default
robust: true # default
auto_delete: false # default
exclusive: false # default
auto_delete_delay: 0 # default
arguments: # rabbit specific key/value pairs
key_1: value_1
key_2: value_2
# bindings
bindings:
- from:
type: exchange
name: string
to:
type: exchange|queue
name: string
routing_key: string # required, unless bind_options is defined
bind_options: # required if binding to a header exchange
x-match: all|any # header type of matcher
header-key: string # header topic to be matched
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
roborabbit-0.2.8.tar.gz
(9.8 kB
view details)
Built Distribution
File details
Details for the file roborabbit-0.2.8.tar.gz
.
File metadata
- Download URL: roborabbit-0.2.8.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.10 CPython/3.9.7 Darwin/20.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbb0699dba6120105d1bf17ef9761848de161e1f9d1a88ae6859a80050a79b34 |
|
MD5 | a7738ad21d6d608cd1e9c68a69cf9bfb |
|
BLAKE2b-256 | 2729b9fc8053a9298b0fa7e4e25b43fcf0b394fc95529105a18cb3f7062f309c |
File details
Details for the file roborabbit-0.2.8-py3-none-any.whl
.
File metadata
- Download URL: roborabbit-0.2.8-py3-none-any.whl
- Upload date:
- Size: 10.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.10 CPython/3.9.7 Darwin/20.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b26d0f37714ff69f436753a64c96fa2d1b690eaeae33b35594417aa2f093efb |
|
MD5 | 3944a03aa2b14cc25ce3d8cab6ff791e |
|
BLAKE2b-256 | 005eea2b839812943cd7c23a61bfa63768eb6d9ac4f6b13453e58f53660682f3 |