Sobes.tech
Junior

Kas ir nepārtraukta izvietošana?

sobes.tech AI

Atbilde no AI

Nepārtraukta izvietošana (Continuous Deployment) ir programmatūras piegādes stratēģija, kurā katra koda izmaiņa, kas ir izgājusi cauri visiem automatizētā CI/CD procesa posmiem (būvēšana, testēšana), tiek automātiski izvietota ražošanas vidē bez cilvēka iejaukšanās.

Galvenās atšķirības no Nepārtrauktās piegādes (Continuous Delivery):

  • Nepārtraukta piegāde: Izmaiņas ir gatavas izvietošanai ražošanā, bet pats izvietošanas process prasa skaidru trigeri (parasti manuāli).
  • Nepārtraukta izvietošana: Izmaiņas automātiski tiek izvietotas ražošanā pēc visu testu veiksmīgas pārbaudes.

Priekšrocības:

  • Ātrāka funkcionalitātes izlaišana.
  • Īsāks atsauksmes cikls.
  • Riska samazināšana, bieži veicot mazākas izmaiņas.
  • Ātra kļūdu labošana ražošanas vidē.

Nepieciešamie nosacījumi:

  • Augsts automatizācijas līmenis testēšanā (vienības, integrācijas, pieņemšanas testi).
  • Uzticama infrastruktūra un automatizēta izvietošana.
  • Uzraudzības un brīdinājumu sistēma.
  • Spēja ātri atgriezt izmaiņas.

Piemērs CI/CD procesa soļiem ar nepārtrauktu izvietošanu:

  1. Izstrādātājs komitē kodu VCS (Git).
  2. Tiek aktivizēta būve (Jenkins, GitLab CI, GitHub Actions).
  3. Tiek veikti automātiskie testi (vienības, integrācijas).
  4. Tiek izveidots artefakts (Docker attēls, pakotne).
  5. Artefakts pāriet testēšanas stadijā staging vidē.
  6. Veiksmīgi pārbaudot visus testus, artefakts automātiski tiek izvietots ražošanas vidē.
  7. Tiek veikta pēc-izvietošanas pārbaude (health checks, smoke tests).
  8. Ražošanas vide tiek uzraudzīta kļūdu un veiktspējas dēļ.