The repository provides a Docker image mcr.microsoft.com/azterraform:latest to run various validation tasks.
Pre-commit
Runs formatting (terraform fmt, gofmt, etc.) and documentation checks.
Linux/macOS:
docker run --rm -v $(pwd):/src -w /src mcr.microsoft.com/azterraform:latest make pre-commit
Windows PowerShell:
docker run --rm -v ${pwd}:/src -w /src mcr.microsoft.com/azterraform:latest make pre-commit
PR-check
Checks if the code meets pipeline requirements. Run this before committing.
Linux/macOS:
docker run --rm -v $(pwd):/src -w /src mcr.microsoft.com/azterraform:latest make pr-check
Windows PowerShell:
docker run --rm -v ${pwd}:/src -w /src mcr.microsoft.com/azterraform:latest make pr-check
E2E-test
Runs end-to-end tests. Requires Azure credentials to be passed as environment variables.
Linux/macOS:
docker run --rm -v $(pwd):/src -w /src -e ARM_SUBSCRIPTION_ID -e ARM_TENANT_ID -e ARM_CLIENT_ID -e ARM_CLIENT_SECRET mcr.microsoft.com/azterraform:latest make e2e-test
Windows PowerShell:
docker run --rm -v ${pwd}:/src -w /src -e ARM_SUBSCRIPTION_ID -e ARM_TENANT_ID -e ARM_CLIENT_ID -e ARM_CLIENT_SECRET mcr.microsoft.com/azterraform:latest make e2e-test
Note on Key Vault Firewall: If you need to bypass Key Vault firewall rules during E2E tests, set the TF_VAR_key_vault_firewall_bypass_ip_cidr environment variable.