Pull-Anfragen 05.11.2020, 07:03 Uhr

GitHub beschleunigt CI-Workflow um das Dreifache

Engineering-Teams entwickeln sich ständig weiter, werden agiler und produktiver. GitHub hat seinen Continuous-Integration-Workflow um das Dreifache beschleunigt, so dass ein CI-Lauf im Durchschnitt statt 45 Minuten nur noch 15 Minuten benötigt.
(Quelle: Michael Vi / shutterstock.com)
Hintergrund: Im Moment verfügt der Ruby-Monolith, der Millionen von Entwicklern auf GitHub.com beschäftigt, über mehr als 7.000 Testsuiten und über 5.000 Testdateien. Jedes einzelne Commit für eine Pull-Anfrage löst 25 Coninouos-Integration-Jobs aus und erfordert die Fertigstellung von 15 CI-Jobs, bevor eine Pull-Anfrage gemerged wird. Dies ist ein bekannter Reibungspunkt für viele grosse Organisationen, die mit dem Ruby-Monolith arbeiten. Und für GitHub bedeutet dies, dass ein Entwickler bei GitHub etwa 45 Minuten Wartezeit und 600 Cores an Rechenressourcen für jeden Commit aufwendet.
GitHub ist es gelungen seinen Cl-Workflow deutlich schneller zu machen.
Quelle: GitHub.com
Nach der Analyse dieser CI-Jobs versuchten die GitHub-Entwickler, eine solide Strategie zu entwickeln, um die internen Reibungsverluste der Entwickler zu verringern und die Produktivität zu steigern, wobei sie sich auf diese Strategie konzentrierten:
  • Interne Engineering-Werkzeuge für die Entwicklung.
  • Schlüsselkennzahlen (Deploy-Frequenz, Vorlaufzeit für Änderungen, Zeit für die Wiederherstellung des Service, Ausfallrate)
  • Erfahrungen aus früheren Entscheidungen und Erfolgen bei Kunden.
Wie das Team das erreicht hat, seine Strategie, die wichtigsten Ergebnisse und mehr steht in diesem Blogbeitrag "Building GitHub: introduction" von GitHub-Mitarbeiterin Kate Studwell. Der Blogbeitrag ist Teil der neuen Serie "Building GitHub", die einen Blick darauf wirft, wie Teams innerhalb der GitHub-Engineering-Organisation Möglichkeiten zur Verbesserung der internen Entwicklungswerkzeuge und Infrastruktur identifizieren und angehen.
Im Deep-Dive-Beitrag von GitHub-Mitarbeiterin Keerthana Kumar "Making GitHub CI workflow 3x faster" zeigt die Details der CI-Optimierungsarbeiten auf.



Das könnte Sie auch interessieren