diff --git a/eng/common/scripts/Helpers/Resource-Helpers.ps1 b/eng/common/scripts/Helpers/Resource-Helpers.ps1 index a73cff2f6fb..004772fe9ac 100644 --- a/eng/common/scripts/Helpers/Resource-Helpers.ps1 +++ b/eng/common/scripts/Helpers/Resource-Helpers.ps1 @@ -5,15 +5,16 @@ function Get-PurgeableGroupResources { [Parameter(Mandatory=$true, Position=0)] [string] $ResourceGroupName ) + $purgeableResources = @() # Discover Managed HSMs first since they are a premium resource. Write-Verbose "Retrieving deleted Managed HSMs from resource group $ResourceGroupName" # Get any Managed HSMs in the resource group, for which soft delete cannot be disabled. - $deletedHsms = Get-AzKeyVaultManagedHsm -ResourceGroupName $ResourceGroupName -ErrorAction Ignore ` + $deletedHsms = @(Get-AzKeyVaultManagedHsm -ResourceGroupName $ResourceGroupName -ErrorAction Ignore ` | Add-Member -MemberType NoteProperty -Name AzsdkResourceType -Value 'Managed HSM' -PassThru ` - | Add-Member -MemberType AliasProperty -Name AzsdkName -Value VaultName -PassThru + | Add-Member -MemberType AliasProperty -Name AzsdkName -Value VaultName -PassThru) if ($deletedHsms) { Write-Verbose "Found $($deletedHsms.Count) deleted Managed HSMs to potentially purge." @@ -23,12 +24,12 @@ function Get-PurgeableGroupResources { Write-Verbose "Retrieving deleted Key Vaults from resource group $ResourceGroupName" # Get any Key Vaults that will be deleted so they can be purged later if soft delete is enabled. - $deletedKeyVaults = Get-AzKeyVault -ResourceGroupName $ResourceGroupName -ErrorAction Ignore | ForEach-Object { + $deletedKeyVaults = @(Get-AzKeyVault -ResourceGroupName $ResourceGroupName -ErrorAction Ignore | ForEach-Object { # Enumerating vaults from a resource group does not return all properties we required. Get-AzKeyVault -VaultName $_.VaultName -ErrorAction Ignore | Where-Object { $_.EnableSoftDelete } ` | Add-Member -MemberType NoteProperty -Name AzsdkResourceType -Value 'Key Vault' -PassThru ` | Add-Member -MemberType AliasProperty -Name AzsdkName -Value VaultName -PassThru - } + }) if ($deletedKeyVaults) { Write-Verbose "Found $($deletedKeyVaults.Count) deleted Key Vaults to potentially purge." @@ -73,9 +74,9 @@ function Get-PurgeableResources { Write-Verbose "Retrieving deleted Key Vaults from subscription $subscriptionId" # Get deleted Key Vaults for the current subscription. - $deletedKeyVaults = Get-AzKeyVault -InRemovedState ` + $deletedKeyVaults = @(Get-AzKeyVault -InRemovedState ` | Add-Member -MemberType NoteProperty -Name AzsdkResourceType -Value 'Key Vault' -PassThru ` - | Add-Member -MemberType AliasProperty -Name AzsdkName -Value VaultName -PassThru + | Add-Member -MemberType AliasProperty -Name AzsdkName -Value VaultName -PassThru) if ($deletedKeyVaults) { Write-Verbose "Found $($deletedKeyVaults.Count) deleted Key Vaults to potentially purge." diff --git a/eng/scripts/live-test-resource-cleanup.ps1 b/eng/scripts/live-test-resource-cleanup.ps1 index dbd69f18dc7..2c7e4654c82 100644 --- a/eng/scripts/live-test-resource-cleanup.ps1 +++ b/eng/scripts/live-test-resource-cleanup.ps1 @@ -52,7 +52,7 @@ Connect-AzAccount -Force -Tenant $TenantId -Credential $provisionerCredential -S Select-AzSubscription -Subscription $SubscriptionId Write-Verbose "Fetching groups" -$allGroups = Get-AzResourceGroup +$allGroups = @(Get-AzResourceGroup) Write-Host "Total Resource Groups: $($allGroups.Count)" @@ -68,7 +68,7 @@ $toDelete = $hasDeleteAfter.Where({ $deleteDate = ($_.Tags.DeleteAfter -as [Date Write-Host "Groups to delete: $($toDelete.Count)" # Get purgeable resources already in a deleted state. -$purgeableResources = Get-PurgeableResources +$purgeableResources = @(Get-PurgeableResources) foreach ($rg in $toDelete) {