Ansible setup with Azure on a new Mac

Following on from upgrading my Macs to all M1-based ones, I get around to finally needing to use Ansible; typically, I would install Python using PyEnv and then run the following … It should just work?!?! pipinstall --user ansible pip install --user -r https://github.com/ansible-collections/azure/blob/dev/requirements-azure.txt ansible-galaxy collection install azure.azcollection … and away we go, but this time I came across a few problems....

December 28, 2021 · 2 min · Russ McKendrick

VSCode + Bicep on an M1 Mac

Probably a little late to the party with this one, but I have recently upgraded to an M1 Pro MacBook Pro, for the most part, the problems with moving to arm64 are not as bad as I thought - most are annoying little things. However, the biggest one came when I decided to take a serious look at Bicep. After installing the Bicep VSCode extension and opening a test Bicep file, I was greeted with the following message …...

December 4, 2021 · 3 min · Russ McKendrick

Tracking costs in Terraform using Infracost

In my last blog post I introduced a stage which executed Checkov to my Terraform Azure DevOps pipeline, this scanned the Terraform configuration and stopped the deployment if there was an issue. I also added a stage which checks to see if there are any resources being destroyed. Whats missing? Both of these I thought should give some basic protection against problems caused by common configuration issues, which they did, but it didn’t take into account the end user, i....

August 24, 2021 · 14 min · Russ McKendrick

Azure DevOps Terraform Pipeline with Checkov & Approvals

It’s been just over a year since I first posted about the Azure DevOps Terraform Pipeline I used to use, I say used to use, because that pipeline is now a little outdated. This posts covers the updated Pipeline I am starting to deploy along side my Terraform code. Pipeline Overview The pipeline itself has expanded a little and it now not only uses stages but also depending what Terraform is planning on doing it will trigger a manual approval process should there be any resources being destroyed....

June 8, 2021 · 13 min · Russ Mckendrick

Azure DevOps Multi-Stage Pipelines

As I move into using Azure DevOps more and more, there is one thing which I really haven’t got on with and that is release pipelines. I didn’t like that I couldn’t easily define it as YAML like I could with build pipelines, even though I don’t like them, there are a few things I do like — like approval gates. Environments Luckily, there are ways to get around this — the most simple way is to add an Environment and then add an Approval....

April 25, 2021 · 7 min · Russ Mckendrick

Ansible, Azure and macOS Big Sur

One of the annoying things about updating to the latest version of macOS is that a lot of the command-line tools I use tend to break or need tweaking slightly from how I have been using them. One of the annoyances in the move to Big Sur is that Python is a back to being a massive pain, and more so than normal. At the time of writing pyenv is not running all that well, and while there are fixes available they slow down my shell — for more information on the problem see this GitHub issue and for information on why pyenv see my previous post on updating Python on macOS....

December 28, 2020 · 3 min · Russ Mckendrick

Azure DevOps Terraform Pipeline

In my last post I wrote about how I created an Azure DevOps pipeline using Ansible in a more “Terraform” way, however, although I have used Terraform and Azure DevOps quite a bit I realised I didn’t really have a template for a pipeline. Before we look at the pipeline itself I should point out that is uses the the Terraform Azure Pipeline extension by Microsoft DevLabs from the Visual Studio Marketplace, if you are following along with this post please ensure that the extension is installed in your organisation before proceeding....

May 31, 2020 · 5 min · Russ Mckendrick

Azure DevOps Ansible Pipeline

I thought it was was about time that I started to have a play with Azure DevOps a little more than I have been doing, one of the things I have always meant to look at in the past is using DevOps to run Ansible playbooks. However the Ansible Task recommended by Microsoft has always put me off, the reason for this is that this task requires a Virtual Machine to run Ansible — this to me always seemed a little overkill....

May 10, 2020 · 4 min · Russ Mckendrick