Gitlab CI/CD - tečaj 35.000 rub. iz Slurma, trening, Datum: 28.11.2023.
Miscellanea / / November 28, 2023
CI/CD je praksa DevOps, ki avtomatizira postopke integracije in dostave ter vam omogoča redno izdajanje visokokakovostne programske opreme.
S CI/CD lahko potisnete spremembe v glavno vejo in ste prepričani, da bodo preizkušene in uvedene v produkcijo brez vašega sodelovanja.
CI bo samodejno zgradil programsko opremo, jo preizkusil in vas obvestil, če gre kaj narobe.
CD bo samodejno namestil spremembe kode na strežnike podjetja in izvedel dodatne teste.
S CI/CD ne izgubljate časa z iskanjem in odpravljanjem težav in se lahko osredotočite na razvoj novih funkcij.
Višji sistemski inženir, Wrike, bivši Slurm, bivši Southbridge
– 11+ let v IT in omrežjih, 7+ let v DevOps
– AWS Community graditelj in certificirani arhitekt
– Sovoditelj podcasta DevOps Kitchen Talks
– Večinoma deluje s ponudniki oblakov (najpogosteje AWS), IaC (Terraform), Kubernetes, Docker, CI\CD (GitLab in drugi) in drugimi orodji
Vsi tečaji potekajo v osebnem računu Slurm. Sami izbirate, kje in kdaj jih boste gledali. Po študiju vsake teme boste morali opraviti praktično nalogo na stojnicah.
Prvi 2 temi sta na voljo brezplačno v mini tečaju "Kaj je CI/CD?"
Kaj je CI/CD in katere težave rešuje ta tehnika?
- Zgodovinska referenca.
- Potreba po avtomatizaciji izdaj, testiranj in njihove ponovljivosti.
- Pospešite razvoj izdelkov.
- Poenotenje in zmogljivost za montažo izdelkov.
Splošno načelo delovanja CI/CD
Razumeti vlogo CI/CD v delovnih tokovih in kaj implementira Gitlab
- Metoda razvoja cevovoda.
- Cevovodi, zgradbe, artefakti.
- CI in CD (uvedba in dostava)
Vaja: hiter začetek z Gitlab CI.
Pregled sistemov CI
Spoznajte glavne akterje, ki ponujajo orodja CI/CD na trgu
- TravisCI, CircleCI.
- Github dejanja.
- Jenkins/TeamCity.
- Gitlab CI
Praksa: implementacija cevovoda python v CircleCI, Github Actions, Jenkins, Gitlab CI
Pregled, namestitev in konfiguracija Gitlaba
Ugotovite, iz katerih komponent je sestavljen Gitlab, naučite se zagnati strežnik Gitlab
- Kaj sestavlja Gitlab, katere funkcije in komponente ima?
- Kako namestiti Gitlab?
- Osnovne nastavitve sistema Gitlab.
Praksa: zagon strežnika Gitlab
Vaš prvi projekt v Gitlabu
Spoznajte priporočila za delo z Gitlabom po namestitvi: varnost in vzdrževanje
- Naš projekt ustvarimo v Gitlabu.
- Najboljše prakse (uporabniški računi, avtorizacija LDAP itd.).
Praksa: ustvarjanje preprostega cevovoda
Gitlab Runner in njegova konfiguracija
Ugotovite, kaj je tekač in kako se sproži
- Naloge in zmožnosti tekača.
- Katere vrste obstajajo in za katere primere so potrebne?
- Nastavitev tekača za projekt.
Praksa: nastavitev tekača Gitlab
Datoteka .gitlab-ci.yml
Naučite se sintaktičnih značilnosti opisa cevovoda Gitlab in glavnih funkcij
- Zakaj je potrebna ta datoteka, kaj je?
- Sintaksa, osnovni pristopi. CI Linter iz Gitlaba.
Praksa: Ustvarjanje naprednega cevovoda
Integracija Kubernetes
Ugotovite, kako se lahko Gitlab integrira s Kubernetesom, in se naučite, kako razmestiti aplikacijo znotraj gruče
- Pooblastilo v grozdu za tekače.
- Izvorna metoda integracije Gitlaba s Kubernetesom
Praksa: pisanje cevovoda za uvajanje aplikacije v Kubernetes prek Gitlaba
Napredne GitLab CI tehnike (in funkcije)
Spoznajte najbolj zapletene in zanimive funkcije v Gitlabu
- Vključi, predlogo.
- Delo s spremenljivkami.
- Pogoji za delo z odri.
- Stopnje odvisnosti in sočasnosti.
- Ukvarjanje z incidenti. Povratna in dinamična okolja.
- Dodajanje zmožnosti povrnitve v cevovod
Praksa: kontrolni seznam za priročne izrezke, ki so lahko uporabni v resničnih projektih
GitOps
Spoznajte pristop GitOps in kako ga je mogoče implementirati z uporabo Gitlab CI
- Model Push and Pull za cevovode CI/CD.
- ArgoCD.
Praksa: namestitev in uporaba ArgoCD
Varnost v CI/CD
Naučite se zaščititi svojo kodo in cevovode CI/CD z uporabo GitLab CI
- Skrivne spremenljivke.
- Preverjanje kode za varnost.
Praksa: naučite se integrirati GitLab CI s HashiCorp Vault
Popoln cevovod s Slurmom
Gradivo bomo utrdili v praksi in ustvarili Production-grade pipeline, ki bo lahko služil kot prototip za realne projekte
Pisanje pravega procesa CI/CD, pripravljenega za proizvodnjo, v GitLab CI