Having predominantly worked with cloud services for a large part of my career one thing I've taken for granted is how ingrained infrastructure as code (IaC) is in most of my actions. Whether it's application that's deployed on a container or a configuration change it's stored in a repository and ideally reviewed. Reading Chris Siebenmann's post made me think about this some more.
The git log and pull request/code review act as the reasoning or documentation of the change. The repository itself reflects the current and past states of the infrastructure. Lastly, the IaC tooling is able to diff and hopefully manifest that change into reality. Rolling back to a past state should also hopefully be possible and usually is.
Read from link