Zum Hauptinhalt springen

CI/CD-Integration

Die prokodo CLI ist vollständig nicht-interaktiv und CI-first gestaltet. Sie liest Geheimnisse aus Umgebungsvariablen und gibt strukturierte JSON-Ausgaben für die maschinelle Verarbeitung zurück.

GitHub Actions

Einfacher Verifizierungs-Workflow

name: prokodo Verifizierung

on:
push:
branches: [main]
pull_request:

jobs:
verify:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: '22'

- name: prokodo CLI installieren
run: npm install -g @prokodo/cli

- name: Projekt verifizieren
run: prokodo verify --json
env:
PROKODO_API_KEY: ${{ secrets.PROKODO_API_KEY }}
tipp

Den PROKODO_API_KEY als verschlüsseltes Secret in den Repository-Einstellungen speichern.

Mit gecachtem Schritt

- name: prokodo CLI installieren (gecacht)
run: |
npm install -g @prokodo/cli
prokodo --version

Ergebnis-Artefakt speichern

- name: Verifizierung mit JSON-Ausgabe ausführen
run: prokodo verify --json > prokodo-ergebnis.json

- name: Artefakt hochladen
uses: actions/upload-artifact@v4
with:
name: prokodo-ergebnis
path: prokodo-ergebnis.json

GitLab CI

prokodo-verify:
image: node:22
stage: test
script:
- npm install -g @prokodo/cli
- prokodo verify --json
variables:
PROKODO_API_KEY: $PROKODO_API_KEY
only:
- main
- merge_requests

CircleCI

version: 2.1

jobs:
prokodo-verify:
docker:
- image: cimg/node:22.0
steps:
- checkout
- run:
name: prokodo CLI installieren
command: npm install -g @prokodo/cli
- run:
name: Projekt verifizieren
command: prokodo verify --json
environment:
PROKODO_API_KEY: $PROKODO_API_KEY

Best Practices

EmpfehlungGrund
PROKODO_API_KEY als verschlüsseltes Secret speichernSchlüssel nie in Logs sichtbar
prokodo doctor --json als Schritt vor verify ausführenUmgebungsfehler frühzeitig erkennen
--json-Flag für alle CI-Aufrufe verwendenMaschinenlesbare Logs
Node 22 cachenSchnellere Pipeline-Ausführungszeiten

Lokale vs. CI-Umgebung

LokalCI
API-Schlüssel~/.config/prokodo/credentials.jsonPROKODO_API_KEY Env-Variable
FarbeAktiviertDeaktiviert (automatisch erkannt oder NO_COLOR=1)
Interaktive EingabeaufforderungenJa (wenn TTY)Nie
Exit-Code-SicherheitStandardWichtig — Pipeline schlägt bei != 0 fehl