Automating the deployment
As we discussed in our design, our solution is made up of two application components: the frontend and the backend. Each has a code base of application code and operating system configuration encapsulated within a Packer template. These two application components are then deployed into a cloud environment on Azure that is defined within our Terraform code base.
Just as we did in Chapters 7 and 8 with the AWS and Azure solutions, there is an additional code base that we have to discuss: our automation pipelines on GitHub Actions.
In Chapter 7, we went over the folder structure for our code base and where our GitHub Actions fit in so that we know that our automation pipelines are called workflows, and they’re stored in /.github/workflows
. Each of our code bases is stored in its respective folder. Our solutions source code repository’s folder structure will look like this:
.
github
workflows
dotnet
backend
frontend
packer
backend
frontend
terraform...