Traditionally, deployment of software was a rare event. Every year, you would take all the new product features, bundle them up, and install them on your servers. The tightly coupled features of your monolith introduced a great deal of risk. If there was a single fault in your code, it could cause cascading failures in your product. Modern cloud development practices recommend decomposing your software. We have followed this pattern by creating separate files for unrelated Terraform resources. Segmenting our content even more would have given us additional benefits, but we are striving for a minimal viable product (optimization will come later).Â
In our case, deploying immediately to a production environment could have impacts on our product's service level agreements. Cycling our WordPress instances...