Azure Pipelines are used to deploy the application and all associated infrastructure.
Prerequisits:
- You will need an Azure account.
- You will need an Azure DevOps account.
- If you've created a new free DevOps account, you'll need to apply for the free parallel job grant, which can take a day or two to come through.
Instructions for registering a new pipeline are out of scope for these docs, see Azure Pipelines docs for more info.
You will need to create two service connections, each linked to a subscription:
VehicleTaxonomyAzure.non-prod
: This is used for the "dev" environment. If we were to use other environments such as "uat" or "staging" these would also come under this service connection/subscription.VehicleTaxonomyAzure.prod
: This is only used for the "prod" environment, allowing us to separate and secure this environment if required.
The pipeline runs the IaC bicep code, creating a resource group for the environment and any required infrastructure.
You will need two pipeline environments, dev
and prod
. It's expected that you set up an approval check on the prod
environment, allowing you to check the results of the bicep what-if
command before proceeding with deployment, but it's not required.
You can delete the deployed Azure resources by deleting their resource groups, either via the Azure portal or via the Azure CLI:
az group delete --name rg-veh-tax-bic-dev --no-wait
az group delete --name rg-veh-tax-bic-prod --no-wait