Die folgende Tabelle gilt für codecharter analyze. Andere Befehle verwenden
dieselben Nummern mit anderer Bedeutung (zum Beispiel liefert codecharter test
Exit-Code 1 bei fehlgeschlagenen Spec-Fällen und codecharter verify Exit-Code
1 bei erkanntem Drift). Exit-Code 6 (Lizenzfehler) gilt für jeden Befehl.
| Code | Bedeutung |
|---|---|
0 |
Erfolg. Keine Findings über der --fail-on-Schwelle. |
1 |
Findings über der --fail-on-Schwelle. |
2 |
Aufruf- oder Konfigurationsfehler (zum Beispiel ungültige Flag-Kombinationen, eine fehlende Diff-Datei, kein Regelverzeichnis, eine defekte Baseline-Datei oder ein fehlendes Lockfile bei konfigurierten Profilen). |
3 |
Analyse konnte nicht ausgeführt werden. Entweder konnte die Solution nicht geladen werden, oder der Profil-Cache ist unvollständig und das Portal nicht erreichbar. Im zweiten Fall führen Sie codecharter update mit Internetverbindung aus. |
4 |
Lockfile veraltet. Bei konfigurierten Plattform-Profilen weicht der Content-Hash eines Profils von dem ab, was das Portal meldet. Führen Sie codecharter update aus. |
6 |
Lizenzfehler. Lizenzdatei fehlt, ist abgelaufen, manipuliert oder für diese CLI-Version nicht freigegeben. Siehe Lizenzdatei. |
10 |
Konfigurationsdatei strukturell ungültig. .codecharter/config.yml oder .codecharter/config.local.yml enthält fehlerhaftes YAML oder eine ungültige Struktur. Die genaue Fehlermeldung erscheint auf stderr. |
--fail-on und Exit-Code 1
codecharter analyze MySolution.sln --fail-on error
codecharter analyze MySolution.sln --fail-on warn
codecharter analyze MySolution.sln --fail-on info
| Wert | Exit-Code 1 wenn |
|---|---|
error |
mindestens ein error-Finding |
warn |
mindestens ein warn- oder error-Finding |
info |
mindestens ein Finding überhaupt |
Ohne --fail-on führt jedes Finding zu Exit-Code 1. Mit --fail-on error wird nur bei Findings mit Severity error blockiert.
Beispiele in CI-Shells
GitHub Actions
- name: CodeCharter
run: codecharter analyze MySolution.sln --fail-on error
# Exit-Code 1 macht den Step rot, GitHub stoppt den Job.
Bash mit Exit-Codes auswerten
codecharter analyze MySolution.sln --fail-on error
code=$?
case $code in
0) echo "ok" ;;
1) echo "findings over threshold" ;;
2) echo "usage or configuration error" ;;
esac