Nello script precedente (#18) qui su dopsitalia.com, abbiamo visto come poter aggiornare lo stato di un work item tramite le REST API così che, ad esempio, possiamo automaticamente mettere stati personalizzati al verificarsi di terminate condizioni (pull request in progress, pull request completata, codice rilasciato e così via). In uno scenario simile, potremmo aver bisogno anche di applicare dei tag per specificare, per esempio, in quale ambiente è stato deployato un work item specifico: i tag, infatti, sono ottimi per poter eseguire delle query in Azure DevOps e, quindi, sono comodi per recuperare informazioni aggregate.
Per aggiungere un tag, possiamo nuovamente utilizzare le REST API di Azure DevOps ed invocare dalle nostre pipeline uno script di PowerShell come il seguente:
function Add-Tag { Param( [Parameter(Mandatory = $true)] [Int]$WorkItemId, [Parameter(Mandatory = $true)] [ValidateNotNullOrEmpty()] [String]$TagName ) $body = @( @{ op = "add" path = "/fields/System.Tags" value = "$TagName" } ) $data = ConvertTo-Json $body $url = "https://dev.azure.com/$(Organization)/_apis/wit/workitems/$WorkItemId`?api-version=5.1" Invoke-RestMethod $url -Method PATCH -Body $data -Headers @{Authorization=("Bearer {0}" -f $env:SYSTEM_ACCESSTOKEN);} -ContentType "application/json-patch+json" }
Poiché il verb HTTP dell'API specificata è PATCH, ci basterà cambiare l'operation (op) da add a remove per ottenere, invece, l'effetto opposto, ovvero la rimozione di un tag specificato come parametro di input allo script.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Centralizzare gli endpoint AI Foundry con Azure API Management
Abilitare automaticamente il force push di un gruppo su Azure DevOps
Creare agenti facilmente con Azure AI Agent Service
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Configurare automaticamente un webhook in Azure DevOps
Eliminare una project wiki di Azure DevOps
Managed deployment strategy in Azure DevOps
Ottenere un token di accesso per una GitHub App
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
I più letti di oggi
- The Agentic Day - Milano
- Tutorial LINQ
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Invocare trigger non HTTP delle Azure Function durante lo sviluppo
- Adattare i contenuti per il mobile con il meta-tag ViewPort e HTML5
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web