Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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" \
Expand Down
20 changes: 9 additions & 11 deletions .github/workflows/job-deploy-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -237,9 +237,7 @@ 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_ENV_AI_SERVICE_LOCATION="$AZURE_ENV_OPENAI_LOCATION"
azd env set AZURE_LOCATION="$AZURE_LOCATION"
azd env set AZURE_RESOURCE_GROUP="$RESOURCE_GROUP_NAME"
azd env set AZURE_ENV_IMAGETAG="$IMAGE_TAG"
Expand All @@ -249,9 +247,9 @@ jobs:
# Extract ACR name from login server and set as environment variable
ACR_NAME=$(echo "${{ secrets.ACR_TEST_LOGIN_SERVER }}")
azd env set AZURE_CONTAINER_REGISTRY_HOST="$ACR_NAME"
echo "Set ACR name to: $ACR_NAME"
echo "Set ACR host to: $ACR_NAME"
else
echo "Skipping ACR name configuration (using existing image)"
echo "Skipping ACR endpoint configuration (using existing image)"
fi

if [[ "$EXP" == "true" ]]; then
Expand All @@ -261,19 +259,19 @@ jobs:
if [[ -n "$AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID_INPUT" ]]; then
EXP_LOG_ANALYTICS_ID="$AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID_INPUT"
else
EXP_LOG_ANALYTICS_ID="${{ secrets.AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID }}"
EXP_LOG_ANALYTICS_ID="${{ secrets.AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID }}"
fi

if [[ -n "$AZURE_EXISTING_AI_PROJECT_RESOURCE_ID_INPUT" ]]; then
EXP_AI_PROJECT_ID="$AZURE_EXISTING_AI_PROJECT_RESOURCE_ID_INPUT"
else
EXP_AI_PROJECT_ID="${{ secrets.AZURE_EXISTING_AI_PROJECT_RESOURCE_ID }}"
EXP_AI_PROJECT_ID="${{ secrets.AZURE_ENV_FOUNDRY_PROJECT_RID }}"
fi

echo "AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID: $EXP_LOG_ANALYTICS_ID"
echo "AZURE_EXISTING_AI_PROJECT_RESOURCE_ID: $EXP_AI_PROJECT_ID"
azd env set AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID="$EXP_LOG_ANALYTICS_ID"
azd env set AZURE_EXISTING_AI_PROJECT_RESOURCE_ID="$EXP_AI_PROJECT_ID"
echo "AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID: $EXP_LOG_ANALYTICS_ID"
echo "AZURE_ENV_FOUNDRY_PROJECT_RID: $EXP_AI_PROJECT_ID"
azd env set AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID="$EXP_LOG_ANALYTICS_ID"
azd env set AZURE_ENV_FOUNDRY_PROJECT_RID="$EXP_AI_PROJECT_ID"
else
echo "❌ EXP DISABLED - Skipping EXP parameters"
if [[ -n "$AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID_INPUT" ]] || [[ -n "$AZURE_EXISTING_AI_PROJECT_RESOURCE_ID_INPUT" ]]; then
Expand Down
20 changes: 9 additions & 11 deletions .github/workflows/job-deploy-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -238,9 +238,7 @@ 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_ENV_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"
azd env set AZURE_ENV_IMAGETAG="$env:IMAGE_TAG"
Expand All @@ -249,9 +247,9 @@ jobs:
if ($env:BUILD_DOCKER_IMAGE -eq "true") {
$ACR_NAME = "${{ secrets.ACR_TEST_LOGIN_SERVER }}"
azd env set AZURE_CONTAINER_REGISTRY_HOST="$ACR_NAME"
Write-Host "Set ACR name to: $ACR_NAME"
Write-Host "Set ACR host to: $ACR_NAME"
} else {
Write-Host "Skipping ACR name configuration (using existing image)"
Write-Host "Skipping ACR endpoint configuration (using existing image)"
}

if ($env:EXP -eq "true") {
Expand All @@ -261,19 +259,19 @@ jobs:
if ($env:AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID -ne "") {
$EXP_LOG_ANALYTICS_ID = $env:AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID
} else {
$EXP_LOG_ANALYTICS_ID = "${{ secrets.AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID }}"
$EXP_LOG_ANALYTICS_ID = "${{ secrets.AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID }}"
}

if ($env:AZURE_EXISTING_AI_PROJECT_RESOURCE_ID -ne "") {
$EXP_AI_PROJECT_ID = $env:AZURE_EXISTING_AI_PROJECT_RESOURCE_ID
} else {
$EXP_AI_PROJECT_ID = "${{ secrets.AZURE_EXISTING_AI_PROJECT_RESOURCE_ID }}"
$EXP_AI_PROJECT_ID = "${{ secrets.AZURE_ENV_FOUNDRY_PROJECT_RID }}"
}

Write-Host "AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID: $EXP_LOG_ANALYTICS_ID"
Write-Host "AZURE_EXISTING_AI_PROJECT_RESOURCE_ID: $EXP_AI_PROJECT_ID"
azd env set AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID="$EXP_LOG_ANALYTICS_ID"
azd env set AZURE_EXISTING_AI_PROJECT_RESOURCE_ID="$EXP_AI_PROJECT_ID"
Write-Host "AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID: $EXP_LOG_ANALYTICS_ID"
Write-Host "AZURE_ENV_FOUNDRY_PROJECT_RID: $EXP_AI_PROJECT_ID"
azd env set AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID="$EXP_LOG_ANALYTICS_ID"
azd env set AZURE_ENV_FOUNDRY_PROJECT_RID="$EXP_AI_PROJECT_ID"
} else {
Write-Host "❌ EXP DISABLED - Skipping EXP parameters"
}
Expand Down
13 changes: 7 additions & 6 deletions docs/CustomizingAzdParameters.md
Original file line number Diff line number Diff line change
Expand Up @@ -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_CONTAINER_REGISTRY_HOST` | string | `myregistry.azurecr.io` | Specifies the container registry host from which to pull app container images. |
| `AZURE_ENV_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_AI_MODEL_NAME` | string | `o3` | Specifies the AI model name. |
| `AZURE_AI_MODEL_VERSION` | string | `2025-04-16` | Specifies the AI model version. |
| `AZURE_AI_MODEL_CAPACITY` | integer | `200` | Sets the model capacity (choose based on your subscription's available capacity). |
| `AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID` | string | `` | Optional. Resource ID of an existing Log Analytics workspace to use. |
| `AZURE_ENV_FOUNDRY_PROJECT_RID` | 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. |
Expand Down
2 changes: 1 addition & 1 deletion docs/re-use-foundry-project.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ In the left-hand menu of the project blade:
### 6. Set the Foundry Project Resource ID in Your Environment
Run the following command in your terminal
```bash
azd env set AZURE_EXISTING_AI_PROJECT_RESOURCE_ID '<Existing Foundry Project Resource ID>'
azd env set AZURE_ENV_FOUNDRY_PROJECT_RID '<Existing Foundry Project Resource ID>'
```
Replace `<Existing Foundry Project Resource ID>` with the value obtained from Step 5.

Expand Down
2 changes: 1 addition & 1 deletion docs/re-use-log-analytics.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Copy Resource ID that is your Workspace ID
### 4. Set the Workspace ID in Your Environment
Run the following command in your terminal
```bash
azd env set AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID '<Existing Log Analytics Workspace Id>'
azd env set AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID '<Existing Log Analytics Workspace Id>'
```
Replace `<Existing Log Analytics Workspace Id>` with the value obtained from Step 3.

Expand Down
17 changes: 1 addition & 16 deletions infra/main.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -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'
Expand Down
36 changes: 8 additions & 28 deletions infra/main.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.40.2.10011",
"templateHash": "46164870636097653"
"version": "0.41.2.15936",
"templateHash": "14235802001827059391"
}
},
"parameters": {
Expand Down Expand Up @@ -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",
Expand Down Expand Up @@ -4698,8 +4678,8 @@
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.40.2.10011",
"templateHash": "13184395339364197836"
"version": "0.41.2.15936",
"templateHash": "10681183203421948888"
}
},
"definitions": {
Expand Down Expand Up @@ -30068,8 +30048,8 @@
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.40.2.10011",
"templateHash": "8742987061721021759"
"version": "0.41.2.15936",
"templateHash": "8365054813170845685"
}
},
"definitions": {
Expand Down Expand Up @@ -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"
]
},
Expand Down
20 changes: 4 additions & 16 deletions infra/main.parameters.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,11 @@
"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}"
"value": "${AZURE_ENV_AI_SERVICE_LOCATION}"
},
"aiDeploymentType": {
"value": "${AZURE_AI_DEPLOYMENT_TYPE}"
Expand All @@ -35,14 +26,11 @@
"aiModelCapacity": {
"value": "${AZURE_AI_MODEL_CAPACITY}"
},
"enableTelemetry": {
"value": true
},
"existingLogAnalyticsWorkspaceId": {
"value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}"
"value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID}"
},
"existingFoundryProjectResourceId":{
"value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}"
"existingFoundryProjectResourceId": {
"value": "${AZURE_ENV_FOUNDRY_PROJECT_RID}"
},
"vmAdminUsername": {
"value": "${AZURE_ENV_VM_ADMIN_USERNAME}"
Expand Down
17 changes: 4 additions & 13 deletions infra/main.waf.parameters.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,11 @@
"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}"
"value": "${AZURE_ENV_AI_SERVICE_LOCATION}"
},
"aiDeploymentType": {
"value": "${AZURE_AI_DEPLOYMENT_TYPE}"
Expand Down Expand Up @@ -54,10 +45,10 @@
"value": "${AZURE_ENV_VM_ADMIN_PASSWORD}"
},
"existingLogAnalyticsWorkspaceId": {
"value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}"
"value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_RID}"
},
"existingFoundryProjectResourceId":{
"value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}"
"existingFoundryProjectResourceId": {
"value": "${AZURE_ENV_FOUNDRY_PROJECT_RID}"
},
"imageTag": {
"value": "${AZURE_ENV_IMAGETAG}"
Expand Down
Loading