Es gibt drei Stücke hier:
Wie lösen Sie einen Build auf PR-Erstellung aus? Dafür habe ich das Plugin "Pull Request Notifier for Bitbucket" verwendet . Technisch benötigen Sie dies nicht, wenn Sie das Plugin "Bitbucket Branch Source" verwenden (siehe unten), aber es bietet eine gute Verbesserung der Lebensqualität für selbst gehostete Bitbucket Server-Benutzer.
Woher weiß Bitbucket, wann ein Jenkins-Build fehlgeschlagen ist? Hier gibt es verschiedene Möglichkeiten. Meines Erachtens ist das CloudBees-offizielle "Bitbucket Branch Source" -Plugin der beste Weg, dieses Problem zu lösen . Dieses Plugin kümmert sich um alle Aspekte des Setups, die Sie am Ende von Jenkins benötigen (wenn Sie die Bitbucket Cloud verwenden, kann es sich auch um die Konfiguration am Bitbucket-Ende kümmern). Dieses Plugin erkennt unter anderem Repositorys, Verzweigungen und Pull-Anforderungen automatisch. Es gibt auch Testergebnisse an Bitbucket zurück. Wenn Sie dieses Plugin aus irgendeinem Grund nicht verwenden möchten, gibt es auch andere Lösungen, die für mich funktioniert haben, insbesondere das Plugin "Stash Notifier". Dieses Plugin meldet Testergebnisse nur an Bitbucket zurück, mehr nicht.
Wie verhindern Sie, dass fehlerhafte PRs zusammengeführt werden? Dies kann mit den Repository-Einstellungen in Bitbucket behoben werden. Insbesondere Repository-Einstellungen> Zusammenführungsprüfungen> Minimale Anzahl erfolgreicher Builds. Wenn Sie dies auf alle Repos in einem Projekt anstatt nur auf ein Repo anwenden möchten, kann diese Einstellung auch auf Projektebene mit den neuesten Versionen von Bitbucket angepasst werden (seit 5.5, IIRC - ich bin zu faul Changelogs nachschlagen).