Naar inhoud springen

Monorepo

Monorepo CI op GitHub Actions

Wijzigingen van één regel activeren een volledige repository-build.

120 → 5
Pakketten gebouwd
45m → 6m
Pijpleiding

Wijzigingen van één regel activeren een volledige repository-build.

Waarom het gebeurt

Er is geen detectie van getroffen doelen, dus CI beschouwt elke push als een verandering in alles.

Wat te veranderen

  1. Pas de getroffen detectie toe - nx beïnvloed, turbo --filter, bazelquery of pants --veranderd-sindsdien
  2. Gebruik padfilters zodat niet-gerelateerde workflows helemaal niet worden geactiveerd
  3. Deel één warme cache voor elk pakket in plaats van caching per pakket
  4. Voer de taakgrafiek uit op één grote hardloper in plaats van op veel kleine

Monorepo op runnerhut

yaml
jobs:
affected:
runs-on: runnerhut-32vcpu-ubuntu-2404
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- run: npx nx affected -t lint test build --base=origin/main --parallel=16
Een werkend uitgangspunt

De enige runnerhut-specifieke regel is `runs-on: runnerhut-32vcpu-ubuntu-2404`. Al het andere is standaard GitHub Actions — dezelfde acties, dezelfde geheimen en hetzelfde machtigingsmodel dat u vandaag de dag gebruikt.

Je volgende build kan twee keer zo snel zijn, voor de halve prijs

Begin gratis. Weggaan is dezelfde ene regel, en die diff publiceren we ook.