Skip to content

Commit f8611e1

Browse files
danycontreDany Contrerasshawntmeyer
authored
Q1 2025 - Updates (#758)
* updates * updates * updates * updates * updates * updates * updates * updates * Added Support for EntraID identities (#754) * removed Key expiration * updated Groups UI * entraid support * removed extra if * testing with my branch * remove managementvm on entraid * update portal * updated ui * changed EnterpriseApp to ServicePrincipal * updated portal * fixed avdarm * update RBAC * updated url for script * updated ui * fixed createPrivateDNS parameter * fixed identityDomainName in SessionHost Script * added conditions for storage managed identity * added logging to set session host * changed to -command * configure baseuri back to azure * updated doc for identity info * settings * new session host brownfield fix up * merged files * updated json files * fixed reference to sub * fixed hostpool call * updated reference * fixed portalui for new session hosts * fixed validation on deployment prefix * fixed regex * tag regex * fixed modulo function and portal * fixed portal screen * update set-sessionhostconfig.ps1 * update allowed values for tags * updated batch size * unified changes across baseline and new session hosts * fixed keyvault ref * added index to UI * updated publisher reference for all lowercase * added count to UI * fixed vmsize count reference * fixed custom image in portal ui * updated docs and reverted script path to azure repo * fixed the servicePrincpalApiCalls * fixed condition on serviceprincipal blade controls and outputs. * updated to match azure repo in leue of sync * Update deploy.bicep --------- Co-authored-by: Dany Contreras <78437433+danycontre@users.noreply.github.com> * updates * updates * fixed the filtering and added condition for info box on manageement pane. * fixed filter on sku * updated branch name for tests * added filter for SKU * added Service Principal to Role Assignment * added ServicePrincipal to Role Assignment * changed avdEnterpriseAppId to avdServicePrincipalId * changed branch * update doc * updated share path creation in configureSessionHost.bicep * fixed filesharepath for fslogix * updates * updates * updates * updates * updates * updates * updates * updated new session host portal ui * added filtering for storage Account * allowed descrption on storage account * updates * updates * added new add-on for storage account key rotation * updates * renamed file * fixed file name * improved resource group drop down to show only those with cm-resource-parent tags and show value of hostPool Name to help in selection process * have to disable roaming the recycle bin to prevent corruption of recycle bin with cloud only identities * fixed key path * fixed minor bug in set sessionhost script * updates to api * fixed loop variable * removed bold on Resource Group * fixed set-registryValue error * updated name of deployments * update batch deployment name * updated parameter on Set-RegistryValue call for Entra ID * updated deployment names to increment batchid + 1 * updated logging * fixed parameter on write-log calls * added local group membership for fslogix * added garbage collection to hkcu unload * added error catching * retrieved deppref and environment from rg name * updates * reverting commit * reverting commit * reverted commit * DesktopVirtualization AVM API Version Update for US Gov Support * updated desktopvirtualization application avm api version * updated more modules with gov api version * avm update for subnets and privatednszones * regenerate arm * updated hostpool api version everywhere * fixed appid to search on portal-ui * updated graphapi filter * fixed bug in disk encryption section of UI * PR merge updates * PR merge updates * PR merge updates * PR merge updates * PR merge updates * PR merge updates * PR merge updates * PR merge updates * PR merge updates * PR merge updates --------- Co-authored-by: Dany Contreras <dany.contreras@microsoft.com> Co-authored-by: Shawn Meyer <49066369+shawntmeyer@users.noreply.github.com> Co-authored-by: Shawn Meyer <shmeyer@microsoft.com>
1 parent 6805f17 commit f8611e1

File tree

126 files changed

+12340
-17695
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

126 files changed

+12340
-17695
lines changed

avm/1.0.0/res/automation/automation-account/main.bicep

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -489,7 +489,7 @@ module automationAccount_privateEndpoints 'br/public:avm/res/network/private-end
489489
enableTelemetry: privateEndpoint.?enableTelemetry ?? enableTelemetry
490490
location: privateEndpoint.?location ?? reference(
491491
split(privateEndpoint.subnetResourceId, '/subnets/')[0],
492-
'2020-06-01',
492+
'2024-06-01',
493493
'Full'
494494
).location
495495
lock: privateEndpoint.?lock ?? lock

avm/1.0.0/res/automation/automation-account/main.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2538,7 +2538,7 @@
25382538
"value": "[coalesce(tryGet(coalesce(parameters('privateEndpoints'), createArray())[copyIndex()], 'enableTelemetry'), parameters('enableTelemetry'))]"
25392539
},
25402540
"location": {
2541-
"value": "[coalesce(tryGet(coalesce(parameters('privateEndpoints'), createArray())[copyIndex()], 'location'), reference(split(coalesce(parameters('privateEndpoints'), createArray())[copyIndex()].subnetResourceId, '/subnets/')[0], '2020-06-01', 'Full').location)]"
2541+
"value": "[coalesce(tryGet(coalesce(parameters('privateEndpoints'), createArray())[copyIndex()], 'location'), reference(split(coalesce(parameters('privateEndpoints'), createArray())[copyIndex()].subnetResourceId, '/subnets/')[0], '2024-03-01', 'Full').location)]"
25422542
},
25432543
"lock": {
25442544
"value": "[coalesce(tryGet(coalesce(parameters('privateEndpoints'), createArray())[copyIndex()], 'lock'), parameters('lock'))]"

avm/1.0.0/res/automation/automation-account/tests/e2e/max/dependencies.bicep

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@ resource virtualNetwork 'Microsoft.Network/virtualNetworks@2023-04-01' = {
4141
}
4242
}
4343

44-
resource privateDNSZone 'Microsoft.Network/privateDnsZones@2020-06-01' = {
44+
resource privateDNSZone 'Microsoft.Network/privateDnsZones@2024-06-01' = {
4545
name: 'privatelink.azure-automation.net'
4646
location: 'global'
4747

48-
resource virtualNetworkLinks 'virtualNetworkLinks@2020-06-01' = {
48+
resource virtualNetworkLinks 'virtualNetworkLinks@2024-06-01' = {
4949
name: '${virtualNetwork.name}-vnetlink'
5050
location: 'global'
5151
properties: {

avm/1.0.0/res/automation/automation-account/tests/e2e/waf-aligned/dependencies.bicep

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,11 @@ resource virtualNetwork 'Microsoft.Network/virtualNetworks@2023-04-01' = {
2929
}
3030
}
3131

32-
resource privateDNSZone 'Microsoft.Network/privateDnsZones@2020-06-01' = {
32+
resource privateDNSZone 'Microsoft.Network/privateDnsZones@2024-06-01' = {
3333
name: 'privatelink.azure-automation.net'
3434
location: 'global'
3535

36-
resource virtualNetworkLinks 'virtualNetworkLinks@2020-06-01' = {
36+
resource virtualNetworkLinks 'virtualNetworkLinks@2024-06-01' = {
3737
name: '${virtualNetwork.name}-vnetlink'
3838
location: 'global'
3939
properties: {

avm/1.0.0/res/desktop-virtualization/application-group/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ This module deploys an Azure Virtual Desktop Application Group.
1717
| :-- | :-- |
1818
| `Microsoft.Authorization/locks` | [2020-05-01](https://learn.microsoft.com/en-us/azure/templates/Microsoft.Authorization/2020-05-01/locks) |
1919
| `Microsoft.Authorization/roleAssignments` | [2022-04-01](https://learn.microsoft.com/en-us/azure/templates/Microsoft.Authorization/2022-04-01/roleAssignments) |
20-
| `Microsoft.DesktopVirtualization/applicationGroups` | [2024-04-08-preview](https://learn.microsoft.com/en-us/azure/templates/Microsoft.DesktopVirtualization/2023-09-05/applicationGroups) |
21-
| `Microsoft.DesktopVirtualization/applicationGroups/applications` | [2024-04-08-preview](https://learn.microsoft.com/en-us/azure/templates/Microsoft.DesktopVirtualization/2023-09-05/applicationGroups/applications) |
20+
| `Microsoft.DesktopVirtualization/applicationGroups` | [2023-09-05](https://learn.microsoft.com/en-us/azure/templates/Microsoft.DesktopVirtualization/2023-09-05/applicationGroups) |
21+
| `Microsoft.DesktopVirtualization/applicationGroups/applications` | [2023-09-05](https://learn.microsoft.com/en-us/azure/templates/Microsoft.DesktopVirtualization/2023-09-05/applicationGroups/applications) |
2222
| `Microsoft.Insights/diagnosticSettings` | [2021-05-01-preview](https://learn.microsoft.com/en-us/azure/templates/Microsoft.Insights/2021-05-01-preview/diagnosticSettings) |
2323

2424
## Usage examples

avm/1.0.0/res/desktop-virtualization/application-group/application/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ This module deploys an Azure Virtual Desktop Application Group Application.
1414

1515
| Resource Type | API Version |
1616
| :-- | :-- |
17-
| `Microsoft.DesktopVirtualization/applicationGroups/applications` | [2024-04-08-preview](https://learn.microsoft.com/en-us/azure/templates/Microsoft.DesktopVirtualization/2023-09-05/applicationGroups/applications) |
17+
| `Microsoft.DesktopVirtualization/applicationGroups/applications` | [2023-09-05](https://learn.microsoft.com/en-us/azure/templates/Microsoft.DesktopVirtualization/2023-09-05/applicationGroups/applications) |
1818

1919
## Parameters
2020

avm/1.0.0/res/desktop-virtualization/application-group/application/main.bicep

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,11 @@ param iconPath string = ''
3737
@sys.description('Optional. Index of the icon.')
3838
param iconIndex int = 0
3939

40-
resource appGroup 'Microsoft.DesktopVirtualization/applicationGroups@2024-04-08-preview' existing = {
40+
resource appGroup 'Microsoft.DesktopVirtualization/applicationGroups@2023-09-05' existing = {
4141
name: applicationGroupName
4242
}
4343

44-
resource application 'Microsoft.DesktopVirtualization/applicationGroups/applications@2024-04-08-preview' = {
44+
resource application 'Microsoft.DesktopVirtualization/applicationGroups/applications@2023-09-05' = {
4545
name: name
4646
parent: appGroup
4747
properties: {

avm/1.0.0/res/desktop-virtualization/application-group/application/main.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
"metadata": {
55
"_generator": {
66
"name": "bicep",
7-
"version": "0.26.54.24096",
8-
"templateHash": "11159515031632739969"
7+
"version": "0.33.93.31351",
8+
"templateHash": "3961073075950222669"
99
},
1010
"name": "Azure Virtual Desktop Application Group Application",
1111
"description": "This module deploys an Azure Virtual Desktop Application Group Application.",

avm/1.0.0/res/desktop-virtualization/application-group/main.bicep

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -87,11 +87,11 @@ resource avmTelemetry 'Microsoft.Resources/deployments@2023-07-01' =
8787
}
8888
}
8989

90-
resource appGroup_hostpool 'Microsoft.DesktopVirtualization/hostPools@2024-04-08-preview' existing = {
90+
resource appGroup_hostpool 'Microsoft.DesktopVirtualization/hostPools@2023-09-05' existing = {
9191
name: hostpoolName
9292
}
9393

94-
resource appGroup 'Microsoft.DesktopVirtualization/applicationGroups@2024-04-08-preview' = {
94+
resource appGroup 'Microsoft.DesktopVirtualization/applicationGroups@2023-09-05' = {
9595
name: name
9696
location: location
9797
tags: tags
@@ -109,14 +109,14 @@ module appGroup_applications 'application/main.bicep' = [
109109
params: {
110110
name: application.name
111111
applicationGroupName: appGroup.name
112-
description: contains(application, 'description') ? application.description : ''
113-
friendlyName: contains(application, 'friendlyName') ? application.friendlyName : appGroup.name
112+
description: application.?description ?? ''
113+
friendlyName: application.?friendlyName ?? appGroup.name
114114
filePath: application.filePath
115-
commandLineSetting: contains(application, 'commandLineSetting') ? application.commandLineSetting : 'DoNotAllow'
116-
commandLineArguments: contains(application, 'commandLineArguments') ? application.commandLineArguments : ''
117-
showInPortal: contains(application, 'showInPortal') ? application.showInPortal : false
118-
iconPath: contains(application, 'iconPath') ? application.iconPath : application.filePath
119-
iconIndex: contains(application, 'iconIndex') ? application.iconIndex : 0
115+
commandLineSetting: application.?commandLineSetting ?? 'DoNotAllow'
116+
commandLineArguments: application.?commandLineArguments ?? ''
117+
showInPortal: application.?showInPortal ?? false
118+
iconPath: application.?iconPath ?? application.filePath
119+
iconIndex: application.?iconIndex ?? 0
120120
}
121121
}
122122
]
@@ -137,11 +137,9 @@ resource appGroup_roleAssignments 'Microsoft.Authorization/roleAssignments@2022-
137137
for (roleAssignment, index) in (roleAssignments ?? []): {
138138
name: guid(appGroup.id, roleAssignment.principalId, roleAssignment.roleDefinitionIdOrName)
139139
properties: {
140-
roleDefinitionId: contains(builtInRoleNames, roleAssignment.roleDefinitionIdOrName)
141-
? builtInRoleNames[roleAssignment.roleDefinitionIdOrName]
142-
: contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/')
140+
roleDefinitionId: builtInRoleNames[?roleAssignment.roleDefinitionIdOrName] ?? (contains(roleAssignment.roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/')
143141
? roleAssignment.roleDefinitionIdOrName
144-
: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName)
142+
: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleAssignment.roleDefinitionIdOrName))
145143
principalId: roleAssignment.principalId
146144
description: roleAssignment.?description
147145
principalType: roleAssignment.?principalType

avm/1.0.0/res/desktop-virtualization/application-group/main.json

Lines changed: 30 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
"metadata": {
66
"_generator": {
77
"name": "bicep",
8-
"version": "0.33.13.18514",
9-
"templateHash": "14213682580568647702"
8+
"version": "0.33.93.31351",
9+
"templateHash": "11120131172578458858"
1010
},
1111
"name": "Azure Virtual Desktop Application Group",
1212
"description": "This module deploys an Azure Virtual Desktop Application Group.",
@@ -304,12 +304,12 @@
304304
"appGroup_hostpool": {
305305
"existing": true,
306306
"type": "Microsoft.DesktopVirtualization/hostPools",
307-
"apiVersion": "2024-04-08-preview",
307+
"apiVersion": "2023-09-05",
308308
"name": "[parameters('hostpoolName')]"
309309
},
310310
"appGroup": {
311311
"type": "Microsoft.DesktopVirtualization/applicationGroups",
312-
"apiVersion": "2024-04-08-preview",
312+
"apiVersion": "2023-09-05",
313313
"name": "[parameters('name')]",
314314
"location": "[parameters('location')]",
315315
"tags": "[parameters('tags')]",
@@ -330,7 +330,7 @@
330330
"scope": "[format('Microsoft.DesktopVirtualization/applicationGroups/{0}', parameters('name'))]",
331331
"name": "[guid(resourceId('Microsoft.DesktopVirtualization/applicationGroups', parameters('name')), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId, coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)]",
332332
"properties": {
333-
"roleDefinitionId": "[if(contains(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), variables('builtInRoleNames')[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName], if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
333+
"roleDefinitionId": "[coalesce(tryGet(variables('builtInRoleNames'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName), if(contains(coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, '/providers/Microsoft.Authorization/roleDefinitions/'), coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', coalesce(parameters('roleAssignments'), createArray())[copyIndex()].roleDefinitionIdOrName)))]",
334334
"principalId": "[coalesce(parameters('roleAssignments'), createArray())[copyIndex()].principalId]",
335335
"description": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'description')]",
336336
"principalType": "[tryGet(coalesce(parameters('roleAssignments'), createArray())[copyIndex()], 'principalType')]",
@@ -394,25 +394,39 @@
394394
"applicationGroupName": {
395395
"value": "[parameters('name')]"
396396
},
397-
"description": "[if(contains(parameters('applications')[copyIndex()], 'description'), createObject('value', parameters('applications')[copyIndex()].description), createObject('value', ''))]",
398-
"friendlyName": "[if(contains(parameters('applications')[copyIndex()], 'friendlyName'), createObject('value', parameters('applications')[copyIndex()].friendlyName), createObject('value', parameters('name')))]",
397+
"description": {
398+
"value": "[coalesce(tryGet(parameters('applications')[copyIndex()], 'description'), '')]"
399+
},
400+
"friendlyName": {
401+
"value": "[coalesce(tryGet(parameters('applications')[copyIndex()], 'friendlyName'), parameters('name'))]"
402+
},
399403
"filePath": {
400404
"value": "[parameters('applications')[copyIndex()].filePath]"
401405
},
402-
"commandLineSetting": "[if(contains(parameters('applications')[copyIndex()], 'commandLineSetting'), createObject('value', parameters('applications')[copyIndex()].commandLineSetting), createObject('value', 'DoNotAllow'))]",
403-
"commandLineArguments": "[if(contains(parameters('applications')[copyIndex()], 'commandLineArguments'), createObject('value', parameters('applications')[copyIndex()].commandLineArguments), createObject('value', ''))]",
404-
"showInPortal": "[if(contains(parameters('applications')[copyIndex()], 'showInPortal'), createObject('value', parameters('applications')[copyIndex()].showInPortal), createObject('value', false()))]",
405-
"iconPath": "[if(contains(parameters('applications')[copyIndex()], 'iconPath'), createObject('value', parameters('applications')[copyIndex()].iconPath), createObject('value', parameters('applications')[copyIndex()].filePath))]",
406-
"iconIndex": "[if(contains(parameters('applications')[copyIndex()], 'iconIndex'), createObject('value', parameters('applications')[copyIndex()].iconIndex), createObject('value', 0))]"
406+
"commandLineSetting": {
407+
"value": "[coalesce(tryGet(parameters('applications')[copyIndex()], 'commandLineSetting'), 'DoNotAllow')]"
408+
},
409+
"commandLineArguments": {
410+
"value": "[coalesce(tryGet(parameters('applications')[copyIndex()], 'commandLineArguments'), '')]"
411+
},
412+
"showInPortal": {
413+
"value": "[coalesce(tryGet(parameters('applications')[copyIndex()], 'showInPortal'), false())]"
414+
},
415+
"iconPath": {
416+
"value": "[coalesce(tryGet(parameters('applications')[copyIndex()], 'iconPath'), parameters('applications')[copyIndex()].filePath)]"
417+
},
418+
"iconIndex": {
419+
"value": "[coalesce(tryGet(parameters('applications')[copyIndex()], 'iconIndex'), 0)]"
420+
}
407421
},
408422
"template": {
409423
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
410424
"contentVersion": "1.0.0.0",
411425
"metadata": {
412426
"_generator": {
413427
"name": "bicep",
414-
"version": "0.33.13.18514",
415-
"templateHash": "12429020349302903087"
428+
"version": "0.33.93.31351",
429+
"templateHash": "3961073075950222669"
416430
},
417431
"name": "Azure Virtual Desktop Application Group Application",
418432
"description": "This module deploys an Azure Virtual Desktop Application Group Application.",
@@ -494,7 +508,7 @@
494508
"resources": [
495509
{
496510
"type": "Microsoft.DesktopVirtualization/applicationGroups/applications",
497-
"apiVersion": "2024-04-08-preview",
511+
"apiVersion": "2023-09-05",
498512
"name": "[format('{0}/{1}', parameters('applicationGroupName'), parameters('name'))]",
499513
"properties": {
500514
"description": "[parameters('description')]",
@@ -565,7 +579,7 @@
565579
"metadata": {
566580
"description": "The location of the scaling plan."
567581
},
568-
"value": "[reference('appGroup', '2024-04-08-preview', 'full').location]"
582+
"value": "[reference('appGroup', '2023-09-05', 'full').location]"
569583
}
570584
}
571585
}

0 commit comments

Comments
 (0)