Monorepo's zijn krachtig, maar kunnen je CI/CD-kosten opjagen. Wij testten de beste tools die selective builds en merge queues ondersteunen — zonder je budget te overschrijden.
Mergify is geen CI/CD-platform maar een onmisbare optimalisatielaag die merge queues en path-based triggers toevoegt aan elke bestaande CI-pijplijn. Het voorkomt 'merge hell' in monorepo's zonder extra build-minuten te verbruiken.
GitLab Self-Managed biedt onbeperkte build-minuten op eigen hardware met krachtige monorepo-ondersteuning via rules:changes. Geen verrassingen aan het einde van de maand.
Travis CI biedt conditionele builds en 10.000 gratis build-minuten per maand voor openbare repo's. Mist native merge queue, maar is voorspelbaar en betrouwbaar voor kleinere monorepo's.
Een monorepo houdt al je code in één repository — prachtig voor consistentie en hergebruik, maar een nachtmerrie voor je CI/CD-pijplijn. Elke push kan tientallen projecten raken, en als je niet oppast draai je honderden build-minuten per dag. Voor teams met een budget onder de €100 per maand is de kunst van het slim bouwen essentieel.
Gelukkig zijn er tools die speciaal zijn ontworpen om monorepo's betaalbaar te houden. De truc? Conditional execution en merge queues. Hiermee bouw je alleen wat er écht veranderd is, en voorkom je dat kapotte code de main branch binnensluipt. Dit zijn onze aanbevelingen.
In een monorepo triggert een wijziging in packages/frontend/button.tsx niet per se een build van de backend, de mobile app of de documentatie-site. Toch doen veel CI/CD-tools dat standaard wel — ze draaien de volledige suite bij elke commit. Dat is zonde van je compute-minuten én je geld.
De oplossing: path-based filtering (ook wel 'selective builds' genoemd). Tools die dit ondersteunen, laten je per folder of glob-patroon bepalen welke jobs moeten draaien. Combineer dat met een merge queue — een wachtrij die PR's in de juiste volgorde samenvoegt — en je main branch blijft groen zonder dat je elke losse PR hoeft te rebasen.1
| Tool | Build-minuten (gratis/basisplan) | Monorepo-ondersteuning | Prijs (vanaf) |
|---|---|---|---|
| Mergify | Onbeperkt (eigen infra) | Merge queues + path-filters | Gratis (open source) / €0 |
| GitLab Self-Managed | Onbeperkt (eigen hardware) | CI/CD paths + triggers | €0 (self-managed) |
| Travis CI | 10.000 min/maand (gratis tier) | Conditionele builds per branch | Gratis / €69/maand |
Mergify is geen volwaardige CI/CD-omgeving, maar een optimalisatielaag die bovenop je bestaande CI draait. Het voegt merge queues en geavanceerde monorepo-specifieke triggers toe die voorkomen dat je main branch breekt.2
Waarom dit essentieel is voor monorepo's: stel dat drie teamleden tegelijk PR's openen in verschillende packages. Zonder merge queue kan PR #2 (die een breaking change introduceert in een gedeelde library) worden gemerged vóór PR #1 (die die library nog niet verwacht). Mergify queue't ze in de juiste volgorde en bouwt ze sequentieel — alleen de getroffen packages.
Ons oordeel: Mergify is het ding dat écht het verschil maakt voor monorepo-teams. Het is gratis voor open source en kost niets extra als je al een CI-provider hebt. Een absolute aanrader.
| Specificatie | Waarde |
|---|---|
| Prijs | Gratis (OSS) / betaald |
| Monorepo-filters | Path-based queues |
| Merge queue | Ja, volledig |
GitLab Self-Managed is de meest kosteneffectieve optie voor teams die zware monorepo-builds draaien. Omdat je de software op je eigen hardware installeert, zijn er geen build-minuten-limieten — je betaalt alleen voor je eigen servers.1
GitLab CI ondersteunt rules:changes en needs: pijplijnen waarmee je per folder kunt bepalen welke jobs draaien. Een wijziging in backend/ triggert alleen de backend-tests, niet de frontend-build. Combineer dat met GitLab's eigen merge queues (beschikbaar in Premium/Ultimate) en je hebt een complete, betaalbare monorepo-oplossing.
Ons oordeel: Voor teams die al eigen infrastructuur hebben of een dedicated server kunnen draaien, is dit veruit de beste prijs-kwaliteitverhouding. Geen verrassingen aan het einde van de maand.
| Specificatie | Waarde |
|---|---|
| Prijs | €0 (self-managed) |
| Build-minuten | Onbeperkt |
| Monorepo-filters | rules:changes |
Travis CI is een vertrouwde naam in de CI/CD-wereld en biedt solide ondersteuning voor conditionele builds via zijn conditions:-syntax. Je kunt per branch of per folder bepalen welke jobs worden uitgevoerd, wat essentieel is om binnen het gratis quotum van 10.000 build-minuten per maand te blijven.1
Voor kleinere monorepo's (tot 5-10 packages) is Travis CI een prima keuze. Het nadeel: Travis mist een native merge queue, dus je zult dat zelf moeten oplossen (bijvoorbeeld met Mergify). Ook is de gratis tier beperkt tot openbare repositories.
Ons oordeel: Een degelijke, voorspelbare optie voor kleine teams die niet te veel packages beheren. Combineer met Mergify voor het beste resultaat.
| Specificatie | Waarde |
|---|---|
| Prijs | Gratis / €69/maand |
| Build-minuten | 10.000/mnd (gratis) |
| Monorepo-filters | Conditionele builds |
Onze aanbevolen setup voor een monorepo onder €100/maand:
De combinatie van selective builds en een merge queue is de enige manier om monorepo's schaalbaar en betaalbaar te houden. Welke tool je ook kiest: zorg dat je CI-pijplijn alleen draait wat nodig is, en dat je main branch beschermd blijft tegen conflicterende PR's.
Wij testen tools onafhankelijk. Sommige links op deze pagina zijn affiliate-links — daar verdienen wij een kleine commissie aan, zonder extra kosten voor jou.
| Keuze | Prijs | Prijs | Monorepo-filters | Merge queue | |
|---|---|---|---|---|---|
Mergify ▶ Keuze | — | Gratis (OSS) | Path-based queues | Ja, volledig | Bekijk prijs ↗ |
GitLab Self-Managed beste prijs-kwaliteit | — | €0 (self-managed) | rules:changes | Premium/Ultimate | Bekijk prijs ↗ |
Travis CI solide budgetoptie | — | Gratis / €69/mnd | Conditionele builds | Nee (via Mergify) | Bekijk prijs ↗ |
Wil je een vervolgvraag die het artikel niet beantwoordde? Vraag de engine — hij draagt de context van het artikel mee.
Each contender was provisioned on a clean cloud box and driven through its real workflow — the agent ran the official setup where one existed, then exercised the core features the way a new user would across a week of trials before scoring.