Junior
Mis on pidev juurutamine (continuous deployment)?
sobes.tech AI
Vastus AI-lt
Pidev automaatne integreerimine ja tarnimine (CI/CD) — see on tarkvaraarenduse lähenemisviis, kus iga automatiseeritud testimisliin läbib ja kinnitatakse, ning automaatselt juurutatakse tootmiskeskkonda. Peamine erinevus Continuous Delivery-st — käsitsi kinnitamise sammu puudumine.
Peamised etapid:
- Commit: Arendaja teeb muudatused versioonikontrollisüsteemi (näiteks Git).
- Build: Automaatne artefakti loomine (pilt, pakett jms).
- Test: Automaatsete testide läbiviimine (üksustestid, integratsiooni-, funktsionaalsed, koormustestid jms.).
- Deploy: Kui kõik testid on edukalt läbitud, juurutatakse artefakt automaatselt töökeskkonda.
Peamised komponendid:
- Kõrge automatiseerimise tase.
- Usaldusväärne infrastruktuur.
- Continuous Integration (CI) ja Continuous Delivery (CD) praktikate kasutamine.
- Jälgimine ja logimine, et kiiresti avastada probleeme.
- Kiire tagasivõtt.
# Näide osalisest CI/CD pipeline'ist
stages:
- build
- test
- deploy
build_job:
stage: build
script:
- echo "Rakenduse ehitamine..."
- # Ehituskäsklused
test_job:
stage: test
script:
- echo "Testide läbiviimine..."
- # Testkäsklused
only:
- main # Ainult põhiharule
deploy_job:
stage: deploy
script:
- echo "Tootmisse juurutamine..."
- # Juurutamiskäsklused
when: on_success # Juurutada ainult, kui eelnevad etapid õnnestuvad
only:
- main
| Eelised | Puudused |
|---|---|
| Uute funktsioonide/paranduste kiire väljastamine | Kõrged nõuded testide kvaliteedile |
| TTM (Time To Market) vähendamine | Potentsiaalne risk soovimatute muudatuste juurutamisel |
| Riski vähendamine iga juurutamisega | Raskused küpse CI/CD protsessita juurutamisel |
| Kiire tagasiside kasutajatelt | Usaldusväärne monitooring ja taastamise vajadus |