Recent Posts

Monitor and manage your Azure cloud costs with a little help from PowerShell

13 minute read

Should cloud computing be illegal? Probably not, but it is incredibly easy to get started, equally difficult to stop, and before you know it you could be selling your grandmother just to afford one more month of that delicious compute. Hopefully your circumstances never get that dire, but I’ve seen plenty of companies entrench themselves into the highly addictive world of automated, scalable infrastructure, but then struggle to understand the often-astronomical monthly bill.

Perform Currency Conversions with PowerShell

7 minute read

I’ve recently been working on a PowerShell module for exploring Azure costs and while doing so added some functionality to allow the costs to be converted between different currencies. It occurred to me that this functionality would be useful as a module of its own, and when I searched around I didn’t find too many recent examples for the same. As such I’ve now developed and published a module in the PowerShell Gallery and on GitHub called CurrencyConverter.

Changelog Driven Deployments

3 minute read

A changelog is a useful addition to any project, as it provides users and contributors with a summary of notable changes between each release. One way to ensure you always update your changelog as part of any new release is by making it part of the the automated deployment process. This blog post describes how I’ve implemented changelog driven deployments for the PowerShell modules I maintain in GitHub.

ARM Deployment “JToken type is not valid” error

1 minute read

I have recently added tasks in to our Azure DevOps ARM template deployment pipeline to run the new -WhatIf parameter on the New-AzResourceGroupDeployment to preview the changes an ARM deployment will make, per this guide:

Deploying Influx and Grafana on Windows with Terraform

11 minute read

I have previously blogged about how you can use Influx, Grafana and PowerShell to build and populate metrics dashboards for visualising data from multiple sources. This blog post details how you can use Terraform to quickly and easily deploy Grafana and Influx on a Windows instance in AWS as a proof of concept implementation of these tools.

Copy files with hash difference via PowerShell

6 minute read

This blog post details a PowerShell Core compatible cmdlet that I have authored named Copy-FileHash that you can use to copy modified files from one path tree to another. The cmdlet determines which files have different contents by calculating their hash values through the Get-FileHash cmdlet. This might be useful if you need to copy just files that have been modified between two paths and aren’t able to rely on the modified date of those files to determine which have changed.