Gitlab CI/CD - kurz 35 000 rub. ze Slurmu, školení, Datum: 28. listopadu 2023.
Různé / / November 28, 2023
CI/CD je postup DevOps, který automatizuje integrační a dodací procesy a umožňuje vám pravidelně vydávat vysoce kvalitní software.
S CI/CD můžete změny poslat do hlavní větve a mít jistotu, že budou otestovány a nasazeny do produkce bez vaší účasti.
CI automaticky vytvoří software, otestuje jej a upozorní vás, pokud se něco pokazí.
CD automaticky nainstaluje změny kódu na servery společnosti a spustí další testy.
S CI/CD neztrácíte čas hledáním a opravou problémů a můžete se soustředit na vývoj nových funkcí.
Senior systémový inženýr, Wrike, ex-Slurm, ex-Southbridge
– 11+ let v IT a sítích, 7+ let v DevOps
– AWS Community builder a certifikovaný architekt
– Spoluhostitel podcastu DevOps Kitchen Talks
– Pracuje především s cloudovými poskytovateli (nejčastěji AWS), IaC (Terraform), Kubernetes, Docker, CI\CD (GitLab a další) a dalšími nástroji
Všechny lekce probíhají na osobním účtu Slurm. Sami si zvolíte, kde a kdy je budete sledovat. Po prostudování každého tématu budete muset splnit praktický úkol na stáncích platformy.
První 2 témata jsou k dispozici zdarma v minikurzu „Co je CI/CD?“
Co je CI/CD a jaké problémy tato technika řeší?
- Historický odkaz.
- Potřeba automatizovat vydání, testování a jejich opakovatelnost.
- Urychlit vývoj produktů.
- Unifikace a kapacita pro montáž výrobků.
Obecný princip fungování CI/CD
Pochopte roli CI/CD v pracovních postupech a co Gitlab implementuje
- Metoda vývoje potrubí.
- Potrubí, stavby, artefakty.
- CI a CD (rozmístění a dodání)
Cvičení: rychlý start s Gitlab CI.
Přehled CI systémů
Seznamte se s hlavními hráči, kteří nabízejí nástroje CI/CD na trhu
- TravisCI, CircleCI.
- Akce Github.
- Jenkins/TeamCity.
- Gitlab CI
Cvičení: implementace python pipeline v CircleCI, Github Actions, Jenkins, Gitlab CI
Přehled, instalace a konfigurace Gitlabu
Zjistěte, z jakých komponent se Gitlab skládá, naučte se provozovat Gitlab server
- Z čeho se Gitlab skládá, jaké má funkce a komponenty?
- Jak nainstalovat Gitlab?
- Základní nastavení systému Gitlab.
Cvičení: spuštění serveru Gitlab
Váš první projekt v Gitlabu
Naučte se doporučení pro práci s Gitlabem po instalaci: zabezpečení a údržba
- Náš projekt vytváříme v Gitlabu.
- Best Practices (uživatelské účty, autorizace LDAP atd.).
Cvičení: vytvoření jednoduchého potrubí
Gitlab Runner a jeho konfigurace
Zjistěte, co je to běžec a jak se spouští
- Úkoly a schopnosti běžce.
- Jaké typy existují a pro jaké případy jsou potřeba?
- Nastavení běžce pro projekt.
Cvičení: nastavení Gitlab runner
Soubor .gitlab-ci.yml
Naučte se syntaktické vlastnosti popisu potrubí Gitlab a hlavní funkce
- Proč je tento soubor potřebný, co to je?
- Syntaxe, základní přístupy. CI Linter od Gitlabu.
Cvičení: Vytvoření pokročilého potrubí
Integrace Kubernetes
Zjistěte, jak se může Gitlab integrovat s Kubernetes, a zjistěte, jak nasadit aplikaci uvnitř clusteru
- Autorizace v clusteru pro běžce.
- Nativní metoda integrace Gitlabu s Kubernetes
Cvičení: psaní kanálu pro nasazení aplikace v Kubernetes přes Gitlab
Pokročilé techniky GitLab CI (a funkce)
Naučte se nejsložitější a nejzajímavější funkce v Gitlabu
- Zahrnout, šablony.
- Práce s proměnnými.
- Podmínky pro práci s etapami.
- Etapové závislosti a souběžnost.
- Řešení incidentů. Rollback a dynamická prostředí.
- Přidání možnosti vrácení zpět do kanálu
Cvičení: kontrolní seznam pro praktické úryvky, které mohou být užitečné ve skutečných projektech
GitOps
Přečtěte si o přístupu GitOps a o tom, jak jej lze implementovat pomocí Gitlab CI
- Push and Pull model pro potrubí CI/CD.
- ArgoCD.
Cvičení: instalace a použití ArgoCD
Zabezpečení v CI/CD
Naučte se, jak zabezpečit svůj kód a kanály CI/CD pomocí GitLab CI
- Tajné proměnné.
- Kontrola kódu kvůli bezpečnosti.
Cvičení: Naučte se integrovat GitLab CI s HashiCorp Vault
Perfektní potrubí se Slurmem
Zpevníme materiál v praxi a vytvoříme produkční potrubí, které může sloužit jako prototyp pro reálné projekty
Psaní skutečného produkčního procesu CI/CD v GitLab CI