CI/CD implementálása Python projekten

PY-CI

CD pipeline kialakítása Python projekten, végén Docker és Kubernetes környezetbe telepítéssel

Képzési forma:
Képzés hossza:
3 nap (24 óra)
Képzés nyelve:
Magyar/Angol
2023.
március
21.
Normál
2023.
október
04.
Normál
Képzési forma:
Normál
Képzés hossza:
3 nap (24 óra)
Képzés nyelve:
Magyar/Angol
2023.
március
21.
2023.
október
04.

Ismertető

A képzés célja a Continuous Integration, Continuous Delivery fogalmainak bemutatása. Gyakorlati feladatként egy pipeline kerül létrehozásra egy Python projekthez. A forráskód GitHubon kerül eltárolásra. A képzés során egy library-t és egy alkalmazást is elkészítünk. Az alkalmazáshoz Docker image is készül, amit Kubernetes környezetbe telepítünk. A CI eszköz a Jenkins. A forráskód minőségellenőrzését SonarQube végzi. Az artifactok Nexus repository-ba kerülnek publikálásra.

Lehetőség van személyre szabott képzésre is, mely során az eszközök másra cserélhetőek.

  • Egy szoftverfejlesztési életciklus és a release folyamat kapcsolódó lépései: verziókezelés, fejlesztés, build, unit és integrációs tesztelés, kódminőség ellenőrzés, release-elhető artifact elkészítése, deploy különböző környezetekbe, stb.
  • Continuous Integration bemutatása, és az általa megoldott problémák
  • Continuous Delivery bemutatása, és az általa megoldott problémák
  • Continuous Deployment bemutatása
  • A CI/CD létrejöttének okai
  • Pipeline fogalma
  • Verziókezelés
  • Library és alkalmazás
  • Python projekt felépítése, setup.cfg, pyproject.toml
  • Függőségkezelés, pip, requirements.txt
  • Unit tesztek futtatása, tesztlefedettség (pytest, coverage)
  • Integrációs tesztek, adatbázis séma verziózás
  • Release, wheel
  • Feature branching
  • Feature flags
  • Szemantikus verziókezelés
  • Docker
  • E2E tesztek (Postman/Newman) Docker compose-zal
  • Jenkins architektúra, pipeline (Jenkinsfile), Blue Ocean graphical interface, build number használata, Docker használat
  • Statikus kódelemzés (pylint, flake8, mypy) , SonarQube, tesztlefedettség, Quality Profile, Quality Gate
  • Nexus Repository használata, Python artifactok (twine) és Docker image-ek deploy-olása, proxy és private repository-k
  • Dokumentáció generálása
  • Telepítés Kubernetes környezetbe

Biztonságos operációs rendszer és parancssor használat. Fejlesztési projektekben való részvétel.

Mivel a tananyagok egy része angol nyelvű, ezért alapfokú, dokumentumolvasás-szintű angol nyelvtudás szükséges. A képzés magyar nyelvű, magyar slide-ok alapján.