A test framework exists for Ansible roles called Molecule; we should investigate how best we can take advantage of this for testing purposes. At the very least, we could use it to run ansible-lint on our roles, but it'd be cool if we could take advantage of all of the feature it provides. For example, it can spin up a system, apply the role once to verify it works, apply it a second time to verify it's idempotent, and also run python tests to verify the system's configuration after the role has been applied.