Ladies and gentlemen, put your hands in the air, for Programmable Infrastructure is here!
Perhaps Infrastructure-as-Code (IaC) is not an entirely new concept considering how long Configuration Management has been around. Codifying server, storage, and networking infrastructure and their relationships, however, is a relatively recent tendency brought about by the rise of cloud computing. But let us leave Configuration Management for later and focus our attention on that second aspect of IaC.
You should recall from the previous chapter some of the benefits of storing all the things as code:
Code can be kept under version control
Code can be shared/collaborated on easily
Code doubles as documentation
Code is reproducible
That last point was a big win for me personally. Automated provisioning helped reduce the time it took to deploy a full-featured cloud environment from four hours down to one, and the occurrences of human error to almost zero ...