At the moment, Ansible roles are used for too many things, making it ambiguous where to implement individual functionality.
Find and implement a better architecture for creating machines and containers, provisioning machines and containers, preparing artefacts, and testing artefacts.