Test infrastructure
Regardless of the configuration management system that your organization decides to use to deploy and configure the OpenStack software, it is critical that the deployment process is driven by the test infrastructure. It has been our experience that manually administrated environments always result in inconsistency, regardless of the skill of the operator performing the deployment. Automated deployments cannot happen in a vacuum however, for them to be successful, they need to provide immediate feedback to the developer and operator so that they can decide whether the deployment was successful. We've been through a lot of manual deployments and manual acceptance tests using OpenStack, and the cycles can take days or weeks to complete.
Types of testing
There are several stages of testing that are applied to the changes in the composition layer before they're applied to the environment. At each stage, the deployment is stopped if the tests fail. We refer to this set of stages...