make targets run from modules/azure/. Run make help for an inline summary.
For the full deployment walkthrough, see the Azure deployment guide.
Deployment overview
First-time setup
Day-2 operations
Add-ons
Add-on stages (3 to 5) are controlled by flags ininfra/terraform.tfvars. Set the flags, re-run init-values && deploy. init-values.sh copies the matching example file into helm/values/ automatically.
Sizing profiles
Setsizing_profile in terraform.tfvars, then re-run make init-values && make deploy.
kubectl
Azure CLI
Terraform
Key constraints
- Skip
make planon a fresh deploy.kubernetes_manifestresources need a live cluster API. Usemake applydirectly. - Uninstall Helm before
terraform destroy. The Azure Load Balancer holds a subnet reference; leaving it blocks VNet deletion. Runmake uninstallfirst. config.deployment.urlmust includehttps://. Without it, operator-spawned agents stay stuck inDEPLOYING.config.deployment.enabled: trueis required for the LangSmith Deployment add-on. Setting only the URL withoutenabled: truesilently skipslistenerandoperator.- Encryption keys must never change after first enable. Rotating
insights_encryption_keyorpolly_encryption_keypermanently breaks existing encrypted data. - Roll the frontend after first Polly enable.
agentBootstrapcreateslangsmith-polly-configafter registering; frontend pods started earlier do not pick it up. letsencrypt(HTTP-01) only works withnginx,istio(self-managed), andenvoy-gateway. Foristio-addonoragic, usedns01with a custom domain, ornonefor HTTP-only.- Key Vault enters 90-day soft-delete after destroy. With
keyvault_purge_protection = false, runaz keyvault purgeto reclaim the name immediately.
Teardown
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

