| Nice piece. Looking forward to Part II. What I am missing (often, in these type of articles as well as in actual production environments) is the fact that if you develop (infrastructure) code, you also need to test your (infrastructure) code. Which means you need actual infrastructure to test on. In my case, this means network equipment, storage equipment and actual physical servers. If you're in a cloud, this means you need a seperate account on a seperate creditcard and start from there to build up the infra that Dev and Ops can start deploying their infra-as-code on. And this test-infrastructure is not the test environments other teams run their tests on. If that is not available, automating your infrastructure can be dangerous at best. Since you cannot properly test your code. And your code will rot. |
This of course depends on your level of lock-in with various cloud environments.