Junior
Mi az a folyamatos telepítés (continuous deployment)?
sobes.tech MI
Válasz az MI-től
Ez egy megközelítés a szoftverfejlesztésben, ahol minden változtatás, amely automatizált tesztelési és jóváhagyási pipeline-on keresztül ment, automatikusan telepítésre kerül a gyártási környezetbe. A fő különbség a Continuous Delivery-hez képest az, hogy nincs manuális jóváhagyási lépés a gyártásba való telepítés előtt.
Főbb lépések:
- Commit: A fejlesztő elköveti a változtatásokat a verziókezelő rendszerbe (pl. Git).
- Build: Az artefakt automatikus összeállítása (kép, csomag stb.).
- Test: Automatikus tesztek futtatása (egység, integráció, funkcionális, terhelés stb.).
- Deploy: Ha minden teszt sikeresen lefut, az artefakt automatikusan telepítésre kerül a munkakörnyezetbe.
Kulcsfontosságú elemek:
- Magas szintű automatizálás.
- Megbízható infrastruktúra.
- Continuous Integration (CI) és Continuous Delivery (CD) gyakorlatok alkalmazása.
- Monitoring és naplózás a problémák gyors felismerése érdekében.
- Gyors visszaállítási lehetőség.
# Példa egy pipeline részletére a GitLab CI/CD-ben
stages:
- build
- test
- deploy
build_job:
stage: build
script:
- echo "Az alkalmazás építése..."
- # Építési parancsok
test_job:
stage: test
script:
- echo "Tesztelés..."
- # Teszt parancsok
only:
- main # Csak a fő ág esetén aktiválódik
deploy_job:
stage: deploy
script:
- echo "Telepítés a gyártási környezetbe..."
- # Telepítési parancsok
when: on_success # Csak akkor telepítsen, ha az előző szakaszok sikeresek
only:
- main
| Előnyök | Hátrányok |
|---|---|
| Gyors kiadású új funkciók/javítások | Magas tesztminőségi követelmények |
| Csökkenti a TTM-et (Time To Market) | Potenciális kockázat nem kívánt változtatások telepítésében |
| Minden telepítésnél csökkenti a kockázatot | Komplexitás bevezetése érett CI/CD folyamatok nélkül |
| Gyors visszacsatolás a felhasználóktól | Megbízható monitorozás és rollback képesség szükséges |