- Disaster Recovery - Being able to stand up a new environment at will is the ultimate form of backup.
- Repeatability - By building and tearing down the environment often, we know that we have documented everything about the environment. We will fail early if we have a step not documented, so it will probably be on our minds and easy to recover from.
- Refactoring/Scaling up - We can refactor at the environment level because nothing need be fixed if we are building and tearing the environment down at will. This allows us to easily re-size the VMs we are using if we want to test the impact of different infrastructure on performance.
- Multiple Teams/Development tracks - By being able to build out an environment at will, we can bring on additional teams and give them each their own environment that exactly matches everyone else's.
- Because We Can - It is worth doing, just for the sake of doing it. Let the engineers figure out a use for it. That's not our concern.
These are the first five reasons that came to mind, but I am sure that the list is not exhaustive. Let me know yours below.