Skip to content

Commit

Permalink
New Module: Amazon MQ (#432)
Browse files Browse the repository at this point in the history
New Module: Amazon MQ

SUMMARY
replicates ansible-collections/amazon.aws#266 as suggested
This PR contains some basic support for Amazon MQ. It covers

Managing Amazon MQ brokers
Managing Amazon MQ configurations
Managing Amazon MQ (local) users

ISSUE TYPE

New Module Pull Request

COMPONENT NAME
Amazon MQ
ADDITIONAL INFORMATION
We use those modules to manage our MQ Brokers. The context of usage is

brokers are created by different means (e.g. terraform) - but the module is capable of doing that as well
we've developed a custom role around those modules
to manage MQ user credentials we use another local extension of amazon.aws collection (will come as separate PR) that interfaces with AWS SecretsManager
that role uses the reboot broker feature (part of this PR) to implement a custom handler that reboots a broker whenever a configuration run sees any changes in configuration and/or users

The functionality of the added modules is illustrated in the added test suite (tests/integration/targets/mq) some of them still require a running MQ broker to be usable.
Missing functionality/limitations:

requires a recent version of boto3 library  (older versions don't support all Amazon MQ features used here)
API results are returned "as is", i.e. there's no conversion from camel case yaml to snake yaml

mq_broker.py

no support for LDAP connection (external user management)
update configuration only supported through mq_broker_config.py
known to work only with EngineType=ACTIVEMQ (proper support for RABBITMQ still missing)

mq_broker_config.py

needs proper XML comparison between current and desired configuration (current one is too simplistic)
only tested with ActiveMQ configurations

Reviewed-by: Mark Chappell
Reviewed-by: Alina Buzachis
  • Loading branch information
fotto authored Mar 20, 2023
1 parent 3ad3b97 commit 43f2bf1
Show file tree
Hide file tree
Showing 22 changed files with 1,981 additions and 0 deletions.
5 changes: 5 additions & 0 deletions meta/runtime.yml
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,11 @@ action_groups:
- lightsail_static_ip
- msk_cluster
- msk_config
- mq_broker
- mq_broker_config
- mq_broker_info
- mq_user
- mq_user_info
- networkfirewall
- networkfirewall_info
- networkfirewall_policy
Expand Down
Loading

0 comments on commit 43f2bf1

Please sign in to comment.