Skip to content

codecharter validate

Eine einzelne .ccr-Regel-Datei parsen und gegen das Schema prüfen.

codecharter validate <file>

<file> ist der Pfad zu einer einzelnen .ccr-Datei. Der Befehl parsed die Datei, kompiliert die LINQ-Expression gegen das Schema und gibt die Metadaten aus, sobald alles passt.

Beispiel

codecharter validate .codecharter/rules/repository-naming.ccr

Output bei Erfolg:

Rule 'Repository class must end in Repository' parsed successfully
  Severity: error
  Category: Naming
  Description: Repositories must have a 'Repository' suffix for discoverability

Bei einem Fehler:

Validation failed: Unknown property 'IsAsyncMethod' on MethodModel at line 8

Exit-Codes

  • 0: Regel gültig.
  • 2: Validierungsfehler (Parse-, Schema- oder Compile-Fehler).

Empfohlene Verwendung

Als Pre-Commit-Hook für Regel-Dateien

#!/bin/sh
for file in $(git diff --cached --name-only --diff-filter=ACMR | grep '\.ccr$'); do
    codecharter validate "$file" || exit 1
done

So fängt ihr Tippfehler in .ccr-Files bevor der CI-Lauf sie sieht.