Gibt es eine Möglichkeit, Pull-Request-Statusprüfungen auf GitHub zu löschen?

11

Ich habe nach einer Möglichkeit gesucht, einige Statusprüfungen zu entfernen, die von einem CI-Tool erstellt wurden, das ich aus meinen Pull-Anforderungen in meinem GitHub-Repository ausgewertet habe, aber ich hatte kein Glück, einen Weg zu finden, dies zu erreichen.

Wenn man sich die API-Dokumente zur Statusprüfung ansieht, scheint es keinen DELETE-Endpunkt für die Status-API zu geben, und ich konnte in der Benutzeroberfläche nichts Offensichtliches finden.

Andy Tolbert
quelle

Antworten:

7

Die beste Lösung, die ich finden konnte, besteht darin, einen neuen Status im selben Kontext wie erfolgreich zu erstellen. Auf diese Weise kann ich die Build-URL aus den Statusprüfungen entfernen und die PRs werden nicht als fehlerhaft angezeigt (wie in meinem Fall).

Zu diesem Zweck habe ich alle neuesten SHAs meiner Pull-Anforderungen durchlaufen und den folgenden API-Aufruf mit curl ausgeführt:

curl --user "username" --data @- https://api.github.com/repos/:owner/:repo/commits/:sha
{
  "state": "success",
  "description": "The build succeeded!",
  "context": "default"
}

Der Build-Verlauf wird nicht vollständig gelöscht (sodass er weiterhin über die API gefunden werden kann), aber auf den Pull-Anforderungsseiten sieht alles wie gewohnt aus.

Andy Tolbert
quelle
Das hat wunderbar funktioniert, danke!
Wir sind alle Monica
1

Die URL lautet jetzt (mit der v3-API):

https://api.github.com/repos/:owner/:repo/statuses/:sha

Siehe https://developer.github.com/v3/repos/statuses/

Fransurbo
quelle
1
Wie ist das eine richtige Antwort? Es gibt keine DELETE-Operation für diese URL, oder?
Vampir