Devops
DevOps CI/CD Mastery Quiz
Test your knowledge on DevOps and Continuous Integration/Continuous Deployment (CI/CD) with our comprehensive quiz. This quiz consists of 18 carefully crafted questions designed to challenge your understanding and expertise in this essential area of software development and operations.
Challenge yourself and discover:
- Key principles of DevOps
- Strategies for effective CI/CD
- Common practices and tools in the industry
- Feedback loops and value delivery frameworks
W czasie wdrażania CI/CD, zaraz po stworzeniu podstaw przepływu wdrożeniowego następnym najważniejszym celem jest:
Uruchomienie I stosowanie ciągłej integracji zmian
Uruchomienie szybkiego I niezawodnego testowania
Automatyzacja I uruchomienie dostarczania nowej wersji programu z małym ryzykiem wystąpienia poważnych problemów
Stworzenie podstaw przepływu wdrożeniowego
"Ciągłe dostarczanie" to rodzaj CI/CD w którym:
Zautomatyzowany jest niecały proces wdrażania na środowiska docelowe, a decyzja o wdrażaniu do testowania akceptacyjnego użytkowników jest podejmowana manualnie
Zautomatyzowane jest tylko testowanie
Zautomatyzowany jest cały proces wdrażania na środowiska docelowe
Zautomatyzowany jest niecały proces wdrażania na środowiska docelowe, a decyzja o wdrażaniu do klienta jest podejmowana manualnie
Niezależnie od przyjętej strategii zarządzania repozytorium z kodem, można skategoryzować następujące rodzaje gałęzi kodu:
Master, develop, test, stage
Subtree, submodule, origin, slave
Main, master, branch
Długo żyjące, krótko żyjące, chronione
W cyklu DevOps strumień informacji zwrotnej zawiera etapy:
Wdrażaj Monitoruj I Zbieraj informacje
Testuj, Planuj
Monitoruj I Zbieraj informacje, Planuj
Buduj, Planuj
W cyklu DevOps strumień dostarczania wartości zawiera etapy:
Buduj, Testuj, Wdrażaj
Zbieraj informacje, Planuj, Buduj
Planuj, Wdrażaj, Zbieraj informacje
Planuj, Wdrażaj, Monitoruj
Ciągłe Wdrażanie” to rodzaj CI/CD w którym:
Zautomatyzowany jest niecały proces wdrażania na środowiska docelowe, a decyzja o wdrażaniu do klienta jest podejmowana manualnie
Zautomatyzowany jest cały proces wdrażania na środowiska docelowe
Zautomatyzowany jest niecały proces wdrażania na środowiska docelowe, a decyzja o wdrażaniu do testowania akceptacyjnego użytkowników jest podejmowana manualnie
Zautomatyzowane jest tylko testowanie
Git „Fast forward" jest rodzajem łączenia gałęzi kodu, w którym
Commity z jednej gałęzi kodu zostają zapisane w obszarze tymczasowym, a następnie po przełączeniu na drugą gałąź, nałożone na drugą gałąź tak jakby oryginalnie były na niej dokonane.
Nakłada wybrane arbitralnie istniejące commity w jednym branchu, na drugi branch bez łączenia tych branchy.
Serię commitów z jednej gałęzi kompresuje się do 1 nowego commitu nałożonego na drugą gałąź
Jedna gałąź zawierała commit'y bezpośrednio przed commitami w drugiej gałęzi. Nie powstaje tzw.: merge commit.
Zwyczajowo główna gałąź kodu w repozytorium git ma nazwę:
Dewelop lub feature
Master lub main
Stage lub pre-prod
Release candidate (RC) lub QA
Spośród wymienionych niżej strategii Git'owych, najmniej złożoną jest:
GitLab flow
One flow
GitHub flow
Git flow
Jednym z głównych aspektów wyróżniających rozproszony system kontroli wersji „git” jest:
Trójstronna operacja merge
Używanie sigm do przyrostowego nanoszenia zmian
Dwustronna operacja merge
Używanie delt do przyrostowego nanoszenia zmian
Głównym powodem dla którego „przekazanie do klienta nowej wersji oprogramowania” bywa chaotyczne, problematyczne, a nierzadko katastrofalne jest:
Ponieważ zabrakło DevOpsów zespole
Ponieważ zabrakło tzw.: Release Managera, odpowiedzialnego za koordynację pomiędzy zespołami programistycznymi a klientem.
Ponieważ klient dostarczył niekompletną, wadliwą lub niepełną dokumentację środowiska wdrożeniowego, lub też nie dostarczył takowej w ogóle.
Ponieważ bardzo często jest to pierwszy moment, gdy możemy sprawdzić jak aplikacja zachowuje się na docelowym środowisku oraz z faktyczną ilością użytkowników oraz realnymi danymi (jakościowo I ilościowo).
Do najważniejszych praktyk „Ciągłej Integracji” DevOps należy:
Wszystkie odpowiedzi są poprawne
Każdy co tydzień dołącza swoje zmiany Automatyczne budowanie, Automatyczne samo-testowanie aplikacji, Testowanie w kopii środowiska produkcyjnego
żadna odpowiedź nie jest poprawna
Pojedyncze repozytorium z kodem. Automatyczne budowanie, Automatyczne samo-testowanie aplikacji, Limitowany dostęp do najnowszej wersji
Pojedyncze repozytorium z kodem, Scentralizowane budowanie, Automatyczne samo-testowanie aplikacji, Testowanie w kopii środowiska produkcyjnego
Pojedyncze repozytorium z kodem, Automatyczne budowanie, Automatyczne samo-testowanie aplikacji, Testowanie w kopii środowiska produkcyjnego
Prawidłówo wdrożona „Ciągła integracja”
Automatycznie przekazuje nową wersję oprogramowania bezpośrednio na środowisko produkcyjne/ do klienta
Pozwala uniknąć rozdziału zadań pomiędzy zespoły developerskie
Wszystkie odpowiedzi są poprawne
żadna odpowiedź nie jest poprawna
Doprowadza do zmniejszenia problemów z integracją I ich złożoności oraz szybszego wytwarzania bardziej spójnego oprogramowania
Obniża koszty wytwarzania oprogramowania oraz zmniejsza ilość potrzebnych osób
Metodyki DevOps skupiają się na połączeniu 4 domen:
Wytwarzanie oprogramowania, operacje IT, praktyki I narzędzia, filozofia I kultura pracy
Wytwarzanie oprogramowania, zarządzanie projektami, praktyki I narzędzie, filozofia I kultura pracy
Administracja komputerami, operacje IT, zarządzanie repozytoriami, filozofia I kultura pracy
Wytwarzanie oprogramowania, operacje IT. praktyki, narzędzia
Cykl DevOps można przedstawić jako:
Dwukierunkowy model współpracy pomiędzy wytwarzaniem oprogramowania a administracją systemami.
Dwukierunkowy model ze strumieniem dostarczania wartości I strumieniem informacji zwrotnej
Identyczny jak cykl wytwarzania oprogramowania w klasycznym ujęciu
Hierarchiczną strukturę w myśl zasady „dzieł I rządź”
Transformacja DevOps pozwala na:
Wytworzenie szybkiego I stabilnego strumienia wartości z sektora informatycznego
Zmniejszenie kosztów administracji infrastrukturą informatyczną
zmniejszenie kosztów wytwarzania oprogramowania
Dynamiczne zarządzanie szybkością wdrażania nowego oprogramowania
W CI/CD środowisko o nazwie „produkcja”:
Posiada dane takie jak środowisko produkcyjne
Jest przeznaczone do ostatecznego zatwierdzania przed wdrożeniem
bezpośredniego z niego korzystają użytkownicy
Posiada kompletne dane konieczne do testów różnego rodzaju
W CI/CD środowisko o nazwie „staging”:
Jest przeznaczone do ostatecznego zatwierdzania przed wdrożeniem
Znacznie różni się od środowiska wdrożeniowego
Posiada kompletne dane konieczne do testów różnego rodzaju
Posiada dane takie jak środowisko produkcyjne
{"name":"Devops", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Test your knowledge on DevOps and Continuous Integration\/Continuous Deployment (CI\/CD) with our comprehensive quiz. This quiz consists of 18 carefully crafted questions designed to challenge your understanding and expertise in this essential area of software development and operations.Challenge yourself and discover:Key principles of DevOpsStrategies for effective CI\/CDCommon practices and tools in the industryFeedback loops and value delivery frameworks","img":"https:/images/course8.png"}