Abnahme eines Mergerequests

Aus THM-Wiki
Wechseln zu: Navigation, Suche

Um eine hohe Qualität bei Quellcode-Änderungen sicher zu stellen, werden von uns bei einem Merge-Request alle Änderungen überprüft. Hierzu verwenden wir folgende Checkliste:

Richtiger Zielbranch

Als Zielbranch ist der Branch "staging" des Repositories "git://scm.thm.de/estudy/estudy.git" zu wählen.

Wurde aus dem Branch "master" in regelmäßigen Abständen ein Merge durchgeführt?

Um keine unnötigen Probleme bei einem Merge zu erhalten und um sicher zu stellen, dass aktuelle Änderungen übernommen wurden, ist in regelmäßigen Abständen ein Merge mit dem Branch "master" des Repositories "git://scm.thm.de/estudy/estudy.git" durchzuführen.

Lässt sich der Merge-Request mittels "--dry-run" auflösen?

Kann der Mergerequest angenommen werden, ohne manuelle Merges durchzuführen?

Wurden die Codierrichtlinen eingehalten?

Die Änderungen am Quellcode müssen den Codierrichtlinen entsprechen: Programmiervorgaben

Wurden Unit-Tests erstellt und lassen sich diese ausführen?

Wenn Änderungen vorgenommen wurden, müssen diese durch Unit-Tests abgedeckt sein. Diese Unit-Tests müssen sich ausführen lassen.

Wurden nur relevante Änderungen vorgenommen?

Wurden Änderungen vorgenommen, die nicht relevant sind? Wurden Dateien angelegt, die nicht benötigt werden? Sind die Dateiberechtigungen fälschlicherweise global geändert worden? Letzteres lässt sich mit dem Durchführen einiger Maßnahmen verhindern.

Datenbankmigration vollständig?

Wurden Datenbankänderungen vorgenommen und sind diese gemäß der Vorgabe zur Datenbankmigration im Merge-Request enthalten?

Werden bei einem Codereview Mängel festgestellt?

Sind bei einer Durchsicht der Änderungen Mängel festgestellt worden. Anhaltspunkte sind hier:

  • Unverständlicher Code
  • Schlechte Code-Metriken (zyklomatische Komplexität, unverständliche Bezeichner etc.)

Gibt es bei manueller Prüfung der Änderungen in einer produktionsnahen Umgebung Auffälligkeiten?

Testen der Änderungen in einer produktionsnahen Umgebung. Gibt es da Auffälligkeiten?

Optional: Abnahmegespräch

Gab es in den Vorhergehenden Punkten Probleme, werden diese in einem abschließenden Gespräch geklärt.

Merge in den Branch "staging"

Übernahme der Änderungen in den Branch "staging" und anstoßen der Build-Pipeline auf den Build-Server.

Vollständiger Durchlauf der Build-Pipeline