|
5 | 5 | "metadata": { |
6 | 6 | "_generator": { |
7 | 7 | "name": "bicep", |
8 | | - "version": "0.39.26.7824", |
9 | | - "templateHash": "12629934330443935294" |
| 8 | + "version": "0.40.2.10011", |
| 9 | + "templateHash": "16442623120600133305" |
10 | 10 | }, |
11 | 11 | "name": "Intelligent Content Generation Accelerator", |
12 | 12 | "description": "Solution Accelerator for multimodal marketing content generation using Microsoft Agent Framework.\n" |
|
62 | 62 | }, |
63 | 63 | "azureAiServiceLocation": { |
64 | 64 | "type": "string", |
65 | | - "defaultValue": "", |
66 | 65 | "metadata": { |
| 66 | + "azd": { |
| 67 | + "type": "location", |
| 68 | + "usageName": [ |
| 69 | + "OpenAI.GlobalStandard.gpt-5.1,150", |
| 70 | + "OpenAI.GlobalStandard.gpt-image-1,1" |
| 71 | + ] |
| 72 | + }, |
67 | 73 | "description": "Optional. Location for AI deployments. If not specified, uses the main location." |
68 | 74 | } |
69 | 75 | }, |
|
321 | 327 | "useExistingLogAnalytics": "[not(empty(parameters('existingLogAnalyticsWorkspaceId')))]", |
322 | 328 | "useExistingAiFoundryAiProject": "[not(empty(parameters('azureExistingAIProjectResourceId')))]", |
323 | 329 | "aiFoundryAiServicesResourceGroupName": "[if(variables('useExistingAiFoundryAiProject'), split(parameters('azureExistingAIProjectResourceId'), '/')[4], format('rg-{0}', variables('solutionSuffix')))]", |
| 330 | + "aiFoundryAiServicesSubscriptionId": "[if(variables('useExistingAiFoundryAiProject'), split(parameters('azureExistingAIProjectResourceId'), '/')[2], subscription().subscriptionId)]", |
324 | 331 | "aiFoundryAiServicesResourceName": "[if(variables('useExistingAiFoundryAiProject'), split(parameters('azureExistingAIProjectResourceId'), '/')[8], format('aif-{0}', variables('solutionSuffix')))]", |
325 | 332 | "aiFoundryAiProjectResourceName": "[if(variables('useExistingAiFoundryAiProject'), split(parameters('azureExistingAIProjectResourceId'), '/')[10], format('proj-{0}', variables('solutionSuffix')))]", |
326 | 333 | "baseModelDeployments": [ |
|
4868 | 4875 | "metadata": { |
4869 | 4876 | "_generator": { |
4870 | 4877 | "name": "bicep", |
4871 | | - "version": "0.39.26.7824", |
4872 | | - "templateHash": "16294706585455769047" |
| 4878 | + "version": "0.40.2.10011", |
| 4879 | + "templateHash": "18254349806162838802" |
4873 | 4880 | } |
4874 | 4881 | }, |
4875 | 4882 | "parameters": { |
|
10809 | 10816 | "value": "[variables('aiFoundryAiServicesResourceName')]" |
10810 | 10817 | }, |
10811 | 10818 | "location": { |
10812 | | - "value": "[variables('aiServiceLocation')]" |
| 10819 | + "value": "[parameters('azureAiServiceLocation')]" |
10813 | 10820 | }, |
10814 | 10821 | "tags": { |
10815 | 10822 | "value": "[parameters('tags')]" |
|
10874 | 10881 | }, |
10875 | 10882 | { |
10876 | 10883 | "roleDefinitionIdOrName": "53ca6127-db72-4b80-b1b0-d745d6d5456d", |
10877 | | - "principalId": "[deployer().objectId]", |
10878 | | - "principalType": "User" |
| 10884 | + "principalId": "[deployer().objectId]" |
10879 | 10885 | } |
10880 | 10886 | ] |
10881 | 10887 | }, |
|
14073 | 14079 | }, |
14074 | 14080 | "dependsOn": [ |
14075 | 14081 | "aiFoundryAiServices", |
14076 | | - "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').cognitiveServices)]", |
14077 | 14082 | "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').openAI)]", |
| 14083 | + "[format('avmPrivateDnsZones[{0}]', variables('dnsZoneIndex').cognitiveServices)]", |
14078 | 14084 | "virtualNetwork" |
14079 | 14085 | ] |
14080 | 14086 | }, |
|
14093 | 14099 | "value": "[variables('aiFoundryAiProjectResourceName')]" |
14094 | 14100 | }, |
14095 | 14101 | "location": { |
14096 | | - "value": "[variables('aiServiceLocation')]" |
| 14102 | + "value": "[parameters('azureAiServiceLocation')]" |
14097 | 14103 | }, |
14098 | 14104 | "tags": { |
14099 | 14105 | "value": "[parameters('tags')]" |
|
14114 | 14120 | "metadata": { |
14115 | 14121 | "_generator": { |
14116 | 14122 | "name": "bicep", |
14117 | | - "version": "0.39.26.7824", |
14118 | | - "templateHash": "12336056765515184474" |
| 14123 | + "version": "0.40.2.10011", |
| 14124 | + "templateHash": "12454422624133946770" |
14119 | 14125 | } |
14120 | 14126 | }, |
14121 | 14127 | "parameters": { |
@@ -14223,6 +14229,127 @@ |
14223 | 14229 | "aiFoundryAiServices" |
14224 | 14230 | ] |
14225 | 14231 | }, |
| 14232 | + "existingAiServicesRoleAssignments": { |
| 14233 | + "condition": "[variables('useExistingAiFoundryAiProject')]", |
| 14234 | + "type": "Microsoft.Resources/deployments", |
| 14235 | + "apiVersion": "2025-04-01", |
| 14236 | + "name": "[take(format('module.foundry-role-assignment.{0}', variables('aiFoundryAiServicesResourceName')), 64)]", |
| 14237 | + "subscriptionId": "[variables('aiFoundryAiServicesSubscriptionId')]", |
| 14238 | + "resourceGroup": "[variables('aiFoundryAiServicesResourceGroupName')]", |
| 14239 | + "properties": { |
| 14240 | + "expressionEvaluationOptions": { |
| 14241 | + "scope": "inner" |
| 14242 | + }, |
| 14243 | + "mode": "Incremental", |
| 14244 | + "parameters": { |
| 14245 | + "aiServicesName": { |
| 14246 | + "value": "[variables('aiFoundryAiServicesResourceName')]" |
| 14247 | + }, |
| 14248 | + "principalId": { |
| 14249 | + "value": "[reference('userAssignedIdentity').outputs.principalId.value]" |
| 14250 | + }, |
| 14251 | + "principalType": { |
| 14252 | + "value": "ServicePrincipal" |
| 14253 | + } |
| 14254 | + }, |
| 14255 | + "template": { |
| 14256 | + "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", |
| 14257 | + "contentVersion": "1.0.0.0", |
| 14258 | + "metadata": { |
| 14259 | + "_generator": { |
| 14260 | + "name": "bicep", |
| 14261 | + "version": "0.40.2.10011", |
| 14262 | + "templateHash": "5825952797275206162" |
| 14263 | + } |
| 14264 | + }, |
| 14265 | + "parameters": { |
| 14266 | + "principalId": { |
| 14267 | + "type": "string", |
| 14268 | + "metadata": { |
| 14269 | + "description": "Required. The principal ID of the managed identity to grant access." |
| 14270 | + } |
| 14271 | + }, |
| 14272 | + "aiServicesName": { |
| 14273 | + "type": "string", |
| 14274 | + "metadata": { |
| 14275 | + "description": "Required. The name of the existing AI Services account." |
| 14276 | + } |
| 14277 | + }, |
| 14278 | + "aiProjectName": { |
| 14279 | + "type": "string", |
| 14280 | + "defaultValue": "", |
| 14281 | + "metadata": { |
| 14282 | + "description": "Optional. The name of the existing AI Project." |
| 14283 | + } |
| 14284 | + }, |
| 14285 | + "principalType": { |
| 14286 | + "type": "string", |
| 14287 | + "defaultValue": "ServicePrincipal", |
| 14288 | + "allowedValues": [ |
| 14289 | + "Device", |
| 14290 | + "ForeignGroup", |
| 14291 | + "Group", |
| 14292 | + "ServicePrincipal", |
| 14293 | + "User" |
| 14294 | + ], |
| 14295 | + "metadata": { |
| 14296 | + "description": "Optional. The principal type of the identity." |
| 14297 | + } |
| 14298 | + } |
| 14299 | + }, |
| 14300 | + "resources": [ |
| 14301 | + { |
| 14302 | + "type": "Microsoft.Authorization/roleAssignments", |
| 14303 | + "apiVersion": "2022-04-01", |
| 14304 | + "scope": "[resourceId('Microsoft.CognitiveServices/accounts', parameters('aiServicesName'))]", |
| 14305 | + "name": "[guid(resourceId('Microsoft.CognitiveServices/accounts', parameters('aiServicesName')), parameters('principalId'), resourceId('Microsoft.Authorization/roleDefinitions', '53ca6127-db72-4b80-b1b0-d745d6d5456d'))]", |
| 14306 | + "properties": { |
| 14307 | + "roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', '53ca6127-db72-4b80-b1b0-d745d6d5456d')]", |
| 14308 | + "principalId": "[parameters('principalId')]", |
| 14309 | + "principalType": "[parameters('principalType')]" |
| 14310 | + } |
| 14311 | + }, |
| 14312 | + { |
| 14313 | + "type": "Microsoft.Authorization/roleAssignments", |
| 14314 | + "apiVersion": "2022-04-01", |
| 14315 | + "scope": "[resourceId('Microsoft.CognitiveServices/accounts', parameters('aiServicesName'))]", |
| 14316 | + "name": "[guid(resourceId('Microsoft.CognitiveServices/accounts', parameters('aiServicesName')), parameters('principalId'), resourceId('Microsoft.Authorization/roleDefinitions', '5e0bd9bd-7b93-4f28-af87-19fc36ad61bd'))]", |
| 14317 | + "properties": { |
| 14318 | + "roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', '5e0bd9bd-7b93-4f28-af87-19fc36ad61bd')]", |
| 14319 | + "principalId": "[parameters('principalId')]", |
| 14320 | + "principalType": "[parameters('principalType')]" |
| 14321 | + } |
| 14322 | + } |
| 14323 | + ], |
| 14324 | + "outputs": { |
| 14325 | + "aiServicesResourceId": { |
| 14326 | + "type": "string", |
| 14327 | + "metadata": { |
| 14328 | + "description": "The resource ID of the existing AI Services account." |
| 14329 | + }, |
| 14330 | + "value": "[resourceId('Microsoft.CognitiveServices/accounts', parameters('aiServicesName'))]" |
| 14331 | + }, |
| 14332 | + "aiServicesEndpoint": { |
| 14333 | + "type": "string", |
| 14334 | + "metadata": { |
| 14335 | + "description": "The endpoint of the existing AI Services account." |
| 14336 | + }, |
| 14337 | + "value": "[reference(resourceId('Microsoft.CognitiveServices/accounts', parameters('aiServicesName')), '2025-04-01-preview').endpoint]" |
| 14338 | + }, |
| 14339 | + "aiProjectPrincipalId": { |
| 14340 | + "type": "string", |
| 14341 | + "metadata": { |
| 14342 | + "description": "The principal ID of the existing AI Project (if provided)." |
| 14343 | + }, |
| 14344 | + "value": "[if(not(empty(parameters('aiProjectName'))), reference(resourceId('Microsoft.CognitiveServices/accounts/projects', parameters('aiServicesName'), parameters('aiProjectName')), '2025-04-01-preview', 'full').identity.principalId, '')]" |
| 14345 | + } |
| 14346 | + } |
| 14347 | + } |
| 14348 | + }, |
| 14349 | + "dependsOn": [ |
| 14350 | + "userAssignedIdentity" |
| 14351 | + ] |
| 14352 | + }, |
14226 | 14353 | "aiSearch": { |
14227 | 14354 | "type": "Microsoft.Resources/deployments", |
14228 | 14355 | "apiVersion": "2025-04-01", |
|
31148 | 31275 | "metadata": { |
31149 | 31276 | "_generator": { |
31150 | 31277 | "name": "bicep", |
31151 | | - "version": "0.39.26.7824", |
31152 | | - "templateHash": "11911473200605315360" |
| 31278 | + "version": "0.40.2.10011", |
| 31279 | + "templateHash": "4220244191786935721" |
31153 | 31280 | } |
31154 | 31281 | }, |
31155 | 31282 | "definitions": { |
|
32094 | 32221 | }, |
32095 | 32222 | "type": "Microsoft.Insights/diagnosticSettings", |
32096 | 32223 | "apiVersion": "2021-05-01-preview", |
32097 | | - "scope": "[format('Microsoft.Web/sites/{0}', parameters('name'))]", |
| 32224 | + "scope": "[resourceId('Microsoft.Web/sites', parameters('name'))]", |
32098 | 32225 | "name": "[coalesce(tryGet(coalesce(parameters('diagnosticSettings'), createArray())[copyIndex()], 'name'), format('{0}-diagnosticSettings', parameters('name')))]", |
32099 | 32226 | "properties": { |
32100 | 32227 | "copy": [ |
|
32172 | 32299 | "metadata": { |
32173 | 32300 | "_generator": { |
32174 | 32301 | "name": "bicep", |
32175 | | - "version": "0.39.26.7824", |
32176 | | - "templateHash": "13592577410661714505" |
| 32302 | + "version": "0.40.2.10011", |
| 32303 | + "templateHash": "11071988482502090044" |
32177 | 32304 | }, |
32178 | 32305 | "name": "Site App Settings", |
32179 | 32306 | "description": "This module deploys a Site App Setting." |
|
33293 | 33420 | "metadata": { |
33294 | 33421 | "_generator": { |
33295 | 33422 | "name": "bicep", |
33296 | | - "version": "0.39.26.7824", |
33297 | | - "templateHash": "11247487291315089538" |
| 33423 | + "version": "0.40.2.10011", |
| 33424 | + "templateHash": "5126970369332146090" |
33298 | 33425 | } |
33299 | 33426 | }, |
33300 | 33427 | "parameters": { |
|
33687 | 33814 | "metadata": { |
33688 | 33815 | "description": "Contains the location used for AI Services deployment" |
33689 | 33816 | }, |
33690 | | - "value": "[variables('aiServiceLocation')]" |
| 33817 | + "value": "[parameters('azureAiServiceLocation')]" |
33691 | 33818 | }, |
33692 | 33819 | "CONTAINER_INSTANCE_NAME": { |
33693 | 33820 | "type": "string", |
|
0 commit comments