W tym odcinku znajdziesz odpowiedzi na pytania:
Czym jest CI?Dlaczego jest to ważne dla każdego zespołu programistycznego?Jakie są kluczowe elementy każdego CI?Gdzie trzymany jest kod?Czym są gałęzie?Jakie są dobre praktyki ciągłej integracji?Co z zakresu CI warto wiedzieć jako Scrum Master?Jakie pytania warto zadać jako Scrum Master zespołowi deweloperskiemu?Continuous Integration, CI, Ciągła IntegracjaRepozytorium Kodu, Code repository, RepoVersion Control, Kontrola WersjiGitLab, GitHub, BitbucketGałąź, branch, branching strategyGałąź główna, main, trunk, defaultCheckoutBuildWersjaKod źródłowy, zależności, artefakty, pliki konfiguracyjneMergeTesty automatyczneStatyczna analiza koduŚrodowisko produkcyjneBudowanie aplikacji lokalnieKod źródłowy, pliki konfiguracyjne, skrypty, biblioteki, zależności, artefakty - wszystko co jest potrzebne do zbudowania wersji aplikacji, jest w Waszym wspólnym repozytorium
Prosty sposób na sprawdzenie - jeśli na czystym komputerze odpalimy nasze repozytorium i zrobimy checkout, to czy uda nam się zbudować aplikację
Dokładaj swoje zmiany często i regularnie, najlepiej codziennieWprowadzenie zmiany powinno odpalać build i testy automatyczneZbudowanie wersji produkcyjnej powinno być możliwe tylko poprzez wspólne CI
Prosty check - czy zdarzyło się, że ktoś zbudował wersję lokalnie i wdrożył ją na produkcję?
Pytania, które może zadać SM:
Jak wygląda proces integrowania kodu, jaką mamy strategię zarządzania gałęziami?Ile mamy aktywnych gałęzi?Ile średnio “żyje” gałąź?Jak często merge’ujecie kod?Ile czasu zajmuje rozwiązania konfliktów przy merge'ach?Jakie testy są odpalane przy merge'u?Czy dana zmiana działa end-to-end, jak to sprawdziliście?Czy da się obejść pipeline’y i zbudować aplikację produkcyjną lokalnie. Kiedy ostatnim razem ktoś taką wersję wdrożył na produkcję?