PR-scans opnieuw uitvoeren
Elke pull request wordt automatisch gescand bij het openen en bij elke push. De scanners — afhankelijkheden (fremforge/dep-scan), SAST (fremforge/sast), licenties (fremforge/license-scan), container-image (fremforge/image-scan) en handtekeningverificatie (fremforge/cosign-verify, informatief) — plaatsen hun resultaten als commitstatussen op de PR, en je branchbeschermingsregels gebruiken die als poort.
Af en toe raken de scanstatussen van een PR verouderd, bijvoorbeeld wanneer een tijdelijke storing van het platform een status niet heeft laten plaatsen. Je hoeft dan geen lege commit te pushen (en een volledige CI-build af te wachten) alleen om de scanners van ongeveer een minuut opnieuw te laten draaien. Voer ze in plaats daarvan direct opnieuw uit.
De scanners voor een PR opnieuw uitvoeren
curl -sS -X POST \
-H "Authorization: Bearer <token with findings:write>" \
https://frem.sh/_app/api/v1/orgs/<org>/repos/<repo>/pulls/<number>/rescan- Scope:
findings:write. - Voert de scanners opnieuw uit op de huidige head-commit van de pull request en plaatst de
fremforge/*-commitstatussen opnieuw. De scanners zijn meestal binnen enkele seconden klaar. - Idempotent: je kunt de aanroep veilig herhalen; resultaten worden ontdubbeld op repository + commit + scanner. Er wordt geen nieuwe CI-build gestart.
- Houdt zich aan het scanbeleid van je organisatie (een scanner die voor de organisatie of repository op
offstaat, wordt niet uitgevoerd), precies zoals de automatische scan bij een push.
Gelukt
{
"repo_full_name": "acme/api",
"pr_number": 42,
"head_sha": "a1b2c3d4…",
"scanners_enqueued": 5
}Andere antwoorden
| Status | Betekenis |
|---|---|
404 | Pull request niet gevonden. |
409 | Er is niets opnieuw uitgevoerd; detail legt uit waarom (centrale PR-scans zijn niet ingeschakeld voor de organisatie, de organisatie valt er niet onder, of de head-commit kon niet worden bepaald). |
503 | PR-scans zijn niet beschikbaar op deze instantie. |
Wanneer gebruik je dit
- Een PR is geblokkeerd op een scanstatus die nooit is geplaatst of verouderd lijkt.
- Je hebt het scanbeleid van je organisatie of repository gewijzigd en wilt een open PR opnieuw toetsen aan het nieuwe beleid zonder een commit te pushen.
Voor het gedrag van de automatische scan en details per scanner, zie Scannen van afhankelijkheden, SAST, Licentiescans, Image-scans en Handtekeningverificatie. Het volledige request- en responseschema staat in de API-referentie.