I resource group sono raggruppamenti logici di qualsiasi risorsa possiamo utilizzare all'interno della piattaforma Microsoft Azure. Con il passare del tempo queste risorse vengono spostate, per una migliore organizzazione, oppure eliminate perché non più necessarie. Questo è vero soprattutto per vecchie risorse che hanno assunto un resource group automatico dal nome poco intuitivo.
E' facile quindi ritrovarsi con uno o più gruppi di risorse vuoti che possiamo tranquillamente eliminare. Per questo genere di task PowerShell è perfetto, perché con poche righe ci risolve anche qualche ora di lavoro. Se accediamo a http://shell.azure.com/ possiamo accedere direttamente alla shell preconfigurata con Azure contenente tutto il necessario.
In questo script proponiamo uno snippet da lanciare che cicla su tutte le sottoscrizioni della directory corrente ed elimina tutti i resource group vuoti.
# Lista delle sottoscrizioni $subids = (Get-AzureRMSubscription).ID ForEach ($sub in $subids) { # Seleziona la sottoscrizione Select-AzureRmSubscription -SubscriptionId $Sub | Out-Null # Recupera tutte i gruppi di risorse $all = (Get-AzureRmResourceGroup).ResourceGroupName # Recupera le risorse e i rispettivi gruppi usati $used = (Get-AzureRMResource | Group-Object ResourceGroupName).Name # Trova quelli vuoti $empty = $all | Where-Object {$_ -notin $used} # Cancella ogni gruppo ForEach ($r in $empty) { Write-Host "Deleting '$r' Resource Group" Remove-AzureRmResourceGroup -Name $r } }
Ecco come appare lo script sulla shell.
Se siamo sicuri di voler cancellare i gruppi senza conferma, alla riga Remove-AzureRmResourceGroup possiamo aggiungere lo switch -Force.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Linting di un Dockerfile con un workflow di GitHub
Evitare il flickering dei componenti nel prerender di Blazor 8
Usare lo spread operator con i collection initializer in C#
Semplificare il deployment di siti statici con Azure Static Web App
Workflow di continuous deployment tramite pull request label in GitHub
Controllare gli accessi IP alle app con Azure Container Apps
Eseguire attività basate su eventi con Azure Container Jobs
Utilizzare Model as a Service su Microsoft Azure
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Implementare il throttling in ASP.NET Core
Load test di ASP.NET Core con k6