Facebook - konwersja
Pobierz fragment

Automatyzacja metodyki DevOps za pomocą potoków CI/CD GitLaba. Buduj efektywne potoki CI/CD do weryfikacji, zabezpieczenia i wdrażania kodu, korzystając z rzeczywistych przykładów - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
11 czerwca 2024
Format ebooka:
PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
Pobierz fragment
79,00

Automatyzacja metodyki DevOps za pomocą potoków CI/CD GitLaba. Buduj efektywne potoki CI/CD do weryfikacji, zabezpieczenia i wdrażania kodu, korzystając z rzeczywistych przykładów - ebook

Obecnie zasady i wzorce DevOps pozwalają na ograniczenie ryzyka związanego z budowaniem, zabezpieczaniem i wdrażaniem kodu. Programiści i wdrożeniowcy wiedzą, że zapewnienie funkcjonalnej poprawności, efektywności i bezpieczeństwa kodu jest czasochłonne i skomplikowane. Dużym ułatwieniem w tym zakresie mogą być potoki CI/CD GitLaba.

Dzięki tej książce poznasz od podstaw Gita i GitLaba. Dowiesz się, jak skonfigurować runnery GitLaba, a także jak tworzyć i konfigurować potoki dla różnych etapów cyklu rozwoju oprogramowania. Poznasz zasady interpretacji wyników potoków w GitLabie. Nauczysz się też wdrażania kodu w różnych środowiskach i korzystania z wielu zaawansowanych funkcji, takich jak łączenie GitLaba z Terraformem, klastrami Kubernetes czy uruchamianie i poprawa wydajności potoków. Skorzystasz ponadto z licznych przykładów i studiów przypadków, dzięki którym za pomocą potoków CI/CD zautomatyzujesz wszystkie etapy DevOps do budowy i wdrażania kodu o wysokiej jakości.

Najciekawsze zagadnienia:

  • podstawy Gita, GitLaba i DevOps
  • tworzenie, przeglądanie i uruchamianie potoków CI/CD GitLaba
  • weryfikacja, zabezpieczanie i wdrażanie kodu za pomocą potoków CI/CD GitLaba
  • runnery, DAG-i i logika warunkowa GitLaba
  • najlepsze praktyki i metody rozwiązywania problemów w potokach CI/CD GitLaba
  • przykłady cykli życia procesów rozwoju oprogramowania

DevOps. Wdrażaj zmiany szybko i bezpiecznie!

Spis treści

O autorach

O recenzentach

Przedmowa

Część 1. Rozpoczęcie pracy z DevOps, Gitem i GitLabem

  • Rozdział 1. Zrozumienie okresu przed DevOps
    • Wprowadzenie do aplikacji internetowej Hats for Cats
    • Ręczne tworzenie i weryfikacja kodu
      • Ręczne budowanie kodu
      • Ręczna weryfikacja kodu
      • Dodatkowe wyzwania związane z weryfikacją kodu
    • Ręczne przeprowadzanie testów bezpieczeństwa kodu
      • Statyczna analiza kodu
      • Wykrywanie tajemnic
      • Analiza dynamiczna
      • Skanowanie zależności
      • Skanowanie kontenerów
      • Podsumowanie ręcznych testów bezpieczeństwa
    • Ręczne pakowanie i wdrażanie kodu
      • Skanowanie zgodności licencji
      • Wdrażanie oprogramowania
    • Problemy z ręcznymi praktykami w cyklu życia oprogramowania
    • Rozwiązywanie problemów za pomocą DevOps
      • Jak GitLab implementuje DevOps
    • Podsumowanie
  • Rozdział 2. Ćwiczenie podstawowych poleceń Gita
    • Wymagania techniczne
    • Dlaczego korzystać z Gita?
      • Czym jest system kontroli wersji?
      • Jakie problemy rozwiązuje system kontroli wersji?
      • Dlaczego Git jest popularny
      • Wady Gita
    • Zatwierdzanie kodu, aby zachować go w bezpiecznym miejscu
      • Wyłączenie plików z repozytorium
    • Oznaczanie zatwierdzeń w celu identyfikowania wersji kodu
    • Tworzenie gałęzi, aby rozwijać kod w oddzielnym miejscu
      • Komendy Gita do zarządzania gałęziami
      • Obsługa konfliktów scalania
    • Synchronizacja lokalnych i zdalnych kopii repozytoriów
      • "Złote" repozytorium
      • Konfigurowanie zdalnych repozytoriów
      • Wypychanie zatwierdzeń
      • Pobieranie fetch
      • Pobieranie pull
    • Dodatkowe źródła do nauki Gita
    • Podsumowanie
  • Rozdział 3. Zrozumienie komponentów GitLaba
    • Wymagania techniczne
    • Kładziemy nacisk na "dlaczego" bardziej niż na "jak"
    • Wprowadzenie do platformy GitLaba
      • Czym jest GitLab?
      • Jaki problem rozwiązuje GitLab?
      • Etapy weryfikacji, zabezpieczania i wydawania
    • Organizowanie pracy w projekty i grupy
      • Przykład - organizacja pracy nad projektem Hats for Cats
    • Śledzenie pracy za pomocą zgłoszeń
      • Struktura zgłoszenia w GitLabie
      • Rodzaje zadań, które mogą być reprezentowane przez zgłoszenia
      • Etykiety
      • Schematy pracy ze zgłoszeniami
    • Bezpieczne edytowanie plików za pomocą zatwierdzeń, gałęzi i próśb o scalenie
      • Historia zatwierdzeń
      • Łączenie jednej gałęzi Gita z drugą
      • Trzej amigos - zgłoszenia, gałęzie i prośby o scalenie
      • Kiedy dwóch amigos wystarcza
      • Czym różnią się zgłoszenia i prośby o scalenie?
    • Korzystanie z praktyk DevOps za pomocą GitLab Flow
    • Podsumowanie
  • Rozdział 4. Opis struktury potoku CI/CD GitLaba
    • Wymagania techniczne
    • Definicje pojęć: "potok", "CI" i "CD"
      • Czym jest potok
      • Definiowanie jednego potoku na projekt
      • Wyjaśnienie różnych znaczeń terminu "potok"
      • Przeglądanie listy potoków
      • CI - dowiedz się, czy Twój kod jest dobry
      • CD - dowiedz się, gdzie powinien trafić Twój kod (i umieść go tam)
      • GitLab Runnery
    • Elementy potoku - etapy, zadania i polecenia
      • Etapy
      • Zadania
      • Polecenia
      • Łączenie elementów potoku
    • Uruchamianie potoków CI/CD GitLaba
      • Potoki dla gałęzi (ang. branch pipelines)
      • Potoki dla tagów Gita
      • Inne rodzaje potoków
      • Pomijanie potoków
    • Odczytywanie statusów potoków CI/CD GitLaba
    • Konfigurowanie potoków CI/CD GitLaba
    • Podsumowanie

Część 2. Automatyzacja etapów DevOps przy użyciu potoków CI/CD GitLaba

  • Rozdział 5. Instalacja i konfiguracja GitLab Runnerów
    • Wymagania techniczne
    • Definicja GitLab Runnerów i ich związek z CI/CD
      • GitLab Runner to aplikacja open source napisana w języku Go
      • GitLab Runner uruchamia zadania CI/CD określone w pliku .gitlab-ci.yml
    • Architektura runnera i obsługiwane platformy
      • GitLab Runner jest obsługiwany przez większość platform i architektur
      • Runnery mogą być specyficzne dla projektu, grupy lub współdzielone
      • Każdy runner ma zdefiniowanego executora
      • Tagi runnera określają, które runnery mogą wykonywać konkretne zadania
    • Instalacja agenta runnera
      • Instalacja GitLab Runnera
      • Rejestracja runnera w GitLabie
    • Rozważania dotyczące różnych typów runnerów i executorów
      • Rozważania dotyczące wydajności
      • Rozważania dotyczące bezpieczeństwa
      • Rozważania dotyczące monitorowania
    • Podsumowanie
  • Rozdział 6. Weryfikacja kodu
    • Wymagania techniczne
    • Budowanie kodu w potoku CI/CD
      • Kompilacja kodu Java za pomocą javac
      • Kompilacja Javy przy użyciu narzędzia Maven
      • Kompilacja języka C przy użyciu narzędzia GNU Compiler Collection (GCC)
      • Przechowywanie skompilowanego kodu jako artefaktów
    • Sprawdzanie jakości kodu w potoku CI/CD
      • Włączanie funkcji jakości kodu
      • Przeglądanie wyników funkcji jakości kodu
    • Uruchamianie automatycznych testów funkcjonalnych na etapie dostarczania (CI/CD)
      • Włączanie automatycznych testów funkcjonalnych
      • Przeglądanie wyników automatycznych testów funkcjonalnych
    • Testy fuzzingowe w potoku CI/CD
      • Architektura i przepływ pracy testowania fuzzingowego
      • Przepływ pracy testowania fuzzingowego
      • Przeglądanie wyników testów fuzzingu
      • Dodatkowe uwagi dotyczące testowania fuzzingu
      • Testowanie fuzzingu z korpusem
    • Sprawdzanie dostępności w procesie CI/CD
      • Dodawanie testów dostępności
      • Przeglądanie wyników testów dostępności
    • Dodatkowe sposoby weryfikacji kodu
      • Pokrycie kodu (ang. code coverage)
      • Testowanie wydajności przeglądarki (ang. browser performance testing)
      • Testowanie wydajności obciążeniowej (ang. load performance testing)
    • Podsumowanie
  • Rozdział 7. Zabezpieczanie kodu
    • Wymagania techniczne
    • Zrozumienie strategii skanowania bezpieczeństwa GitLaba
      • GitLab korzysta ze skanerów open source
      • Skanery są dostarczane jako obrazy Dockera
      • Niektóre skanery używają różnych analizatorów dla różnych języków programowania
      • Podatności nie zatrzymują potoku
      • Wyniki pojawiają się w trzech różnych raportach
      • Potoki mogą korzystać ze skanerów innych niż GitLab
    • Korzystanie z SAST-a do skanowania kodu źródłowego pod kątem podatności
      • Włączanie SAST-a
      • Konfigurowanie SAST-a
      • Przeglądanie wyników SAST-a
    • Użycie wykrywania sekretów do znalezienia poufnych informacji w Twoim repozytorium
      • Zrozumienie działania wykrywania sekretów
      • Włączanie i konfigurowanie wykrywania sekretów
      • Przeglądanie wyników wykrywania sekretów
    • Korzystanie z DAST-a do wykrywania podatności w aplikacjach internetowych
      • Zrozumienie działania DAST-a
      • Włączanie i konfigurowanie DAST-a
      • Przegląd wyników DAST-a
    • Korzystanie ze skanowania zależności do wyszukiwania luk w zależnościach
      • Zrozumienie skanowania zależności
      • Włączanie i konfigurowanie skanowania zależności
      • Przeglądanie wyników skanowania zależności
    • Korzystanie ze skanowania kontenerów do wyszukiwania podatności w obrazach Dockera
      • Zrozumienie skanowania zależności
      • Włączanie i konfigurowanie skanowania kontenerów
      • Przeglądanie wyników skanowania kontenerów
    • Korzystanie z badania zgodności licencji do zarządzania licencjami zależności
      • Zrozumienie badania zgodności licencji
      • Włączanie i konfigurowanie badania zgodności z licencją
      • Przeglądanie wyników badania zgodności z licencją
    • Korzystanie ze skanowania IaC do wykrywania problemów w plikach konfiguracyjnych infrastruktury
      • Zrozumienie skanowania IaC
      • Włączanie i konfigurowanie skanowania IaC
      • Przeglądanie wyników skanowania IaC
    • Zrozumienie różnych rodzajów raportów bezpieczeństwa
    • Zarządzanie podatnościami związanymi z bezpieczeństwem
    • Integracja z zewnętrznymi skanerami bezpieczeństwa
    • Podsumowanie
  • Rozdział 8. Pakowanie i wdrażanie kodu
    • Wymagania techniczne
    • Przechowywanie kodu w rejestrze pakietów GitLaba w celu późniejszego wykorzystania
      • Lokalizacja rejestrów kontenerów i pakietów GitLaba
      • Rozpoczęcie pracy z rejestrem pakietów
      • Obsługiwane formaty pakietów
      • Uwierzytelnianie w rejestrze
      • Budowanie i publikowanie pakietów w rejestrze pakietów
      • Budowanie i przesyłanie pakietów do rejestru kontenerów
    • Przechowywanie kodu w rejestrach kontenerów i pakietów GitLaba w celu późniejszego wdrożenia
      • Korzystanie z obrazów z rejestru kontenerów
      • Wykorzystanie pakietów z rejestru pakietów
    • Wdrażanie w różnych środowiskach przy użyciu GitLab Flow
    • Wdrażanie w narzędziu review app w celu testowania
    • Wdrażanie w rzeczywistych środowiskach produkcyjnych
    • Wdrażanie w klastrze Kubernetes
      • Proces CI/CD
      • Podejście GitOps
    • Podsumowanie

Część 3. Następne kroki w doskonaleniu aplikacji za pomocą GitLaba

  • Rozdział 9. Poprawa szybkości i łatwości utrzymania potoku CI/CD
    • Przyspieszanie procesów za pomocą skierowanych grafów acyklicznych i architektury rodzic - dziecko
      • Jak utworzyć DAG w potoku CI?
    • Budowanie kodu dla wielu architektur
    • Kiedy i jak wykorzystywać pamięć podręczną lub artefakty?
      • Charakterystyka pamięci podręcznej
      • Charakterystyka artefaktów
      • Korzystanie z pamięci podręcznej
      • Korzystanie z artefaktów
      • Wykorzystywanie artefaktów jako zależności zadania
    • Redukowanie powtarzającego się kodu konfiguracyjnego za pomocą zakotwiczeń i słowa kluczowego extends
      • Zakotwiczenia
      • Słowo kluczowe extends:
      • Tagi referencji
    • Poprawa zarządzalności poprzez łączenie wielu potoków oraz wykorzystywanie potoków macierzystych i potomnych
      • Łączenie plików dla ułatwienia zarządzania
      • Użycie opcji include: w celu uzyskania możliwości ponownego wykorzystania
      • Dołączanie zdalnych zasobów
      • Wykorzystywanie potoków macierzystych
    • Zabezpieczanie i przyspieszanie zadań za pomocą kontenerów utworzonych w celu realizacji określonych zadań
      • Przykład kontenera utworzonego w celu realizacji określonego zadania
    • Podsumowanie
  • Rozdział 10. Poszerzanie zakresu potoków CI/CD
    • Wykorzystywanie potoków CI/CD do wykrywania problemów wydajnościowych
      • Jak zintegrować przeglądarkowe testy wydajnościowe?
      • Jak zintegrować testy obciążeniowe z użyciem narzędzia k6?
      • Korzystanie z flag funkcji umożliwiających wydawanie różnych aplikacji w zależności od decyzji biznesowych
      • Jak skonfigurować aplikację pod kątem flag funkcji?
    • Integracja narzędzi innych firm z potokami CI/CD
      • Tworzenie pliku Dockerfile dla kontenera narzędziowego
      • Automatyzacja procesu budowy kontenera
      • Skanowanie kontenerów
      • Wywoływanie narzędzia zewnętrznego
    • Wykorzystywanie potoków CI/CD do tworzenia aplikacji mobilnych
      • Wymagania
      • Fastlane
      • Fastlane - wdrożenie
      • Fastlane - automatyzacja testowania
    • Podsumowanie
  • Rozdział 11. Kompletny przykład
    • Wymagania techniczne
    • Konfiguracja środowiska
      • Tworzenie projektu w GitLabie
      • Planowanie pracy za pomocą zgłoszeń GitLaba
      • Konfiguracja lokalnego repozytorium Gita
    • Tworzenie kodu
      • Tworzenie gałęzi Gita
      • Tworzenie żądania MR
      • Zatwierdzanie i przesyłanie kodu
    • Tworzenie infrastruktury potoku
      • Tworzenie potoku
      • Tworzenie runnera
    • Weryfikacja kodu
      • Dodawanie testów funkcjonalnych do potoku
      • Dodawanie skanowania jakości kodu do potoku
      • Dodawanie testu typu fuzzing do potoku
    • Zabezpieczanie kodu
      • Dodawanie SAST-a do potoku
      • Dodawanie wykrywania sekretów do potoku
      • Dodawanie skanowania zależności do potoku
      • Dodawanie badania zgodności licencji do potoku
      • Integracja zewnętrznego skanera bezpieczeństwa z potokiem
    • Doskonalenie potoku
      • Korzystanie z DAG-a w celu przyspieszenia potoku
      • Podział potoku na kilka plików
    • Dostarczanie kodu do odpowiedniego środowiska
      • Wdrażanie kodu
    • Podsumowanie
  • Rozdział 12. Rozwiązywanie problemów i przyszłość GitLaba
    • Wymagania techniczne
    • Rozwiązywanie problemów i najlepsze praktyki dotyczące powszechnych problemów spotykanych w potokach CI/CD
      • Rozwiązywanie problemów związanych ze składnią i logiką CI/CD
      • Rozwiązywanie problemów z działaniem potoku i przypisaniem runnera
    • Zarządzanie infrastrukturą operacyjną przy użyciu GitOpsa
      • Użycie Terraforma do wdrażania i aktualizowania stanu infrastruktury
      • Użycie Ansible'a do zarządzania konfiguracjami zasobów
    • Przyszłe trendy
      • Automatyzacja stworzy więcej oprogramowania na większą skalę
      • Abstrakcja prowadzi do modeli biznesowych opartych na pojęciu "wszystko jako kod"
      • Skrócony czas cyklu rozwoju produktu pomoże zespołom wydawać lepsze oprogramowanie szybciej
    • Podsumowanie i kolejne kroki
Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-289-0776-8
Rozmiar pliku: 8,3 MB

BESTSELLERY

Kategorie: