Wie Unternehmensentwicklungsteams GitLab und Mattermost ChatOps nutzen, um die Entwicklung zu beschleunigen

Hallo wieder! OTUS startet im Februar einen neuen Kurs „CI/CD auf AWS, Azure und Gitlab“. Im Vorfeld des Kursbeginns haben wir eine Übersetzung nützlichen Materials vorbereitet.

Ein kompletter Satz DevOps-Tools, ein Open-Source-Messenger und ChatOps – wie kann man sich nicht verlieben?

Der Druck auf Entwicklungsteams war noch nie so groß wie heute, da sie den Wunsch hegen, Produkte schneller und effizienter zu entwickeln. Die steigende Beliebtheit von DevOps ist größtenteils auf die Erwartungen zurückzuführen, die an DevOps gestellt werden, um Entwicklungszyklen zu beschleunigen, die Agilität zu erhöhen und Teams dabei zu helfen, Probleme schneller zu lösen. Obwohl sich die Verfügbarkeit und der Umfang der DevOps-Tools in den letzten Jahren erheblich verbessert haben, ist die bloße Auswahl der neuesten und besten Tools keine Garantie für einen reibungslosen, problemlosen Entwicklungslebenszyklus.

Warum GitLab

In einem Ökosystem exponentiell wachsender Auswahl und Komplexität bietet GitLab eine vollständige Open-Source-DevOps-Plattform, die Entwicklungszyklen beschleunigen, Entwicklungskosten senken und die Entwicklerproduktivität steigern kann. Von der Planung und Codierung bis hin zur Bereitstellung und Überwachung (und wieder zurück) vereint GitLab viele verschiedene Tools in einem offenen Set.

Warum Mattermost ChatOps

Bei Mattermost sind wir große Fans von GitLab, weshalb Mattermost mit GitLab Omnibus ausgeliefert wird und wir daran arbeiten, sicherzustellen, dass Mattermost problemlos damit läuft Gitlab.

Plattform öffnen Mattermost ChatOps ermöglicht es Ihnen, Ihrem Team relevante Informationen bereitzustellen und Entscheidungen direkt dort zu treffen, wo das Gespräch stattfindet. Wenn ein Problem auftritt, kann der ChatOps-Workflow relevante Teammitglieder benachrichtigen, die zusammenarbeiten, um das Problem direkt in Mattermost zu lösen.

ChatOps bietet eine Möglichkeit, über Nachrichten mit CI/CD-Aufgaben zu interagieren. Heutzutage werden innerhalb von Organisationen viele Diskussionen, Kooperationen und Problemlösungen in Messenger übertragen, und die Möglichkeit, CI/CD-Aufgaben mit Rückkopplung der Ausgabe in den Kanal auszuführen, kann den Arbeitsablauf des Teams erheblich beschleunigen.

Mattermost + GitLab

Ein kompletter Satz DevOps-Tools, ein Open-Source-Messenger und ChatOps – wie kann man sich nicht verlieben? Mit GitLab und Mattermost können Entwickler nicht nur ihren DevOps-Prozess vereinfachen, sondern ihn auch in dieselbe Chat-Oberfläche verschieben, in der Teammitglieder Probleme diskutieren, zusammenarbeiten und Entscheidungen treffen.

Hier sind einige Beispiele dafür, wie Entwicklungsteams Mattermost und GitLab gemeinsam nutzen, um die Produktivität mithilfe von ChatOps zu verbessern.

Itk nutzt GitLab und Mattermost, um Code pünktlich bereitzustellen und erhöht die Anzahl der Produktionsbereitstellungen pro Jahr um das Sechsfache
Itk Das in Montpellier, Frankreich, ansässige Unternehmen entwickelt Tools und Anwendungen, die Landwirten dabei helfen, Ernteprozesse zu optimieren, die Erntequalität zu verbessern und Risiken besser zu verwalten.

Sie begannen etwa 2014 mit der Nutzung von GitLab und nutzten hauptsächlich ein älteres Chat-Tool für die tägliche Arbeit, Nachrichten und Videoanrufe. Als das Unternehmen jedoch wuchs, wuchs das Tool nicht mit; Es gab keine dauerhaft gespeicherten, leicht auffindbaren Nachrichten und die Teamarbeit wurde immer schwieriger. Also begannen sie, nach einer Alternative zu suchen.

Bald darauf entdeckten sie, dass das GitLab Omnibus-Paket mit einer offenen Messaging-Plattform gebündelt war: Mattermost. Sie waren sofort begeistert von der einfachen Code-Sharing-Funktionalität, einschließlich der automatischen Syntaxhervorhebung und der vollständigen Markdown-Unterstützung, sowie von der einfachen Wissensfreigabe, der Nachrichtensuche und der Zusammenarbeit des gesamten Teams an Ideen zur Entwicklung neuer, in GitLab integrierter Lösungen.

Vor dem Wechsel zu Mattermost konnten Teammitglieder nicht einfach Benachrichtigungen über den Entwicklungsfortschritt erhalten. Sie wollten jedoch in der Lage sein, Projekte visuell zu verfolgen, Anfragen zusammenzuführen und andere Aktionen in GitLab durchzuführen.

Damals begann Romain Maneski, ein Entwickler von itk, ein GitLab-Plugin für Mattermost zu schreiben, das es seinem Team später ermöglichte, GitLab-Benachrichtigungen in Mattermost zu abonnieren und Benachrichtigungen über neue Probleme und Überprüfungsanfragen an einem Ort zu erhalten.

Heute Plugin unterstützt:

  • Tägliche Erinnerungenum Informationen darüber zu erhalten, welche Probleme und Zusammenführungsanfragen Ihre Aufmerksamkeit erfordern;
  • Benachrichtigungen – um Benachrichtigungen von Mattermost zu erhalten, wenn jemand Sie erwähnt, Ihnen eine Überprüfungsanfrage sendet oder ein Problem an Sie auf GitLab weiterleitet.
  • Schaltflächen in der Seitenleiste – Achten Sie mithilfe der Schaltflächen in der Mattermost-Seitenleiste darauf, wie viele Bewertungen, ungelesene Nachrichten, Aufgaben und offene Zusammenführungsanfragen Sie derzeit haben.
  • Abonnements für Projekte – Verwenden Sie Slash-Befehle, um wichtige Kanäle zu abonnieren, um Benachrichtigungen über neue Zusammenführungsanfragen oder Probleme in GitLab zu erhalten.

Jetzt nutzt sein gesamtes Unternehmen sowohl GitLab als auch Mattermost, um Arbeitsabläufe mithilfe von ChatOps zu beschleunigen. Dadurch waren sie in der Lage, Updates schneller bereitzustellen, was zu einer Verdreifachung der Anzahl der Projekte und Microservices, an denen das Team arbeitete, und einer Versechsfachung der Anzahl der Produktionsbereitstellungen im Laufe des Jahres führte, und das alles bei gleichzeitigem Wachstum der Entwicklung und Agronomenteams um das Fünffache.

Wie Unternehmensentwicklungsteams GitLab und Mattermost ChatOps nutzen, um die Entwicklung zu beschleunigen

Das Softwareentwicklungsunternehmen verbessert die Produktivität durch mehr Transparenz und Sichtbarkeit von Code- und Konfigurationsänderungen

Das in Maryland ansässige Software- und Datendienstleistungsunternehmen implementierte außerdem Mattermost in GitLab integriert, um die Produktivität und die nahtlose Zusammenarbeit zu verbessern. Sie führen Analysen durch, verwalten Daten und entwickeln Software für biomedizinische Organisationen auf der ganzen Welt.

GitLab wird von ihrem Team intensiv genutzt und sie sehen darin einen großen Vorteil in ihren DevOps-Workflows.

Außerdem haben sie GitLab und Mattermost zusammengeführt und Commits von GitLab über Webhooks in einem Feed in Mattermost zusammengefasst, sodass das Management aus der Vogelperspektive sehen kann, was an einem bestimmten Tag im Unternehmen passiert. Außerdem wurden Konfigurationsmanagement- und Versionskontrollaktualisierungen hinzugefügt, die Schnappschüsse verschiedener Änderungen bereitstellten, die im Laufe des Tages an der internen Infrastruktur und den Systemen vorgenommen wurden.

Das Team richtete außerdem separate „Heartbeat“-Kanäle ein, um Benachrichtigungen über App-Ereignisse zu versenden. Indem Sie diese Nachrichten an bestimmte Heartbeat-Kanäle senden, können Sie verhindern, dass Teammitglieder von Arbeitsgesprächen in regulären Kanälen abgelenkt werden, sodass Teammitglieder separat zu Fragen wechseln können, die in Heartbeat-Kanälen gepostet werden.

Einer der Hauptvorteile dieser Integration ist die Sichtbarkeit von Änderungen über Versionen hinweg und die Konfigurationsverwaltung in Echtzeit. Sobald Änderungen festgeschrieben und gepusht werden, wird in Echtzeit eine Benachrichtigung an den Heartbeat-Kanal gesendet. Jeder kann einen solchen Kanal abonnieren. Kein Wechseln zwischen Anwendungen mehr, kein Fragen von Teammitgliedern oder Nachverfolgen von Commits – alles geschieht in Mattermost, während Konfigurationsmanagement und Anwendungsentwicklung in GitLab erfolgen.

GitLab und Mattermost ChatOps erhöhen die Sichtbarkeit und Produktivität, um die Entwicklung zu beschleunigen

Mattermost kommt mit GitLab Omnibus-PaketEs bietet sofort einsatzbereite Unterstützung für GitLab SSO, vorgefertigte GitLab-Integrationen und PostgreSQL-Unterstützung sowie eine Prometheus-Integration, die Systemüberwachung und Aktionsmanagement ermöglicht Reaktion auf Vorfälle. Schließlich kann Mattermost jetzt mit bereitgestellt werden GitLab Cloud Native.

DevOps-Teams hatten noch nie ein besseres Tool mit den Vorteilen von ChatOps. Installieren Sie GitLab Omnibus mit Mattermost und probieren Sie es selbst aus!

Das ist alles. Wie immer laden wir alle dazu ein kostenloses Webinar, wo wir die Merkmale der Interaktion zwischen Jenkins und Kubernetes untersuchen, Beispiele für die Verwendung dieses Ansatzes betrachten und die Beschreibung der Funktionsweise des Plugins und des Operators analysieren.

Source: habr.com

Kommentar hinzufügen