In un recentissimo aggiornamento di Azure DevOps, al momento della scrittura di questo articolo, ancora in fase di rilascio worldwide, i nuovi agent di tipo ubuntu-latest hanno preso di fatto la versione ubuntu-24.04. Sebbene questa sia una operazione che viene fatta di norma, ogni volta che viene rilasciata una nuova versione degli agent e sono dichiarati "stable", questa volta la differenza è importante poichè con questa nuova versione sono stati rimossi alcuni software dall'agent che impattano gli sviluppatori Azure e .NET.
Infatti, Terraform e Mono non sono più installati di default in questa nuova versione. Se le nostre pipeline sono configurate per essere eseguite su 'ubuntu-latest' e usano un task fra MSBuild@1, NuGetCommand@2, Terraform o un qualsiasi script bash/powershell che fa riferimento a questi tool, è molto probabile che le nostre pipeline falliscano.
Le soluzioni in questo momento sono due. La prima, più semplice, è quella di fissare nelle nostre pipeline l'agent su una versione più "vecchia" di ubuntu, ad esempio ubuntu-22.04, quanto meno fino a quando non avremo avuto modo di testare le nostre pipeline e verificare che non ci siano problemi.
pool: vmImage: 'ubuntu-22.04'
La seconda è quella di installare i tool che ci servono manualmente come step della pipeline, come per esempio:
- pwsh: sudo apt install mono-devel -y displayName: Install Mono
Bisogna prestare particolare attenzione perchè lo stesso behavior è applicato anche ai workflow di GitHub, in quanto condividono la stessa infrastruttura per quanto riguarda gli hosted-runners.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ottimizzare le performance usando Span<T> e il metodo Split
Loggare le query più lente con Entity Framework
Escludere alcuni file da GitHub Secret Scanning
Eseguire i worklow di GitHub su runner potenziati
Utilizzare una qualunque lista per i parametri di tipo params in C#
Managed deployment strategy in Azure DevOps
Gestione degli eventi nei Web component HTML
Cancellare una run di un workflow di GitHub
Creare una custom property in GitHub
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
I più letti di oggi
- Organizzare i moduli sfruttando CommonJS in Javascript
- .NET Aspire per applicazioni distribuite
- Animare la rotazione di un'immagine dentro un canvas in HTML5
- Importare un file JavaScript in un web worker
- .NET Conference Italia 2024 - Milano
- La nostra prova su strada di Windows Phone 7
- Utilizzare Hybrid Cache in .NET 9
- Autenticazione di git tramite Microsoft Entra ID in Azure DevOps