Setting up Key Vault secured Pipelines with Azure DevOps

One of the first things you need to do when setting up a new Azure DevOps pipeline is to pull secrets from Azure Key Vault into a Variable Group. Variable Groups can be used by your project to setup how things like Terraform in your pipelines will authenticate themselves with Azure, AWS, or GCP. By … Continue reading Setting up Key Vault secured Pipelines with Azure DevOps

Azure Functions + EventGrid Subscriptions With Terraform

I think I figured it out. I have been working with Serverless Microservices Architecture on Azure for quite some time. I’ve been trying to leverage Terraform to effectively manage the extensive configuration of PaaS services on Azure. Due to immaturity of the Terraform AzureRM provider I’ve encountered well-documented challenges. This is the last major hurdle … Continue reading Azure Functions + EventGrid Subscriptions With Terraform

Using Terraform to Provision Microservices with Azure API Management Backed by Azure Functions

So I’ve talked about the fact that the Azure Function resource in the AzureRM provider does not support the exporting of the Key necessary to integrate Azure Functions with Azure API Management. However, I have recently employed a work around, whereby you are able to export the Azure Function Key using the Resource Group Template … Continue reading Using Terraform to Provision Microservices with Azure API Management Backed by Azure Functions

Azure API Management Backend Management with PowerShell

If you are using API Management you Might have noticed that there is no Azure Portal Access to view the Backends that are created automatically when you import you API from wherever. You might have also noticed it takes a ridiculously long time to provision and API Management resource. Therefore, destroying it completely and re-creating … Continue reading Azure API Management Backend Management with PowerShell

Terraform + Azure DevOps Environment Variable Piping Tips

When establishing good security processes around your software release pipeline it’s important to ensure that secrets are handled with care. As a best practice, I always ensure secrets that need to be used in a CI / CD pipeline are stored in Key Vault and imported into an Azure DevOps Variable Group. This allows the … Continue reading Terraform + Azure DevOps Environment Variable Piping Tips

Azure Serverless Architecture Automation with Terraform Explained

Here is a higher level view of the architecture and all the things that Terraform is provisioning. Based on my previous post, we know that certain things still require manual intervention but Terraform can provision a lot of stuff: Resource Group Event Grid Topics (but no Topics Subscriptions due to Function Access Key limitation) CosmosDB … Continue reading Azure Serverless Architecture Automation with Terraform Explained

Challenges using Terraform with Azure Serverless Architecture

We’ve been exercising the AzureRM and AzureAD Terraform providers with a healthcare client who wants to go serverless with a new product they are building. We’ve been able to automate a significant portion of the infrastructure with relative ease, however, there are limitations to both the Terraform providers and the operational models of Azure Functions … Continue reading Challenges using Terraform with Azure Serverless Architecture

Configuring AzureAD provider in Terraform to manage App Registrations

Automating the provisioning of Application Registrations (i.e. App Registrations) can be a very useful way of organizing your application’s Infrastructure as Code. Keeping track of all these disparate app registrations, who they belong to, what they are for, can be very tedious and challenging. It can get messy very quickly as well and a wary … Continue reading Configuring AzureAD provider in Terraform to manage App Registrations

Unit Test Service Fabric Actors when Actors call other Actors

In order to be able to effectively unit test Azure Service Fabric Actors we use a NuGet package called "ServiceFabric.Mocks”. It’s truly fantastic. As the name implies it allows you to Mock all Service Fabric services, not just Actors but the Actor model has unique structure that makes it exceptionally helpful in testing. The way … Continue reading Unit Test Service Fabric Actors when Actors call other Actors