Using a self-hosted ALZ Library
the Azure Landing Zones Library is a collection of assets that can be used to deploy Azure Landing Zones of different flavours. The library is hosted on GitHub and is available for use by anyone. However, you may want to host your own copy of the library for a variety of reasons. This guide will walk you through the process of hosting your own copy of the library and using it with the ALZ module.
We currently only support Git repositories as an alternative source for the library. This does not have to be GitHub, it can be any Git repository.
The ALZ module uses the Azure Landing Zones Library to resolve library references supplied to the provider. These have two formats:
A reference to a specific version of the library in the form of path
and ref
(e.g. platform/alz
and 2024.11.0
).
These correspond to the releases in the Azure Landing Zones Library.
A reference to a custom library in the form of custom_url
.
This can eb a simple filepath (e.g. ${path.root}/lib
), or any supported go-getter URL.
The brains behind the Azure Landing Zones provider is a Go module called alzlib
.
This is configurable by environment variables, and one of these is ALZLIB_LIBRARY_GIT_URL
.
This environment variable can be used to point the provider to a self-hosted copy of the library:
export ALZLIB_LIBRARY_GIT_URL="github.com/MyOrg/Azure-Landing-Zones-Library"
$env:ALZLIB_LIBRARY_GIT_URL="github.com/MyOrg/Azure-Landing-Zones-Library"
Or configure in your CI/CD pipeline.