Gidsen
Cache gebruiken in GitHub Actions
C- en C++-builds compileren alles bij elke run opnieuw.
5 min leestijd
C- en C++-builds compileren alles bij elke run opnieuw.
Waarom het gebeurt
De opslag van ccache wordt niet bewaard en kan dus geen identieke compilaties kortsluiten.
Hoe het te repareren
- Cache ~/.ccache ingetoetst op de compilerversie en bronhash
- Stel CMAKE_C_COMPILER_LAUNCHER en CMAKE_CXX_COMPILER_LAUNCHER in op ccache
- Druk ccache -s af aan het einde van de taak, zodat het trefferpercentage zichtbaar is
- Stel max_size hoog genoeg in: de standaardwaarde is vaak te klein voor CI
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
Hoe u ervoor kunt zorgen dat CI-caches daadwerkelijk blijven bestaanCaches zijn geconfigureerd, maar het trefferpercentage is laag.Hoe u de cachelimiet van 10 GB kunt omzeilenUw caches overschrijden de 10 GB per repository en beginnen stilletjes te worden verwijderd.Hoe u een build-cache deelt tussen repository'sElke repository onderhoudt zijn eigen cache voor dezelfde gedeelde afhankelijkheden.Een Docker-cache delen tussen takenElke matrixpoot bouwt dezelfde lagen opnieuw op.