Skip to content

Developer Guidelines Continuous Integration

Moritz Mistol edited this page Sep 20, 2022 · 3 revisions

Continuous Integration

Im Folgenden werden die Github Workflows sowie die Pre-Commit-Hooks beschrieben.

Github Workflows

Um nicht nur lokal, sondern auch auf Github die Code-Qualität zu forcieren, werden die folgenden Github Workflows verwendet. Dabei unterscheiden wir zwei Fälle, damit nicht zu viele Workflow-Runs generiert werden, da auf unterschiedlichen Betriebssystemen und Versionen getestet wird.

Push eines Commits auf den Main Branch

Es werden alle Workflows gestartet, wenn ein Push auf den Main Branch erfolgt.

  • Linting und Check auf Formatierung
  • Build und Tests durchführen
  • Deployment auf Github Pages

Push eines Commits auf einen Feature-Branch

Wenn der Push nicht auf den Main Branch erfolgt, sondern ein auf Feature-Branch, werden nicht immer alle Workflows gestartet.

  1. Hat der Branch keine offene Pull-Request, wird nur der Code nur gelintet und auf Formatierung überprüft.

  2. Wenn der Branch bereits eine Pull Request geöffnet hat, dann wird zusätzlich bei jedem Push der Build und die Tests durchgeführt.

Pre-Commit Hooks

Die Pre-Commit Hooks werden direkt mit npm i installiert. Manuell können diese mittels npm run prepare aktualisiert werden.

Die Pre-Commits Hooks sind: