Chapter 8. Extending automation to test, staging, and production environments

 

This chapter covers

  • Using Ansible to provision multiple environments
  • Moving your infrastructure to the cloud

In the previous chapter we wrote an Ansible playbook to automatically provision the local development environment for the UAD application. In this chapter we’ll build on that work, refactoring our Ansible scripts so that we can reuse them to provision all our environments, all the way from the developer’s machine to the production servers.

Before we start, we should quickly go over what environments a piece of software needs to run on, and why we’d want to automate the provisioning process for those environments.

Every software application will have slightly different requirements about what environments are needed in order to develop and run it, but in general the list will look something like this:

8.1. Benefits of automated infrastructure

8.2. Extending automation to other environments

8.3. To the cloud!

8.4. Summary