Split out the rabbitmq_server role into it’s own repository.
Roles are all contained within a single monolithic repository making it impossible/difficult to consume the OSA roles outside of deploying the entire stack.
To ensure that the OSA project is consumable by other stacks using different architectures, deployment methods, and capabilities the role “rabbitmq_server” need to be moved from the monolithic stack and into the it’s own role repository.
Leave everything the way it is. However doing that will hurt general OSA adoption.
While the change will impact the placement of the role it will not impact upgrade-ability of the stack. The general workflow will need to be updated to ensure that users are updating roles on upgrade using the Ansible galaxy interface however generally speaking this is already being done for the deployer when running the bootstrap-ansible.sh script.
Moving the role to an external repository will cause an impact in time to role resolution however that impact should be minimal.
Deployers will need to be aware of the new role locations and how to update existing roles however this should be minimal considering the tooling for updating existing roles already exists
Developers will need focus work within the roles which will exist within separate repositories.
The base README.rst file will be updated to explain how the role can be used as a standalone role.