Zum Inhalt springen

Rubin

Ruby CI auf GitHub Actions

Bei der Bundle-Installation werden bei jedem Durchlauf native Gems aus dem Quellcode kompiliert.

140s → 6s
Bundle-Installation
18m → 4m
RSpec

Bei der Bundle-Installation werden bei jedem Durchlauf native Gems aus dem Quellcode kompiliert.

Warum es passiert

Gems wie nokogiri, pg und grpc erstellen C-Erweiterungen, was Minuten kostet, es sei denn, die erstellten Gems werden zwischengespeichert.

Was zu ändern ist

  1. Der Cache-Anbieter/das Cache-Bundle ist auf Gemfile.lock festgelegt, sodass native Erweiterungen einmal erstellt werden
  2. Legen Sie die Bundle-Konfigurationsbereitstellung für reproduzierbare, sperrdateigenaue Installationen auf „true“ fest
  3. Führen Sie RSpec parallel mit parallel_tests auf allen verfügbaren Kernen aus
  4. Verwenden Sie einen Snapshot-Runner, wenn die Installation immer noch dominiert – dadurch wird der Schritt vollständig entfernt

Ruby auf runnerhut

Die einzige runnerhut-spezifische Zeile ist „runs-on: runnerhut-8vcpu-ubuntu-2404“. Alles andere sind Standard-GitHub Actions – dieselben Aktionen, dieselben Geheimnisse und dasselbe Berechtigungsmodell, das Sie heute verwenden.

Ihr nächster Build könnte doppelt so schnell sein — zum halben Preis

Kostenlos starten. Der Wechsel zurück ist dieselbe eine Zeile — auch dieses Diff veröffentlichen wir.