Przejdź do treści

Flow releasowe

Opis procesu dzięki któremu Twoje zmiany w kodzie trafiają na środowisko produkcyjne.

Pull request do mastera

Na tym etapie, poza manualną weryfikacją kodu, odpalamy automaty mające sprawdzić czy kod spełnia określone warunki.

  • Czy projekt da się zbudować?
  • Czy wszystkie testy przechodzą?
  • Czy jakość kodu nie uległa pogorszeniu?

Jeśli wszystko przeszło prawidłowo i pull request został zmergowany, następuje automatycznie:

Commit w branchu master

Każdy commit poza ponownym odpaleniem (dla pewności) wcześniej wspomnianych automatów, dodatkowo

  • Buduje i aktualizuje obraz dockera na portalu DockerHub link do obrazu

Oznacza to, że obraz dockerowy na DockerHubie jest zawsze aktualny z kodem na branchu master.

Pull request master -> release

W tym kroku, poza tym, że ponownie odpalamy automaty do weryfikacji czy kod na pewno jest prawidłowy

  • Przeglądamy manualnie kod, żeby upewnić się że nie wrzucimy na produkcję czegoś nieprawidłowego. Teoretycznie podczas sprawdzania pull requesta powinny wyjść wszystkie błędy, jednak praktyka pokazuje że czasami lubi się tam coś prześlizgnąć, warto sprawdzać kod dwa razy

Jeśli zaakceptujemy pull requesta:

Commit w branchu release

Poza ponownym odpaleniem automatów weryfikujących kod

  • Odpalamy automat, który loguje się do serwera na którym działa Watchman, aktualizuje lokalną wersje obrazu dockerowego, a następnie podmienia ją z obecnie działającą

Dzięki takiemu rozwiązaniu, czas w którym bot jest fizycznie wyłączony jest na tyle krótki, że powinien być niezauważalny dla użytkownika.