Gitlab CI/CD - kurssi 35 000 hieroa. Slurmilta, koulutus, Päivämäärä: 28.11.2023.
Miscellanea / / November 28, 2023
CI/CD on DevOps-käytäntö, joka automatisoi integrointi- ja toimitusprosessit ja mahdollistaa korkealaatuisten ohjelmistojen säännöllisen julkaisemisen.
CI/CD: llä voit siirtää muutoksia päähaaraan ja olla varma, että ne testataan ja otetaan käyttöön tuotantoon ilman osallistumistasi.
CI rakentaa ohjelmiston automaattisesti, testaa sitä ja ilmoittaa, jos jokin menee pieleen.
CD asentaa automaattisesti koodimuutokset yrityksen palvelimille ja suorittaa lisätestejä.
CI/CD: llä et tuhlaa aikaa ongelmien etsimiseen ja korjaamiseen, vaan voit keskittyä uusien ominaisuuksien kehittämiseen.
Vanhempi järjestelmäinsinööri, Wrike, entinen Slurm, entinen Southbridge
– 11+ vuotta IT- ja verkkoalalla, 7+ vuotta DevOps-alalla
– AWS-yhteisön rakentaja ja sertifioitu arkkitehti
– DevOps Kitchen Talks -podcast-avustaja
– Toimii pääasiassa pilvipalveluntarjoajien (useimmiten AWS), IaC: n (Terraform), Kubernetesin, Dockerin, CI\CD: n (GitLab ja muiden) ja muiden työkalujen kanssa
Kaikki tunnit tapahtuvat Slurmin henkilökohtaisella tilillä. Voit valita, missä ja milloin katsot niitä. Kunkin aiheen opiskelun jälkeen sinun on suoritettava käytännön tehtävä lavaosastolla.
Ensimmäiset 2 aihetta ovat saatavilla ilmaiseksi minikurssilla "Mikä on CI/CD?"
Mikä on CI/CD ja mitä ongelmia tämä tekniikka ratkaisee?
- Historiallinen viittaus.
- Tarve automatisoida julkaisut, testaus ja niiden toistettavuus.
- Nopeuttaa tuotekehitystä.
- Yhdistäminen ja tuotteiden kokoonpanokapasiteetti.
CI/CD-toiminnan yleinen periaate
Ymmärrä CI/CD: n rooli työnkuluissa ja mitä Gitlab toteuttaa
- Putkilinjan kehitysmenetelmä.
- Putket, rakenteet, esineet.
- CI ja CD (käyttöönotto ja toimitus)
Harjoitus: nopea aloitus Gitlab CI: n kanssa.
Yleiskatsaus CI-järjestelmiin
Opi tärkeimmistä toimijoista, jotka tarjoavat CI/CD-työkaluja markkinoilla
- TravisCI, CircleCI.
- Githubin toiminnot.
- Jenkins/TeamCity.
- Gitlab CI
Harjoittelu: Python-putkilinjan käyttöönotto CircleCI: ssä, Github Actionsissa, Jenkinsissä, Gitlab CI: ssä
Gitlabin yleiskatsaus, asennus ja konfigurointi
Ota selvää, mistä komponenteista Gitlab koostuu, opi käyttämään Gitlab-palvelinta
- Mistä Gitlab koostuu, mitä ominaisuuksia ja komponentteja siinä on?
- Kuinka asentaa Gitlab?
- Gitlab-järjestelmän perusasetukset.
Harjoitus: Gitlab-palvelimen käynnistäminen
Ensimmäinen projektisi Gitlabissa
Opi suosituksia Gitlabin kanssa työskentelyyn asennuksen jälkeen: turvallisuus ja ylläpito
- Luomme projektimme Gitlabissa.
- Parhaat käytännöt (käyttäjätilit, LDAP-valtuutus jne.).
Harjoittelu: yksinkertaisen putkilinjan luominen
Gitlab Runner ja sen kokoonpano
Ota selvää, mikä juoksija on ja miten ne laukaistaan
- Juoksijan tehtävät ja kyvyt.
- Mitä tyyppejä on olemassa ja mihin tarkoituksiin niitä tarvitaan?
- Runnerin asettaminen projektille.
Harjoitus: Gitlab runnerin asettaminen
Tiedosto .gitlab-ci.yml
Opi Gitlab-putkilinjan kuvauksen syntaktiset ominaisuudet ja pääominaisuudet
- Miksi tätä tiedostoa tarvitaan, mikä se on?
- Syntaksi, peruslähestymistavat. CI Linter Gitlabilta.
Harjoitus: Kehittyneen putkilinjan luominen
Kubernetes integraatio
Ota selvää, kuinka Gitlab voi integroitua Kubernetesiin, ja opi ottamaan sovellus käyttöön klusterin sisällä
- Valtuutus klusterissa juoksijoille.
- Alkuperäinen menetelmä integroida Gitlab Kubernetesiin
Harjoitus: prosessin kirjoittaminen sovelluksen käyttöönottoa varten Kubernetesissa Gitlabin kautta
Edistyneet GitLab CI -tekniikat (ja ominaisuudet)
Opi Gitlabin monimutkaisimmat ja mielenkiintoisimmat toiminnot
- Sisällytä, mallinnus.
- Työskentely muuttujien kanssa.
- Edellytykset työskentelylle vaiheiden kanssa.
- Vaiheiden riippuvuudet ja samanaikaisuus.
- Tapausten käsittely. Palautus ja dynaamiset ympäristöt.
- Palautusominaisuuden lisääminen putkilinjaan
Käytäntö: tarkistuslista kätevistä katkelmista, joista voi olla hyötyä todellisissa projekteissa
GitOps
Opi GitOps-lähestymistavasta ja kuinka se voidaan toteuttaa Gitlab CI: n avulla
- Push and Pull -malli CI/CD-putkistoja varten.
- ArgoCD.
Harjoittelu: ArgoCD: n asennus ja käyttö
Suojaus CI/CD: ssä
Opi suojaamaan koodisi ja CI/CD-putkistot GitLab CI: n avulla
- Salaiset muuttujat.
- Koodin turvallisuuden tarkistaminen.
Harjoittele: opi integroimaan GitLab CI HashiCorp Vaultin kanssa
Täydellinen putkisto Slurmilla
Kokoamme materiaalin käytännössä ja luomme tuotantotason putkilinjan, joka voi toimia prototyyppinä todellisille projekteille
Todellisen tuotantovalmis CI/CD-prosessin kirjoittaminen GitLab CI: ssä