Node.js
Node.js CI GitHub Actions
npm ci kirjoittaa joka ajon aikana kymmeniä tuhansia pieniä tiedostoja.
95s → 11s
npm ci
6m → 2m
Täysi putkisto
6 GB/s
Levyn suorituskyky
Miksi se tapahtuu
Mitä muuttaa
- Tallenna ~/.npm välimuistiin ja palauta node_modules suoraan uudelleenasennuksen sijaan
- Siirry pnpm:ään – sen sisältökohteena oleva myymälä tekee asennukset lähes välittömästi lämpimällä välimuistilla
- Juokse juoksijalla paikallisen NVMe:n avulla; tämä työmäärä on sidottu levyyn, ei suorittimeen
- Käytä arvoa --prefer offline, jotta lämmintä välimuistia ei vahvisteta uudelleen verkon kautta
Node.js runnerhutissa (runnerhut)
Seuraava buildisi voi olla kaksi kertaa nopeampi puoleen hintaan
Aloita ilmaiseksi. Lähteminen on sama yksi rivi, ja julkaisemme senkin diffin.
Aiheeseen liittyvää
RustCargo rakentaa uudelleen koko riippuvuuskaavion lähes jokaisella CI-ajolla.MeneGo buildit ovat nopeita paikallisesti ja selittämättömän hitaita CI:ssä.Pythonpip-asennus kestää minuutteja ja pytest toimii yhdessä ytimessä.JavaJokainen koontiversio lataa uudelleen samat Maven- tai Gradle-riippuvuudet.