After the initial infrastructure is created (like databases and load balancers), then the code is deployed. This might cause some confusion between the stages of setup and patch, but the initial code deployment has to happen during the setup stage so that the environment is fully running when the setup is complete. To further complicate matters, the setup involves what some software engineers think is a build and deploy step (for example, using yarn build
or assets creation and uploading) but this is actually a runtime step where we issue one or more docker run
command(s). (It's more complicated than that: we use Kubernetes and very heavy machinery under the covers.)