I progetti, sopratutto quelli basati a micro-frontend, stanno venendo via via sempre più sviluppati in monorepo, ossia vengono tutti gestiti all'interno di una sola area di lavoro e, sostanzialmente, sono divisi in cartelle: questo ha tanti vantaggi, come la semplicità di sviluppo quando ci sono tante dipendenze, aiuta nei processi di build e release, e così via.
Se gestisci un monorepo con più directory che condividono dipendenze comuni e hai Dependabot abilitato, c'è il rischio di trovarsi con decine di pull request tutte uguali, ma relative a progetti differenti.
Si può, però, ridurre il numero di pull request per gli aggiornamenti di versione raggruppando gli aggiornamenti per nome della dipendenza tra tutte le directory.
Se vuoi configurare Dependabot per monitorare più directory con il raggruppamento per nome della dipendenza, Dependabot eseguirà le seguenti operazioni:
- Creerà una singola pull request per ogni aggiornamento di dipendenza che interessa più directory
- Aggiornerà la stessa dipendenza alla stessa versione in tutte le directory in un'unica operazione
- Ridurrà il numero di pull request che devi revisionare
- Minimizzarà i costi di CI/CD, eseguendo i test una sola volta invece che per ogni directory
Vediamo un esempio di configurazione in cui raggruppiamo gli aggiornamenti per nome della dipendenza tra le directory /frontend, /admin-panel e /mobile-app.
version: 2
updates:
- package-ecosystem: "npm"
directories:
- "/frontend"
- "/admin-panel"
- "/mobile-app"
schedule:
interval: "weekly"
groups:
monorepo-dependencies:
group-by: dependency-nameSe, per esempio, lodash deve essere aggiornato in tutte e tre le directory, Dependabot creerà una singola pull request chiamata "Bump lodash in monorepo-dependencies group" che aggiornerà lodash in tutte e tre le posizioni. Questo è possibile, ma limitato, ai seguenti package manager: bundler, composer, mix, maven, npm, nuget e pip.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare zizmor per rendere più sicuri i workflow di GitHub
Enterprise Live Migrations - Migrare da Azure DevOps a GitHub
Gestione del system path nei workflow di GitHub
Introduzione a GitHub Copilot CLI
Effettuare chiamate API tramite GitHub App
Disponibile .NET 11 RC1 con aggiornamenti per runtime, SDK, MSBuild, NuGet e i principali framework della piattaforma. Un rilascio interessante per chi lavora su applicazioni cloud, web e desktop con stack Microsoft. #dotnet #csharp #aspnetcore #devops https://aspit.co/cjz
Gestione dei prompt file a livello di organizzazione aziendale in GitHub
Ricerca delle GitHub issue tramite operatori logici
Integrare un LLM in ASP.NET Core con Microsoft.Extensions.AI
Creare una UI per i tool MCP con resource e Azure Functions
Gestione dei codeowners in GitHub
Referenziare un package NuGet in una file based app .NET
I più letti di oggi
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Le DirectInk API nella Universal Windows Platform
- Leggere il contenuto di un file zip tramite le classi del namespace System.IO.Compression
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!


