Jak zespoły programistów przedsiębiorstw korzystają z GitLab i Mattermost ChatOps, aby przyspieszyć rozwój

Witam ponownie! W lutym OTUS uruchamia nowy kurs „CI/CD na AWS, Azure i Gitlab”. W oczekiwaniu na rozpoczęcie kursu przygotowaliśmy tłumaczenie przydatnych materiałów.

Pełen zestaw narzędzi DevOps, komunikator open source i ChatOps – jak tu się nie zakochać?

Nigdy wcześniej nie było większej presji na zespoły programistów niż obecnie, związanej z chęcią tworzenia produktów szybciej i wydajniej. Wzrost popularności DevOps był w dużej mierze wynikiem pokładanych w nim oczekiwań dotyczących przyspieszenia cykli programistycznych, zwiększenia elastyczności i pomocy zespołom w szybszym radzeniu sobie z problemami. Chociaż dostępność i kompleksowość narzędzi DevOps znacznie się poprawiła w ciągu ostatnich kilku lat, sam wybór najnowszych i najlepszych narzędzi nie gwarantuje płynnego i bezproblemowego cyklu życia oprogramowania.

Dlaczego GitLab

W ekosystemie o wykładniczo rosnącym wyborze i złożoności, GitLab zapewnia kompletną platformę DevOps typu open source, która może przyspieszyć cykle programistyczne, obniżyć koszty rozwoju i zwiększyć produktywność programistów. Od planowania i kodowania po wdrażanie i monitorowanie (i z powrotem), GitLab łączy wiele różnorodnych narzędzi w jeden otwarty zestaw.

Dlaczego Mattermost ChatOps

W Mattermost jesteśmy wielkimi fanami GitLab, dlatego Mattermost jest dostarczany z GitLab Omnibus i pracujemy nad tym, aby Mattermost działał łatwo z GitLab.

otwarta platforma Mattermost ChatOps pozwala dostarczać istotne informacje Twojemu zespołowi i podejmować decyzje dokładnie tam, gdzie toczy się rozmowa. W przypadku wystąpienia problemu przepływ pracy ChatOps może powiadomić odpowiednich członków zespołu, którzy wspólnie pracują nad rozwiązaniem problemu bezpośrednio w Mattermost.

ChatOps umożliwia interakcję z zadaniami CI/CD za pośrednictwem wiadomości. Obecnie w organizacjach wiele dyskusji, współpracy i rozwiązywania problemów przenosi się do komunikatorów, a możliwość wykonywania zadań CI/CD z wynikami przesyłanymi z powrotem do kanału może znacznie przyspieszyć przepływ pracy zespołu.

Mattermost + GitLab

Pełen zestaw narzędzi DevOps, komunikator open source i ChatOps – jak tu się nie zakochać? Dzięki GitLab i Mattermost programiści mogą nie tylko uprościć proces DevOps, ale także przenieść go do tego samego interfejsu czatu, w którym członkowie zespołu omawiają problemy, współpracują i podejmują decyzje.

Oto kilka przykładów tego, jak zespoły programistów korzystają razem z Mattermost i GitLab, aby zwiększyć produktywność za pomocą ChatOps.

Itk korzysta z GitLab i Mattermost, aby dostarczać kod na czas i sześciokrotnie zwiększa liczbę wdrożeń produkcyjnych rocznie
Itk z siedzibą w Montpellier we Francji opracowuje narzędzia i aplikacje, które pomagają rolnikom optymalizować procesy zbiorów, poprawiać jakość zbiorów i lepiej zarządzać ryzykiem.

Zaczęli używać GitLab około 2014 roku i używali głównie starszego narzędzia do czatu do codziennej pracy, przesyłania wiadomości i rozmów wideo. Jednak w miarę rozwoju firmy narzędzie nie skalowało się wraz z nią; nie było trwale przechowywanych i łatwych do znalezienia wiadomości, a praca zespołowa stawała się coraz trudniejsza. Zaczęli więc szukać alternatywy.

Wkrótce potem odkryli, że pakiet GitLab Omnibus był dostarczany w pakiecie z otwartą platformą do przesyłania wiadomości: Mattermost. Od razu pokochali prostą funkcjonalność udostępniania kodu, w tym automatyczne podświetlanie składni i pełną obsługę Markdown, a także łatwość dzielenia się wiedzą, wyszukiwanie wiadomości i współpracę całego zespołu nad pomysłami na opracowanie nowych rozwiązań zintegrowanych z GitLabem.

Przed przejściem do Mattermost członkowie zespołu nie mogli łatwo otrzymywać powiadomień o postępie prac rozwojowych. Chcieli jednak mieć możliwość wizualnego śledzenia projektów, łączenia żądań i wykonywania innych działań w GitLabie.

To właśnie wtedy Romain Maneski, programista z itk, zaczął pisać wtyczkę GitLab dla Mattermost, która później pozwoliła jego zespołowi subskrybować powiadomienia GitLab w Mattermost i otrzymywać powiadomienia o nowych problemach oraz prośby o recenzję w jednym miejscu.

Do chwili obsługuje wtyczki:

  • Codzienne przypomnieniaaby otrzymywać informacje o tym, które problemy i prośby o połączenie wymagają Twojej uwagi;
  • Powiadomienia – aby otrzymywać powiadomienia od Mattermost, gdy ktoś o Tobie wspomni, wyśle ​​Ci prośbę o recenzję lub przekaże Ci problem w GitLab.
  • Przyciski paska bocznego – Bądź świadomy liczby recenzji, nieprzeczytanych wiadomości, zadań i otwartych próśb o połączenie, które aktualnie masz, korzystając z przycisków na pasku bocznym Mattermost.
  • Subskrypcje projektów – użyj poleceń ukośnika, aby subskrybować ważne kanały i otrzymywać powiadomienia o nowych prośbach o połączenie lub problemach w GitLab.

Teraz cała jego firma korzysta zarówno z GitLaba, jak i Mattermost, aby przyspieszyć przepływ pracy za pomocą ChatOps. Dzięki temu byli w stanie szybciej dostarczać aktualizacje, co przełożyło się na trzykrotny wzrost liczby projektów i mikroserwisów, nad którymi pracował zespół oraz sześciokrotny wzrost liczby wdrożeń produkcyjnych w ciągu roku, a wszystko to przy jednoczesnym wzroście poziomu rozwoju i zespoły agronomów 5 razy.

Jak zespoły programistów przedsiębiorstw korzystają z GitLab i Mattermost ChatOps, aby przyspieszyć rozwój

Firma zajmująca się tworzeniem oprogramowania zwiększa produktywność dzięki większej przejrzystości i widoczności zmian w kodzie i konfiguracji

Firma z siedzibą w Maryland zajmująca się oprogramowaniem i usługami danych wdrożyła również Mattermost zintegrowany z GitLab, aby poprawić produktywność i bezproblemową współpracę. Wykonują analizy, zarządzają danymi i opracowują oprogramowanie dla organizacji biomedycznych na całym świecie.

GitLab jest często używany przez ich zespół i postrzegają jego użycie jako ogromną korzyść w przepływach pracy DevOps.

Połączyli także GitLab i Mattermost, agregując zatwierdzenia z GitLab w jeden kanał do Mattermost za pośrednictwem webhooków, umożliwiając kierownictwu uzyskanie widoku z lotu ptaka na to, co działo się w firmie danego dnia. Dodano także aktualizacje zarządzania konfiguracją i kontroli wersji, które zapewniały migawki różnych zmian wprowadzonych w ciągu dnia w infrastrukturze wewnętrznej i systemach.

Zespół utworzył także osobne kanały „Heartbeat” do wysyłania powiadomień o zdarzeniach w aplikacji. Wysyłając te wiadomości do określonych kanałów Heartbeat, możesz uniknąć odwracania uwagi członków zespołu od rozmów służbowych prowadzonych w zwykłych kanałach, umożliwiając członkom zespołu osobne przechodzenie do pytań zamieszczanych w kanałach Heartbeat.

Jedną z kluczowych korzyści tej integracji jest wgląd w zmiany pomiędzy wersjami i zarządzanie konfiguracją w czasie rzeczywistym. Gdy tylko zmiany zostaną zatwierdzone i wypchnięte, w czasie rzeczywistym wysyłane jest powiadomienie do kanału Heartbeat. Każdy może subskrybować taki kanał. Koniec z przełączaniem między aplikacjami, proszeniem członków zespołu lub śledzeniem zatwierdzeń – wszystko to jest w Mattermost, a zarządzanie konfiguracją i tworzenie aplikacji odbywa się w GitLab.

GitLab i Mattermost ChatOps zwiększają widoczność i produktywność, przyspieszając rozwój

W zestawie Mattermost Pakiet GitLab Omnibus, zapewniając gotową obsługę GitLab SSO, gotowe integracje GitLab i obsługę PostgreSQL, a także integrację z Prometheusem, która pozwala na monitorowanie systemu i zarządzanie działaniami reagowania na incydenty. Wreszcie Mattermost można teraz wdrożyć za pomocą Natywna chmura GitLaba.

Zespoły DevOps nigdy nie miały lepszego narzędzia z korzyściami, jakie ma do tej pory ChatOps. Zainstaluj GitLab Omnibus z Mattermost i wypróbuj sam!

To wszystko. Tradycyjnie zapraszamy wszystkich bezpłatne webinarium, gdzie przestudiujemy cechy interakcji pomiędzy Jenkinsem i Kubernetesem, rozważymy przykłady zastosowania tego podejścia oraz przeanalizujemy opis działania wtyczki i operatora.

Źródło: www.habr.com

Dodaj komentarz