Course Outline
Dzień 1
Wprowadzenie
- DevOps - nowomowa czy kluczowa rola w projektach IT?
- Dlaczego GitLab CI/CD?
- GitLab vs. inne systemy CI/CD (CircleCI, Travis, TeamCity)
Przygotowanie do uruchomienia
- Architektura i logika rozwiązania z uwzględnieniem: GitLab / GitLab Runner
- Wymagania systemowe oraz sprzętowe
- Instalacja GitLab oraz GitLab CI
- Wstępna konfiguracja GitLab: projekt, użytkownicy, integracje, przygotowanie pod uruchomienie pierwszego Continuous Integration
Tuning i przygotowanie API
- Optymalizacja ustawień GitLab / GitLab CI: tips’n’tricks
- Przygotowanie API do wykorzystania w mechanizmach trigger
Pierwszy proces CI/CD
- Instalacja GitLab CI Runner, wymagania systemowe i sprzętowe
- Skonfigurowanie projektu do łączenia się z GitLab CI
- Uruchomienie typowego procesu: build -> test -> deploy
Dzień 2
Konstrukcja pliku konfiguracyjnego .gitlab-ci.yml
- Praktyczne przykłady pojęć:
- Environments & deployments
- Protected environments
- Job artifacts
- Deploy via Docker
- Zmienne możliwe do wykorzystania w pliku konfiguracyjnym YML
- Konstrukcje logiczne: only, except, when, alllow_failure, dependencies, retry
Trigger pipeline: jak wyzwalać zadania poprzez API?
Jak GitLab CI ułatwia życie programistom
- Obliczanie % pokrycia testami
- Status buildów w dokumentach MarkDown
- Wysyłanie statusów buildów w komunikatorze (na przykładzie Mattermost)
Zaawansowane możliwości GitLab CI
- AutoDevOps
- Klastry Kubernetes
- Deploy boards
- ChatOps
- Web terminal
Live case study
- build, test & deploy dla projektu działającego w oparciu o PHP/Magento, uruchomionego na środowisku wieloserwerowym, z założeniem zerowego downtime na czas deployu.
Requirements
Podstawowa umiejętność korzystania z GIT
Podstawowa umiejętność programowania, np. w języku PHP.
Testimonials
addressed subjects, test environment, website with materials
Krzysztof Basta, Robert Bosch Sp. z o.o
Practical use-cases, various examples of deployments/resources. Well built labs - a lot of tasks.
Krzysztof Basta, Robert Bosch Sp. z o.o
lost of hands on excercises (labs)
Seba - Krzysztof Basta, Robert Bosch Sp. z o.o
Topic and exercises
Sylwia - Krzysztof Basta, Robert Bosch Sp. z o.o
1) Dużo wiedzy, zarówno teorii i praktyki, można dopytać 2) Prowadzący dużo wie o temacie, w razie problemów szybko pomoże z debugiem
Jolanta Fabisiak, Orange Szkolenia Sp. z o.o.
Good way of leading the training
Dawid Karoński - Jolanta Fabisiak, Orange Szkolenia Sp. z o.o.
The trainer is very well prepared person with great knowledge.
Piotr Gołąbek - Jolanta Fabisiak, Orange Szkolenia Sp. z o.o.
The practical sections were well explained and demonstrated what was needed and why, this allowed us to get the most out of the training.
Ewa Dusza, Red Embedded Consulting Sp. z o.o.
Very knowledgable on the subject, lecturing was lacking but excellent answers to questions and real world examples.