Guider
Hur man snabbar upp GitHub Actions
Din pipeline tar längre tid än någon vill vänta, och det är inte självklart var tiden tar vägen.
8 min läsning
Symtom
- Utvecklare byter sammanhang medan de väntar
- Rörledningens varaktighet ökar varje kvartal
- Ingen kan säga vilket steg som är långsammast
Varför det händer
Hur man fixar det
- Mät först: delad kötid, inställningar, cacheåterställning och stegtid innan du ändrar något
- Aktivera samtidig annullering så att ersatta push slutar att förbruka kapacitet
- Fixa cachens träfffrekvens innan du köper större löpare - det är vanligtvis den större spaken
- Rätta löpare mot uppmätt CPU-utnyttjande, upp och ner
- Parallellisera den kritiska vägen: skära långa testsviter, dela upp ludd till sitt eget jobb
- Flytta till löpare med lokal NVMe om I/O-väntan är hög
Relaterat
Hur man hittar det långsamma steget i ett arbetsflödePipelinen är långsam men varje enskilt steg ser rimligt ut.Hur man minskar GitHub Actions kallstarterJobben sitter i 30 till 90 sekunder innan det första steget körs.Hur man diagnostiserar GitHub Actions kötiderJobben står i kö i minuter innan en löpare hämtar dem.Hur man gör git utcheckning snabbareactions/checkout tar minuter på ett stort förråd.