GitLab Runner für Clang Format / Tidy



  • Hi, ich möchte auf meinem GitLab Server (Debian) einen "Runner" aufsetzen der bei jedem commit die Sourcen entsprechend einer forgegebenen "clang-format" Datei formatiert und evtl. auch mit Clang Tidy den modernisiert. Wie richte ich sowas ein? Bin da echt ratlos und konnte kein Beispiel online finden. Reicht mir da ein Shell Runner oder brauche ich Docker dafür? Wäre super wenn mich da jemand in die richtige Richtung stoßen könnte.



  • Also wen es interessiert.
    Ihr müsst eine ".gitlab-ci.yml" Datei im Root Verzeichnis des Repositories ablegen und mit dieser dann z.B. ein Shell Script aufrufen. Siehe z. B. hier:

    https://gitlab.ecole.ensicaen.fr/candelot/PlanetWars2dRT-core/raw/8a1d5283015c7300b4b534c8b2eceec0cb601991/tools/git-pre-commit-cppcheck

    Das Script wird auch ausgeführt. Hier Beispielsweise mit einem Aufruf von cppcheck.
    Allerdings findet cppcheck jetzt keine der in der Variablen "changed_files" aufgelisteten Dateien:

    <code>cppcheck error could not find or open any of the paths given</code>

    Gebe ich ein Pfad mit -I an erwartet "cppcheck" allerdings scheinbar nur noch eine einzige Datei als Input und die Auflistung funktioniert nicht mehr. Mit einer einzigen Datei geht es dann wieder. Jemand eine Idee wie man das cppcheck jetzt noch an laufen bekommt?