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.1.7.tar.gz
(8.2 kB
view details)
Built Distribution
File details
Details for the file roborabbit-0.1.7.tar.gz
.
File metadata
- Download URL: roborabbit-0.1.7.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.7 CPython/3.9.6 Darwin/20.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1b4b616b52ce6827de3987d17c155760d19eacd79ac38f4795e31848c69acc0 |
|
MD5 | c5d09fcdfb612d377faecc2b5c2ecc28 |
|
BLAKE2b-256 | caa8f718b3c40a4904d842bb66b6cabae2b3bb6acb12b3da353e205cf9013a55 |
File details
Details for the file roborabbit-0.1.7-py3-none-any.whl
.
File metadata
- Download URL: roborabbit-0.1.7-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.7 CPython/3.9.6 Darwin/20.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d73a2c3f4b6f47e46c34b44c0130207d36739d2a040bace5f8cb759c885c020 |
|
MD5 | c0cd2fb11988bde388e95572f7b5f141 |
|
BLAKE2b-256 | 428ad149d4976cdb51938bcb999746afd9ed1622e157b7b1878b73e65d9f97de |