continuous integration devops
Co to jest ciągła integracja w DevOps?
Do tej pory omówiliśmy część 1 i część 2 tego tematu w naszych poprzednich sesjach, a obecnie w części 3.
jaki jest klucz bezpieczeństwa sieci w routerze
Do drugiej części omawialiśmy aspekt ludzi i procesu DevOps, czyli współpracę i skupienie się na wspólnym celu, wspólnym nastawieniu i wspólnym myśleniu w zespole, które pomaga osiągnąć cele DevOps.
W naszym ostatnim tutorialu zdobyliśmy wiedzę na temat Jak rozwijać współpracę w DevOps .
Sprawdź => Kompletny przewodnik po DevOps
Ciągła integracja, ciągłe testowanie, ciągłe wdrażanie i ciągłe dostarczanie to główne techniczne aspekty DevOps.
WIDEO Część 3 Blok 1: Ciągła integracja- 12 minut 20 sekund
Transkrypcja:
W ostatnimczęść, poznaliśmy praktyki DevOps, dzięki którym dowiedzieliśmy się, które części zasad zwinnych są przyjmowane przez praktyki DevOps.
W jaki sposób cele DevOps są osiągane za pomocą tych zasad?
Przeanalizowaliśmy znaczenie kontroli wersji, automatyzacji i dostarczania niewielkich przyrostów wartości klientom oraz płynące z tego korzyści.
Czym jest współpraca w kontekście DevOps i jak to osiągamy?
Do tej pory rozmawialiśmy o ludziach i aspektach procesu DevOps, czyli o współpracy i skupieniu się na wspólnym celu i wspólnym sposobie myślenia oraz wspólnym myśleniu w zespole, które pomaga osiągnąć cele DevOps, teraz poznajmy kilka technicznych aspektów DevOps , co umożliwia wydanie DevOps.
Są to ciągła integracja, ciągłe dostarczanie i wdrażanie oraz ciągłe testowanie.
W ramach bloku 1 części 3 najpierw przestudiujmy „Continuous Integration”.
Co to jest ciągła integracja?
Ciągła integracja -> CI -> zestaw procesów -> Build pipeline / CI Pipeline
Ciągła integracja, w DevOps zwana w skrócie „CI”, to ważny proces lub zestaw procesów, który jest definiowany i wykonywany jako część potoku zwanego „Potokiem budowy” lub „Potokiem CI”.
Wiemy, że w praktyce DevOps mamy jedno narzędzie do kontroli wersji zarówno dla zespołu programistów, jak i zespołu operacyjnego, w którym kod każdego zostanie zdeponowany jako baza kodu głównego, co pozwala zespołowi pracować równolegle.
Tak więc ciągła integracja w DevOps to nic innego jak scalanie kodu poszczególnych programistów w główną kopię kodu do głównej gałęzi, w której utrzymywana jest kontrola wersji. Nie ma ograniczeń co do częstotliwości scalania kodu, które musi nastąpić w ciągu jednego dnia.
Gdy programista sprawdza w swoim kodzie kontrolę wersji, natychmiast rozpoczyna się proces uruchamiania CI.
najlepsze rozszerzenie przeglądarki Chrome Pop up Blocker
Proces CI obejmuje:
- Scalanie całego kodu Developerów do głównej linii,
- Wyzwalanie kompilacji,
- Kompilowanie kodu, budowanie i…. Na koniec
- Przeprowadzanie testu jednostkowego.
Tak więc ciągła integracja to proces scalania całego kodu programisty w centralnej lokalizacji i weryfikowania każdego z ich połączeń za pomocą zautomatyzowanej kompilacji i testów.
Aby technicznie wyjaśnić, co dzieje się podczas CI,
Będzie dostępny serwer do ciągłej integracji, który obsługuje Narzędzie CI , który stale obserwuje narzędzie kontroli wersji w celu zaewidencjonowania kodu i gdy tylko zostanie znalezione, uruchamia automatyczną kompilację, buduje i uruchamia testy jednostkowe wraz ze statyczną analizą kodu i podstawowym poziomem zautomatyzowanych testów bezpieczeństwa .
Różne narzędzia do przeprowadzania testów automatycznych, takie jak Jenkins, TestNG, NUnit do przeprowadzania testów jednostkowych, Sonar do przeprowadzania statycznej analizy kodu i wzmacniania do przeprowadzania testów bezpieczeństwa, wszystkie te narzędzia zostaną zintegrowane z potokiem CI .
Tak więc cały potok CI jest zautomatyzowanym procesem bez jakiejkolwiek ręcznej interwencji i działa w ciągu kilku sekund lub minut.
Tak więc główną zaletą CI jest szybka informacja zwrotna, którą programiści otrzymują w krótkim czasie.
- CI jest uruchamiany po sprawdzeniu kodu przez dewelopera i wyrzuceniu wyników w ciągu kilku sekund. Dzięki temu programiści mogą natychmiast dowiedzieć się, czy jego kod został pomyślnie zbudowany lub uszkodzony.
- Pozwala również programistom wiedzieć, czy jego kod został pomyślnie zintegrowany z kodem drugiej osoby lub czy jest uszkodzony, czy coś, co inny członek zespołu zrobił z inną częścią kodu źródłowego. Dlatego CI wykonuje szybszą analizę kodu i sprawia, że późniejsze połączenia są prostsze i wolne od błędów.
Tak więc CI to zautomatyzowany proces, w którym kompilacja jest wyzwalana przy każdym wpisaniu kodu, jest kompilowana, tworzy kompilację, a automatyczne testy jednostkowe są uruchamiane w kompilacji.
Możemy również nazwać CI jako COP lub proces sprawdzania, czy kod każdego w zespole jest dobrym lub prawidłowym kodem, czy nie, ponieważ proces CI natychmiast kompiluje i buduje przy każdym check-inie i generuje błędy, jeśli jest to zły kod, lub nie można go skompilować lub nie można przejść przez zautomatyzowane przypadki testów jednostkowych.
Jakie są zalety CI?
Przede wszystkim cały proces CI jest procesem zautomatyzowanym, a tym samym minimalizuje błąd ludzki, redukując długie, powodujące błędy, ręczne łączenie.
Dowolna liczba osób może sprawdzić swój kod, dowolną liczbę razy w ciągu dnia, bez czekania na zakończenie kodowania przez innych, czekania, aż zakończą odprawę i później. Tak więc CI usuwa zależność lub usuwa czas oczekiwania innych użytkowników.
Dzięki temu członkowie zespołu nie muszą czekać, aż pozostali członkowie zespołu zakończą odprawę, dzięki czemu mogą pracować równolegle.
Każde zgłoszenie po prostu nie kończy się na przejęciu kontroli wersji, ale natychmiast zostaje zakwalifikowane poprzez tworzenie kompilacji i automatyczne testy. Tak więc każde zaewidencjonowanie jest sprawdzane w samym katalogu głównym w celu dalszego przetwarzania.
Nie ma szans, by ktoś przegapił kod, ponieważ każdy kod jest wpisywany do kopii wzorcowej wraz ze znacznikiem czasu, a zatem odpowiednio zapisywany.
Cały proces kompilacji, budowania i testowania przebiega w ciągu kilku sekund, a zatem jest dość szybszy i szybszy oraz oszczędza dużo czasu, a tym samym pomaga osiągnąć cel DevOps, jakim jest szybsze dostarczanie w ciągu kilku godzin.
Ponieważ cały proces tworzenia i testowania trwa od kilku sekund do kilku minut, informacje zwrotne na temat kodu poszczególnych osób są bardzo szybkie i nie musimy biegać, aby dowiedzieć się, czyj kod zepsuł kompilację lub wywołał defekt, jak w przypadku każdego check-in - wyświetla informację o powodzeniu lub niepowodzeniu wskazującą obszar awarii w przypadku awarii.
Dzięki temu programiści mogą sporadycznie sprawdzać niewielką ilość kodu, może nawet jedną linię kodu, aby upewnić się, że jest wolny od błędów i daje programistę pewność, że ich kod jest dobry, a także nie psuje innych kod. W sumie to pomaga poprawić jakość kodu.
Zatrzymajmy się tutaj i przejdźmy do ciągłego dostarczania i ciągłego testowania w nadchodzących samouczkach wideo.
POPRZEDNIA samouczek | NEXT Tutorial
rekomendowane lektury
- Ciągłe dostarczanie w DevOps
- Ciągłe wdrażanie w DevOps
- Ciągłe testowanie w DevOps
- Jak rozwijać współpracę w zespołach DevOps
- Samouczek DevOps: Kompletny przewodnik po DevOps (ponad 25 samouczków)
- Podsumowanie samouczków wideo DevOps
- Współpraca w DevOps
- 10 najlepszych narzędzi do ciągłego testowania do testowania DevOps (lista 2021)