Node.js
Node.js CI na GitHub Actions
npm ci zapisuje desítky tisíc malých souborů při každém spuštění.
95s → 11s
npm ci
6m → 2m
Plné potrubí
6 GB/s
Propustnost disku
npm ci zapisuje desítky tisíc malých souborů při každém spuštění.
Proč se to děje
node_modules je zátěžový test souborového systému a úložiště CI připojené k síti je nejhorší možné místo pro jeho spuštění.
Co změnit
- Uložte do mezipaměti ~/.npm a obnovte node_modules přímo, nikoli přeinstalaci
- Přesunout do pnpm – jeho úložiště s adresou obsahu umožňuje téměř okamžité instalace do teplé mezipaměti
- Běžte na běžci s místním NVMe; tato zátěž je vázána na disk, nikoli na CPU
- Použijte --prefer-offline, aby se teplá mezipaměť znovu neověřovala přes síť
Node.js na runnerhut
Jediná řada specifická pro runnerhut je `runs-on: runnerhut-4vcpu-ubuntu-2404`. Vše ostatní je standardní GitHub Actions — stejné akce, stejná tajemství a stejný model oprávnění, který používáte dnes.
Váš další build může být dvakrát rychlejší za poloviční cenu
Začněte zdarma. Odchod je tentýž jeden řádek a i ten diff zveřejňujeme.