Quando si lavora nell'enterprise o in aziende che hanno requisiti molti stringenti, è normale avere a che fare con self-hosted agents di Azure DevOps, ovvero virtual machine (o vere e proprie macchine fisiche) che vengono usate per eseguire le pipeline di CI/CD. Differiscono dagli hosted agent perchè non sono forniti da Microsoft e possiamo customizzare tutto il software che è installato sulle macchine, cambiare le performance e così via, al costo chiaramente di dover gestire il tutto internamente (incluso hardware fisico e patching del SO).
Quando si parla di hardware, un esempio concreto che ci si trova a dover gestire può essere lo spazio disponibile su disco. Eseguendo decine, centinaia o migliaia di build al giorno, la quantità di oggetti che vengono salvati sul disco aumenta in modo notevole, talvolta esponenzialmente. Proprio per questo motivo possiamo fare in modo che la pipeline, prima di essere eseguita, faccia un cleanup di tutto quello che era presente precedentemente nella stessa working directory:
jobs: - job: Build ... workspace: clean: all
Questo codice YAML fa uso della keyword workspace che accetta diversi valori per fare pulizia selettiva, oppure all per rimuovere tutto quello generato da una run precedente. Questo è l'equivalente delle clean options che erano impostabili tramite la UI delle classic pipeline:

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
-
Referenziare un @layer più alto in CSS
-
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
-
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
-
Applicare un filtro per recuperare alcune issue di GitHub
-
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
-
Gestire gli accessi con Token su Azure Container Registry
-
Introduzione ai web component HTML
-
Utilizzare Intersect e Except per filtrare set di dati in TSql
-
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
-
Eseguire script pre e post esecuzione di un workflow di GitHub
-
Eliminare record doppi in Sql Server
-
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- .NET Conference Italia 2025 - Milano
- The Agentic Day - Milano
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!