CI/CD s Jenkinsom - kurz 35 000 rub. zo Slurmu, tréning 8 lekcií, Termín 28.11.2023.
Rôzne / / November 28, 2023
Ide o kurz so zameraním na praktické využitie Jenkinsa. Bude obsahovať veľa príkladov z mojej osobnej praxe.
Poďme od jednoduchého k zložitému. Najprv sa pozrieme na oblasti použitia Jenkins a rôznych typov potrubí, potom sa pozrieme na Jenkins Shared Library a pozrieme sa na integráciu s Kubernetes.
Mojím cieľom je podeliť sa o svoje skúsenosti a pomôcť vám vyhnúť sa chybám, ktoré som urobil na začiatku svojej cesty.
Tento kurz prehĺbi vaše znalosti o práci s Jenkinsom. Všetko, čo preberieme počas tréningu, môžete ihneď uviesť do praxe.
Základy CI/CD
Dozviete sa, akú problémovú oblasť môže CI/CD vyriešiť. S funkcionalitou CI/CD budete môcť porovnať aktuálne problémy vo svojej práci.
teória:
- História CI/CD
- Nutnosť použitia, opakovateľnosť zostáv
- Slučka spätnej väzby
- Entropia bez automatizácie (ľudské chyby)
- Osvedčené postupy
- Ako to nerobiť
Základy Jenkinsa
Pochopíte logiku architektonických rozhodnutí iných ľudí a pochopíte štruktúru adresárov v Jenkins. Naučte sa nainštalovať Jenkins a vykonať základnú konfiguráciu.
teória:
- Aké problémy rieši Jenkins?
- Architektúra najvyššej úrovne – master-slave
- Štruktúra adresára v hlavnom serveri Jenkins (poverenia, pracovný priestor, protokoly)
- Inštalácia servera v systéme Linux (centos)
- Rôzne možnosti spustenia Linuxu v Dockeri
Cvičenie:
- Inštalácia a konfigurácia servera Jenkins pomocou ktorejkoľvek z metód uvedených v lekcii
Jenkinsova administratíva
Dozviete sa, ako nainštalovať pluginy a vykonať základnú konfiguráciu, pridať ďalšie pracovné uzly a nakonfigurovať konfiguračné nástroje. Pochopíte, ako vytvoriť poverenia a rozlišovať prístupové práva v Jenkins.
teória:
- Pridanie otrokárskych agentov
- Práca s nástrojmi
- Bezpečnosť v Jenkins
- Metódy vymedzenia práv
- Prečo potrebujeme pluginy a možnosti ich inštalácie?
Cvičenie:
- Inštalácia doplnku a nastavenie ďalších nástrojov. Pridanie tokenu GitLab do poverení.
Nasadenie (2 lekcie)
Naučíte sa, ako zvoliť správny typ potrubia na organizáciu procesu CI/CD, nastaviť pracovné prostredie na vývoj a testovanie potrubia. Pochopíte, ako vytvoriť úlohu s parametrami, freestyle job, deklaratívny pipeline, scripted pipeline.
teória:
- Typy potrubí
- VScode + IdeaIJ
- Aktívne reaktívne + rozšírený výber s groove skriptami
Cvičenie:
- Vytvorenie potrubia
Integrácia s Jenkinsom
Dozviete sa, ako nastaviť integráciu pipeline so SAST Sonarqube a notifikáciu prostredníctvom e-mailu, telegramu a Slacku.
teória:
- Integrácia so Sonarqube: čo to je a prečo?
- Integrácia s jforg: čo to je a prečo?
- Spôsoby oznamovania výsledkov realizácie potrubia
Cvičenie:
- Nastavenie kanála s odosielaním výsledkov
Vývoj v Jenkins
Naučíte sa oblasti použitia Jenkins Shared Library a Jenkins Template Engine a naučíte sa vytvárať jednoduché JSL.
teória:
- Pozrime sa na dva prístupy na príkladoch:
- Jenkins Shared Library a Jenkins Template Engine
Cvičenie:
- Vytvorenie jednoduchej Jenkinsovej zdieľanej knižnice
Najlepšie postupy
Naučíte sa, ako nastaviť pipeline pomocou Blue Ocean a vytvoriť konfiguráciu Jenkins As a Code.
teória:
- Spôsob DevOps na uloženie konfigurácie Jenkins
Cvičenie:
- Nastavenie potrubia pomocou Blue Ocean
- Vytvorenie konfigurácie ako kódu a inštalácia Jenkinsa z nej
Jenkins na Kubernetes
Dozviete sa, ako nastaviť integráciu Jenkins a Kubernetes. Pochopíte, ako nakonfigurovať kanál na používanie dynamických agentov v Kubernetes.
teória:
- Integrácia Jenkins a Kubernetes
Cvičenie:
- Nastavenie integrácie Kubernetes
- Nastavenie potrubia pomocou dynamických agentov
Príprava na skúšku
Zvážte niekoľko možností úloh, ktoré môžu byť súčasťou pohovorov.
Záverečná úloha
Dostanete 2-3 úložiská (frontend a backend). Úlohou je vypracovať CI/CD proces. Úloha pomôže určiť úroveň rastu zručností.