diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 46378ec..c286b5b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -133,7 +133,6 @@ jobs: --template-file infra/main.bicep \ --parameters solutionName=${{env.SOLUTION_PREFIX}} \ --parameters location=${{ env.AZURE_LOCATION }} \ - --parameters aiDeploymentLocation=${{ env.AZURE_LOCATION }} \ --parameters azureAiServiceLocation=${{ env.AZURE_LOCATION }} \ --parameters createdBy="pipeline" \ diff --git a/.github/workflows/job-deploy-linux.yml b/.github/workflows/job-deploy-linux.yml index 8dd0b1c..4285c0f 100644 --- a/.github/workflows/job-deploy-linux.yml +++ b/.github/workflows/job-deploy-linux.yml @@ -238,7 +238,6 @@ jobs: # Set additional parameters azd env set AZURE_SUBSCRIPTION_ID="${{ secrets.AZURE_SUBSCRIPTION_ID }}" azd env set AZURE_AI_SERVICE_LOCATION="$AZURE_ENV_OPENAI_LOCATION" - azd env set AZURE_AI_DEPLOYMENT_LOCATION="$AZURE_ENV_OPENAI_LOCATION" azd env set AZURE_AI_SERVICE_LOCATION="$AZURE_ENV_OPENAI_LOCATION" azd env set AZURE_LOCATION="$AZURE_LOCATION" azd env set AZURE_RESOURCE_GROUP="$RESOURCE_GROUP_NAME" diff --git a/.github/workflows/job-deploy-windows.yml b/.github/workflows/job-deploy-windows.yml index 8b8f655..bfe00cc 100644 --- a/.github/workflows/job-deploy-windows.yml +++ b/.github/workflows/job-deploy-windows.yml @@ -239,7 +239,6 @@ jobs: # Set additional parameters azd env set AZURE_SUBSCRIPTION_ID="${{ secrets.AZURE_SUBSCRIPTION_ID }}" azd env set AZURE_AI_SERVICE_LOCATION="$env:AZURE_ENV_OPENAI_LOCATION" - azd env set AZURE_AI_DEPLOYMENT_LOCATION="$env:AZURE_ENV_OPENAI_LOCATION" azd env set AZURE_AI_SERVICE_LOCATION="$env:AZURE_ENV_OPENAI_LOCATION" azd env set AZURE_LOCATION="$env:AZURE_LOCATION" azd env set AZURE_RESOURCE_GROUP="$env:RESOURCE_GROUP_NAME" diff --git a/docs/CustomizingAzdParameters.md b/docs/CustomizingAzdParameters.md index 7989a84..18eae48 100644 --- a/docs/CustomizingAzdParameters.md +++ b/docs/CustomizingAzdParameters.md @@ -10,13 +10,14 @@ By default this template will use the environment name as the prefix to prevent | ------------------------------- | ------- | ----------------------- | ------------------------------------------------------------------------------------- | | `AZURE_ENV_NAME` | string | `conmig` | Sets the environment name prefix for all Azure resources. | | `AZURE_LOCATION` | string | `westus` | Sets the location/region for all Azure resources. | -| `AZURE_SECONDARY_LOCATION` | string | `eastus2` | Specifies a secondary Azure region. | | `AZURE_CONTAINER_REGISTRY_HOST` | string | `myregistry.azurecr.io` | Specifies the container registry from which to pull app container images. | -| `AZURE_AI_DEPLOYMENT_LOCATION` | string | `eastus2` | Specifies alternative location for AI model resources. | +| `AZURE_AI_SERVICE_LOCATION` | string | `eastus2` | Specifies the Azure region for AI services (OpenAI/AI Foundry). | | `AZURE_AI_DEPLOYMENT_TYPE` | string | `GlobalStandard` | Defines the model deployment type (allowed values: `Standard`, `GlobalStandard`). | | `AZURE_AI_MODEL_NAME` | string | `o3` | Specifies the `o` model name. | | `AZURE_AI_MODEL_VERSION` | string | `2025-04-16` | Specifies the `o` model version. | | `AZURE_AI_MODEL_CAPACITY` | integer | `200` | Sets the model capacity (choose based on your subscription's available `o` capacity). | +| `AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID` | string | `` | Optional. Resource ID of an existing Log Analytics workspace to use. | +| `AZURE_EXISTING_AI_PROJECT_RESOURCE_ID` | string | `` | Optional. Resource ID of an existing AI Foundry project to use. | | `AZURE_ENV_VM_ADMIN_USERNAME` | string | `` | The administrator username for the virtual machine. | | `AZURE_ENV_VM_ADMIN_PASSWORD` | string | `` | The administrator password for the virtual machine. | | `AZURE_ENV_IMAGETAG` | string | `latest` | Specifies the container image tag to use for deployment. | diff --git a/infra/main.bicep b/infra/main.bicep index 8fe3fee..57771e4 100644 --- a/infra/main.bicep +++ b/infra/main.bicep @@ -39,22 +39,7 @@ var solutionLocation = empty(location) ? resourceGroup().location : location @description('Required. Azure region for AI services (OpenAI/AI Foundry). Must be a region that supports o3 model deployment.') param azureAiServiceLocation string -@allowed([ - 'australiaeast' - 'eastus' - 'eastus2' - 'francecentral' - 'japaneast' - 'norwayeast' - 'southindia' - 'swedencentral' - 'uksouth' - 'westus' - 'westus3' -]) -@description('Required. Azure region for AI model deployment. Should match azureAiServiceLocation for optimal performance.') -#disable-next-line no-unused-params -param aiDeploymentLocation string = azureAiServiceLocation + @description('Optional. The host (excluding https://) of an existing container registry. This is the `loginServer` when using Azure Container Registry.') param containerRegistryHost string = 'containermigrationacr.azurecr.io' diff --git a/infra/main.json b/infra/main.json index 659b68a..0e88303 100644 --- a/infra/main.json +++ b/infra/main.json @@ -5,8 +5,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.40.2.10011", - "templateHash": "46164870636097653" + "version": "0.41.2.15936", + "templateHash": "14235802001827059391" } }, "parameters": { @@ -61,26 +61,6 @@ "description": "Required. Azure region for AI services (OpenAI/AI Foundry). Must be a region that supports o3 model deployment." } }, - "aiDeploymentLocation": { - "type": "string", - "defaultValue": "[parameters('azureAiServiceLocation')]", - "allowedValues": [ - "australiaeast", - "eastus", - "eastus2", - "francecentral", - "japaneast", - "norwayeast", - "southindia", - "swedencentral", - "uksouth", - "westus", - "westus3" - ], - "metadata": { - "description": "Required. Azure region for AI model deployment. Should match azureAiServiceLocation for optimal performance." - } - }, "containerRegistryHost": { "type": "string", "defaultValue": "containermigrationacr.azurecr.io", @@ -4698,8 +4678,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.40.2.10011", - "templateHash": "13184395339364197836" + "version": "0.41.2.15936", + "templateHash": "10681183203421948888" } }, "definitions": { @@ -30068,8 +30048,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.40.2.10011", - "templateHash": "8742987061721021759" + "version": "0.41.2.15936", + "templateHash": "8365054813170845685" } }, "definitions": { @@ -52099,9 +52079,9 @@ }, "dependsOn": [ "appIdentity", - "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').cognitiveServices)]", - "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').aiServices)]", "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').openAI)]", + "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').aiServices)]", + "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').cognitiveServices)]", "virtualNetwork" ] }, diff --git a/infra/main.parameters.json b/infra/main.parameters.json index cd87169..cacd6be 100644 --- a/infra/main.parameters.json +++ b/infra/main.parameters.json @@ -8,21 +8,12 @@ "location": { "value": "${AZURE_LOCATION}" }, - "secondaryLocation": { - "value": "${AZURE_SECONDARY_LOCATION}" - }, "containerRegistryHost": { "value": "${AZURE_CONTAINER_REGISTRY_HOST}" }, "azureAiServiceLocation": { "value": "${AZURE_AI_SERVICE_LOCATION}" }, - "aiDeploymentLocation": { - "value": "${AZURE_AI_DEPLOYMENT_LOCATION}" - }, - "azureAiServiceLocation": { - "value": "${AZURE_AI_SERVICE_LOCATION}" - }, "aiDeploymentType": { "value": "${AZURE_AI_DEPLOYMENT_TYPE}" }, @@ -41,7 +32,7 @@ "existingLogAnalyticsWorkspaceId": { "value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}" }, - "existingFoundryProjectResourceId":{ + "existingFoundryProjectResourceId": { "value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}" }, "vmAdminUsername": { diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index c914e04..8188f68 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -8,21 +8,12 @@ "location": { "value": "${AZURE_LOCATION}" }, - "secondaryLocation": { - "value": "${AZURE_SECONDARY_LOCATION}" - }, "containerRegistryHost": { "value": "${AZURE_CONTAINER_REGISTRY_HOST}" }, "azureAiServiceLocation": { "value": "${AZURE_AI_SERVICE_LOCATION}" }, - "aiDeploymentLocation": { - "value": "${AZURE_AI_DEPLOYMENT_LOCATION}" - }, - "azureAiServiceLocation": { - "value": "${AZURE_AI_SERVICE_LOCATION}" - }, "aiDeploymentType": { "value": "${AZURE_AI_DEPLOYMENT_TYPE}" }, @@ -56,7 +47,7 @@ "existingLogAnalyticsWorkspaceId": { "value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}" }, - "existingFoundryProjectResourceId":{ + "existingFoundryProjectResourceId": { "value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}" }, "imageTag": {