CI/CD

GitHub Workflows

  • pr.yml:
    • Führt Tests für alle Pull-Requests aus
    • Führt nx affected aus, das nur Aufgaben mit ungültigem Cache ausführt
    • Verwendet auch pkg-pr-new, um Paket-Vorschauen zu veröffentlichen und Links zu unseren Beispielen zu erstellen
  • release.yml:
    • Führt Tests für Code aus, der in Release-Branches zusammengeführt wurde
    • Führt nx run-many aus, das alle Aufgaben ausführt und sicherstellt, dass die Ausgaben vorhanden sind (notwendig für die Veröffentlichung von Builds)
    • Verwendet Changesets zur Versionsverwaltung und Veröffentlichung

Nx

Die TanStack-Projekte verwenden Nx, um die schnelle Ausführung unserer Tests und Builds zu ermöglichen. Aufgaben werden parallelisiert und sowohl lokal als auch in der CI gecacht. Obwohl Nx ein umfangreiches Plugin-System hat, nutzen wir Nx nur als NPM-Skript-Runner.

Config Files

  • ./nx.json: Hauptkonfigurationsdatei, die Aufgabenabhängigkeiten, Eingaben und Ausgaben definiert
  • ./package.json: Muss Root-Level-Skripte manuell angeben (z. B. test:format)
  • ./**/package.json: Paket-Level-Skripte (z. B. build) werden automatisch erkannt

Nx Agents

  • Nx ermöglicht es Ihnen, Ihre Aufgaben auf mehrere CI-Maschinen zu verteilen, wodurch die Anzahl der parallel ausführbaren Jobs erhöht wird
  • Bitte beachten Sie, dass dies eine ziemlich signifikante Startverzögerung verursacht
Unsere Partner
Code Rabbit
Bytes abonnieren

Ihre wöchentliche Dosis JavaScript-Nachrichten. Jeden Montag kostenlos an über 100.000 Entwickler geliefert.

Bytes

Kein Spam. Jederzeit kündbar.

Bytes abonnieren

Ihre wöchentliche Dosis JavaScript-Nachrichten. Jeden Montag kostenlos an über 100.000 Entwickler geliefert.

Bytes

Kein Spam. Jederzeit kündbar.