gidsen
Gestapelde diffs maken CI duurder – doe ze toch
Door te stapelen worden pijplijnruns vermenigvuldigd. De oplossing is gelijktijdigheidscontrole, niet minder pull-aanvragen.
{auteur} · {rol} · {datum} · {minuten} min leestijd
Gestapelde pull-verzoeken zijn een goede gewoonte en zijn in CI echt duurder: het opnieuw baseren van de onderkant van een stapel maakt elke vertakking erboven ongeldig, en elke tak wordt opnieuw uitgevoerd.
Waar de kosten eigenlijk naartoe gaan
Niet in de extra pull-verzoeken – in de herhalingen die worden geactiveerd door het opnieuw stapelen. Een vijf-deep stack die drie keer wordt gerebaseerd, is vijftien pijplijnruns, waarvan de meeste resultaten niemand leest omdat er al een nieuwe rebase aankomt.
Wat te doen in plaats van minder te stapelen
- Concurrency annulering is op de scheidsrechter gericht, dus een herstapeling annuleert de vervangen run onmiddellijk
- Voer de volledige suite alleen uit op de onderkant van de stapel en bij samenvoegen; Voer snelle controles uit op de rest
- Gebruik detectie van getroffen doelen, zodat een niet-gerelateerde vertakking in de stapel niet alles opnieuw opbouwt
- Concept-pull-aanvragen krijgen de beperkte pijplijn totdat ze als gereed worden gemarkeerd
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.
Gerelateerd
CI als je teamgenoten agenten zijnAI-codeermiddelen pushen veel vaker dan mensen. Hier leest u hoe dat het pijplijnontwerp en de kostenbeheersing verandert.Waarom we instructies voor vertrek publicerenElke migratiepagina op deze site bevat de diff om terug van ons te migreren. Hier is de redenering.Wat we hebben geleerd bij het runnen van een miljoen CI-banenWachtrijtijd, cachegedrag, juiste grootte en de faalmodi die alleen op schaal voorkomen.Stop met het opnieuw proberen van slechte testsAutomatische nieuwe pogingen veranderen een echte bug in een periodieke bug en trainen uw team om elke fout te wantrouwen.