C++
C++ CI pe GitHub Actions
Fiecare unitate de traducere se recompilează chiar și atunci când nu s-a schimbat nimic relevant.
28m → 6m
Construcție completă
28m → 90s
incremental
88%
ccache hit
Fiecare unitate de traducere se recompilează chiar și atunci când nu s-a schimbat nimic relevant.
De ce se întâmplă
Nu este configurată nicio memorie cache a compilatorului, așa că ccache sau sccache nu pot scurtcircuita compilări identice.
Ce să schimbi
- Adăugați ccache sau sccache și persistați directorul său cache între rulări
- Folosește ninja în loc să faci — graficul dependenței este mai rapid și mai paralel
- Cache vcpkg sau directoare de pachete Conan introduse pe manifest
- Construiți pe un runner de 32 vCPU; Compilarea C++ paralelizează aproape perfect
C++ pe runnerhut
Singura linie specifică runnerhut este `runs-on: runnerhut-32vcpu-ubuntu-2404`. Orice altceva este standard GitHub Actions — aceleași acțiuni, aceleași secrete și același model de permisiuni pe care îl utilizați astăzi.
Următorul tău build poate fi de două ori mai rapid, la jumătate de preț
Începe gratuit. Plecarea înseamnă aceeași linie, iar acel diff îl publicăm și noi.
Similar
RustCargo reconstruiește întregul grafic de dependență pe aproape fiecare rulare CI.Du-teCompilările Go sunt rapide la nivel local și inexplicabil de lente în CI.Pythoninstalarea pip durează câteva minute și pytest rulează pe un singur nucleu.Node.jsnpm ci scrie zeci de mii de fișiere mici la fiecare rulare.