Files
semantica/deploy/azure
KaifAhmad1 a8043418a1 fix(ci): fix 2 TemplateAnalyzer ERROR findings in Azure Bicep (AZR-000361/363)
AZR-000363 (Azure.ContainerApp.PublicAccess) — line 29 managedEnvironment:
- Add vnetConfiguration.internal: true (default) so the environment uses
  an internal load balancer instead of a public IP
- Parameterize with vnetInternal (bool, default true) and
  infrastructureSubnetId so operators can provide their subnet on deploy

AZR-000361 (Azure.ContainerApp.ManagedIdentity) — line 40 containerApp:
- Add identity.type = SystemAssigned so the Container App can
  authenticate to Azure services without storing credentials

Also update main.parameters.json and README with the new parameters.
2026-06-24 13:24:23 +05:30
..

Azure Container Apps

Deploy with Azure Developer CLI from this template directory:

cd deploy/azure
azd auth login
azd init --environment semantica-ke
azd env set AZURE_LOCATION eastus

# The template defaults to an internal (private) Container Apps environment.
# Provide the resource ID of an existing subnet (delegated to Microsoft.App/environments):
azd env set AZURE_INFRASTRUCTURE_SUBNET_ID /subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.Network/virtualNetworks/<vnet>/subnets/<subnet>

# For a quick public dev/test deployment without a VNet, override the default:
# azd env set AZURE_INFRASTRUCTURE_SUBNET_ID "" and set vnetInternal=false in main.parameters.json

azd up

The Bicep template provisions:

  • A Container Apps managed environment with an internal load balancer (private VNet, no public IP) and a system-assigned managed identity on the Container App (AZR-000363 / AZR-000361 compliant).
  • HTTP ingress, scale-to-zero, max 10 replicas, and a /api/health liveness probe.