Description: Was Build, Cloudflare Workers und Deployment wirklich tun – und wie eine Pipeline einen falschen Erfolg meldet.
Introduction
Eine Website zu aktualisieren klingt einfach. Warum dauert es dann vierzig Minuten, obwohl die alte Seite weiterhin online ist? Oft liegt es weniger am Erstellen der Dateien als an den vielen Prüfungen vor der Veröffentlichung.
What is happening?
Beim Build werden Artikel und Programmcode in Dateien umgewandelt, die ein Browser verwenden kann. Cloudflare Workers beantwortet Anfragen und führt bei Bedarf Code aus. GitHub Actions und Buildkite können die Befehle zum Erstellen und Veröffentlichen ausführen. Wer jedes Problem als 'Worker steht still' bezeichnet, erschwert die Fehlersuche.
The absurd failure
Stellen wir uns eine Veröffentlichung vor, die erst einen Worker um Erlaubnis fragt, zum neuesten Code wechselt, erneut startet, Änderungen prüft, ein Register für Gratis-Kontingente liest und einen Bericht erstellt. Die erste Anfrage scheitert wegen eines aufgebrauchten Kontingents und wird übersprungen. Die nächste Prüfung blockiert den Vorgang. Nichts wird veröffentlicht, doch die Anzeige meldet ERFOLG. Das ist wie ein Paketdienst, der 'zugestellt' meldet, während das Paket noch im Lager liegt.
How to tell what failed
Hundert rote Fehlermeldungen können auf eine einzige defekte gemeinsame Datei zurückgehen. Umgekehrt bedeutet ein erfolgreicher Build nicht, dass die neue Version online ist. Man muss getrennt prüfen, ob Dateien erstellt, hochgeladen und unter der echten Adresse ausgeliefert wurden.
A simpler route
Ein schlankerer Ablauf nutzt einen offiziellen Befehl für den Worker und einen für Build und Upload der Website. Alle Automatisierungsdienste verwenden dieselben Befehle. Ohne tatsächliche Veröffentlichung muss der Vorgang mit Begründung fehlschlagen. Danach wird die öffentliche Version geprüft.
Conclusion
Automatisierung sollte Arbeit sparen. Stattdessen betreut der Mensch nun rund um die Uhr die Automatisierung. Vielleicht braucht es weniger Kontrollstationen statt noch eines Aufpassers.

