Workflow
Pull-Request-Prüfungen
Scanverra scannt jeden Pull Request, kommentiert die kritischen und hohen Probleme, die er hinzufügt, und setzt die Statusprüfung scanverra/repo-scan. Probleme, die schon im Zielbranch sind, blockieren nie einen Merge.
Einrichten
- 1
GitHub verbinden
Verbinden Sie auf der Seite Repo Scanner das GitHub-Konto mit Admin-Rechten für das Repository. - 2
Pull-Request-Prüfungen öffnen
Klicken Sie auf das Pull-Request-Symbol neben der Scan-Schaltfläche des Repositorys. - 3
Festlegen, wann gescannt wird
Pull Requests scannen ist standardmäßig aktiv. Aktivieren Sie Pushes auf Branches scannen, um auch Pushes auf die genannten Branches zu scannen, zum Beispielmain, production. Dann Aktivieren. - 4
Prüfung zur Pflicht machen (optional)
Öffnen Sie in GitHub Settings und dann Branches, legen Sie eine Regel für Ihren Hauptbranch an und verlangen Sie die Statusprüfungscanverra/repo-scan. Pull Requests mit neuen kritischen oder hohen Problemen lassen sich dann nicht mergen.
Worauf die Prüfung achtet
Jeder Scan wird mit dem letzten Scan des Zielbranches des Pull Requests verglichen. Befunde werden über Tool, Regel und Datei (nicht Zeile) abgeglichen, verschobener alter Code zählt also nicht als neu. Der Status ist nur dann failure, wenn der PR kritische oder hohe Probleme hinzufügt; error, wenn der Scan nicht fertig wurde. Scanverra führt einen Kommentar pro PR und aktualisiert ihn bei jedem Push.
### ❌ Scanverra: 2 new critical or high issues Score 72/100 · quality gate passed · compared with the latest scan of `main` | Severity | Issue | | --- | --- | | 🔴 critical | Hardcoded API key (`src/lib/payments.ts:12`) | | 🟠 high | SQL query built from user input (`src/api/orders.ts:48`) | 5 critical or high issues were already on `main` and don't block this PR. Open the full report. From there you can open a fix pull request for the issues Scanverra can fix.
Pull-Request-Prüfungen oder GitHub Action?
Beide nutzen denselben Scanner. Wählen Sie, was zu Ihrer Arbeitsweise passt.
| Pull-Request-Prüfungen | GitHub Action | |
|---|---|---|
| Einrichtung | Ein Schalter in Scanverra. Keine Workflow-Datei. | Eine Workflow-Datei und ein Repository-Secret. |
| Wo es läuft | Bei Scanverra, nachdem GitHub den Webhook sendet. | In Ihrem GitHub-Actions-Runner. |
| Gate | Neue kritische oder hohe Probleme im Vergleich zum Zielbranch. | fail-on nach Schweregrad oder fail-on-new für dasselbe Gate für neuen Code. |
| Ergebnisse | PR-Kommentar, Statusprüfung und der Scanverra-Bericht. | Job-Log, SARIF in Code Scanning und der Scanverra-Bericht beim Hochladen. |
Die Action ist unter CI/CD beschrieben.
Fehlerbehebung
Im Pull Request erscheint nichts
Öffnen Sie in GitHub die Settings des Repositorys, dann Webhooks, und prüfen Sie die letzte Zustellung an Scanverra. Ein 401 bedeutet, dass sich das Webhook-Secret geändert hat: Deaktivieren und aktivieren Sie die Prüfungen erneut.
„GitHub hat keinen Webhook für dieses Repository erlaubt“
Das verbundene Konto ist kein Admin des Repositorys. Verbinden Sie ein Konto mit Admin-Rechten oder bitten Sie einen Admin, die Prüfungen zu aktivieren.
Prüfungen enden nach einem Tarifwechsel
Webhook-Scans laufen nur in kostenpflichtigen Tarifen. Ihre Einstellungen bleiben erhalten und funktionieren wieder, sobald der Tarif aktiv ist.
Jedes Problem gilt als neu
Der Zielbranch hat keinen früheren Scan zum Vergleich. Scannen Sie ihn einmal auf der Repo-Scanner-Seite oder aktivieren Sie Pushes auf Branches scannen für
main.