Hello Ansible community,
my name is Pino Toscano, and I work at Red Hat as part of the Ansible EDA team.
As part of the EDA ecosystem, the Red Hat EDA team maintains the ansible.eda collection:
While this collection has been working fine so far, it has a number of drawbacks:
- it is also a Red Hat certified collection, and we ship is as part of AAP; because of this, what can be accepted in
ansible.edais limited, and thus it is harder to get additional content even if not supported by us - some of the content better fits in more specific collections – for example the plugins related to cloud providers (AWS, Azure)
- some of the content does not work when used in AAP, but only when run via
ansible-rulebook - last but not least, some of the content is actually needed to even write/test rulebooks, and so far using the
ansible.edacollection was almost a must withansible-rulebook
Because of the reasons above, we decided to take some steps to improve the situation w.r.t. (hopefully) all the drawbacks.
New community.eda collection
We started the effort of a new community.eda collection, to include any community-oriented and maintained plugin for ansible-rulebook. You can read more on the announcement here: New community.eda collection
New ansible-rulebook builtins
Since some of the event sources and event filters are useful no matter which collection you need, we decided to make some of them available as builtin modules in ansible-rulebook. The list of new builtin modules is:
eda.builtin.dashes_to_underscores(filter)eda.builtin.generic(source)eda.builtin.insert_hosts_to_meta(filter)eda.builtin.json_filter(filter)eda.builtin.normalize_keys(filter)eda.builtin.pg_listener(source)eda.builtin.range(source)eda.builtin.webhook(source)
All of them are currently available as ansible.eda.something. These new builtins will be available in a new upstream release of ansible-rulebook in the coming weeks. Once the new release of ansible-rulebook is available, the modules in the ansible.eda collection will be marked as deprecated.
Cloud provider plugins
The modules specific to the AWS and Azure cloud providers are more suited in the collections for them, as their maintainers have more experience on the cloud providers themselves than us (EDA).
Regarding AWS: the aws_cloudtrail & aws_sqs_queue sources are currently in the process of being integrated in the amazon.aws collection.
Regarding Azure: the azure_service_bus source is available in the azure.azcollection collection starting from version 3.7.0. Hence, the source in ansible.eda will soon be marked as deprecated.
Plugins to be removed
A couple of plugins have either no use, or have more suitable replacement; in particular:
noop(filter): no need to use a filter that does nothingtick(source): thegenericandrangesources provide better alternatives
These plugins will be soon marked as deprecated.
Long text, and lots of changes planned and already happening. Happy to help for more questions, doubts, etc.
Pino