Hallo.
Wenn Sie bereits versucht haben, mit DroneCI CI + CD zu Ihrer Anwendung hinzuzufügen, wissen Sie, wie leistungsstark dieses Tool dafür ist. Es funktioniert.
Während meines Studiums beschäftigte ich mich ein wenig intensiv mit DevOps und erstellte dynamisch Überprüfungsumgebungen für jeden im Projekt geöffneten Pull Request. Alle arbeiten an Bildern, die die ganze Arbeit erledigen (ich kann in Zukunft mehr erklären), und stellen sie auf meinem persönlichen K8s-Cluster bereit (danke Helm und Vorlagen).
Nachdem alles implementiert wurde, habe ich ein kleines Problem entdeckt. Der Anbieter, in diesem Fall Github, sendet den Hook mit allen Informationen, aber DroneCI ignoriert die geschlossene Aktion einfach. Sie können also keine engen PR-Aktionen auf Ihrem CI auslösen (in meinem Fall das Entfernen der Überprüfungsumgebungsanwendungen).
Nach vielen Suchen im Web habe ich keine Lösung gefunden, also habe ich eine erstellt, jajajaja.
Wenn Sie beispielsweise auch mit dem Problem konfrontiert sind, dass Ihre für Ihre .drone.yaml konfigurierte Pipeline nicht ausgelöst werden kann, wenn die Aktion geschlossen wird, besteht eine mögliche Lösung darin, eine Proxy-Weiterleitung zwischen GitHub und Ihrer DroneCI hinzuzufügen Anwendung.
Das Projekt:
https://github.com/tcharlezin/drone-ci-proxy
Im Grunde müssen Sie nur die Umgebungen konfigurieren:
WEB_PORT="8080"
TARGET_HOST="https://drone-ci.your-domain.here"
Stellen Sie die Anwendung bereit, konfigurieren Sie Ihren GitHub so, dass er auf den /hook für den Proxy verweist, und fertig.
Hier können Sie die Hook-Informationen einsehen und damit umgehen:
https://github.com/tcharlezin/drone-ci-proxy/blob/master/cmd/handle/handle.go#L64
Viel Spaß!
Das obige ist der detaillierte Inhalt vonProxy für geschlossene Aktion bei Pull Request [DroneCI + GitHub]. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!