SoliDeoGloria.tech

Technology for the Glory of God

High Scale Private Endpoints

Today one of my colleagues asked an excellent question which had me stumped. He was looking at the Virtual Network Terraform Resource and found the private_endpoint_vnet_policies property, but couldn’t find any documentation explaining the purpose. So I tried my own Google-fu and similarly failed to find any information. I did manage to find the privateEndpointVNetPolicies property of the Microsoft.Network/virtualNetworks api, but as normal the API documentation expects you to understand the settings, it doesn’t explain them to you.

Read more…

Easier, Better, Faster, Stronger Development with Azure Deployment Environments

I recently had the privilege of presenting an overview of Azure Deployment Environments as part of the Global Azure Bootcamp 2025. The recording of the session is available on YouTube.

GitHub Actions: 0–100 in 60 minutes

I recently had the privilege of presenting an introduction to GitHub Actions at the New Zealand GitHub User Group. The recording of the session is available on YouTube.

Use a Parameter to Assign User Assigned Managed Identities to Resources with Bicep

Isn’t that title a mouthful.

Coming from Terraform, there are somethings that seem strange in Bicep. One of those is the way that the Resource Manager API handles assigning User Assigned Managed Identities (UAMIs). If you look at the API documentation for a resource (in this case we are going to use an Event Hub Namespace, but this applies to all resources that can have a UAMI assigned) you will see that the userAssignedIdentities value of the identity property looks lkie this:

Read more…

Access Terraform Private Modules in GitHub Actions

In a recent project we used GitHub Actions to deploy our Terraform code. While not the best way to deploy Terraform, we had it working nicely.

One of the biggest challenges we encountered was how to download the private Terraform modules we had created. In a GitHub Actions workflow you can specify the permissions that the runner should be granted. However, these permissions are scoped to the repository that the Action is running on, and it is not possible to add additional repos to the permission set.

Read more…

Automatic Virtual Network CIDR Assignments with Azure IPAM and Bicep

Recently Microsoft announced a public preview of native IP Address Management in Azure, powered by Virtual Network Manager. Being new technology, and with a new landing zone to build, I decided to test and see if we could use it to make IP management simpler.

The starting point was to completely miss the documentation and try and work it out myself. Sadly, the API documentation has yet to be updated to cover the new properties, and tracing the portal requests didn’t help either, since it uses a slightly different flow (sigh!).

Read more…

Self-Hosted GitHub Runners FOR FREE!

I recently had the privilege of opening the New Zealand GitHub User Group with a presentation on using Azure Container Apps for self-hosted GitHub Actions Runners. The recording of the session is available on YouTube.