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

Advertisement

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

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

Switching from “Azure” to “AzureRM” Terraform Backend

Terraform no longer supports “azure” as a backend. So if you have a backend configuration that makes reference to the “azure” backend provider you will get the following warning: All you need to do is change the following property in your backend configuration file: To the following: Nothing else has to change. Just re-initialize your … Continue reading Switching from “Azure” to “AzureRM” Terraform Backend

Publish NuGet Package using VSTS Build Pipeline

Generating a nugget package during build is as simple as the following steps: Define the NuGet Specification Pack the NuGet Package Push the NuGet Package to your repository Now the implementation gets a bit tricky. Define the specification You will need to ensure that nuget.exe is in your path. It’s as simple as creating a … Continue reading Publish NuGet Package using VSTS Build Pipeline

OpsWorks + Windows: Alternate user identity execute support

A common scenario when configuring an environment is that certain elements of the scripts may need to be executed using a specific user’s credentials. If you’ve looked at the documentation for the various means of execution within Chef you might have noticed the “user”, “domain” and “password” parameters. The “powershell_script” action is particularly useful when … Continue reading OpsWorks + Windows: Alternate user identity execute support

Git + OpsWorks: Getting Organized

In OpsWorks, each "Layer" can be linked to its own repository. You can also specify a branch of your choosing. The terminology mapping between AWS, Git and Application Architecture can sometimes be a bit confusing and can lead to mal-configured OpsWorks stacks which can subsequently lead to OpsWorks being used inappropriately due to perceived technical … Continue reading Git + OpsWorks: Getting Organized