In uno degli ultimi aggiornamenti (Sprint 192 di Settembre), Microsoft ha rilasciato un update importante per quanto riguarda la sintassi YAML introducendo, finalmente, un supporto migliore agli statement decisionali. Sebbene ad oggi non ci sia anche l'uso di un vero e proprio switch-case, possiamo però dire di avere un if migliorato.
Il codice seguente:
variables: ${{ if eq(parameters.os, 'win') }}: agentName: windows ${{ if eq(parameters.os, 'linux') }}: agentName: linux ${{ if eq(parameters.os, 'mac') }}: agentName: mac
Può ora essere riscritto come segue:
variables: ${{ if eq(parameters.os, 'win') }}: agentName: windows ${{ elseif eq(parameters.os, 'linux') }}: agentName: linux ${{ else }}: agentName: mac
L'introduzione di elseif e else consente effettivamente più flessibilità nel codice poichè, fino a poco tempo fa, siamo stati obbligati ad inserire al posto dell'else la stessa condizione presente nell'if, però negata. Può non sembrare un vantaggio, ma è chiaramente molto utile quando nelle condition devono essere valutate diverse condizioni, tavolta con and/or complessi e che dipendono dall'esecuzione di task/job precedenti.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare una libreria CSS universale - Rotazione degli elementi
Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Creare agenti facilmente con Azure AI Agent Service
Eliminare una project wiki di Azure DevOps
Testare l'invio dei messaggi con Event Hubs Data Explorer
Generare una User Delegation SAS in .NET per Azure Blob Storage
Eseguire script pre e post esecuzione di un workflow di GitHub
La gestione della riconnessione al server di Blazor in .NET 9
Creare una libreria CSS universale: i bottoni
Recuperare l'ultima versione di una release di GitHub
Cancellare una run di un workflow di GitHub