1. BusinessOperations ManagementPidev integratsioon ja pidev edastamine: CI / CD juurutamine ja sellest kasu saamine

Autor: Emily Freeman

DevOps-i kultuuri kasv on muutnud seda, kuidas arendajad tarkvara ehitavad ja tarnivad. Enne Agile mõtteviisi tekkimist määrati arendusmeeskondadele funktsioon, ehitati see üles ja unustati see siis ära. Nad viskasid koodi üle QA meeskonnale, kes siis vea tõttu selle tagasi viskas või teisaldas operatsiooni meeskonda. Operatsioonide ülesandeks oli koodi juurutamine ja tootmises hoidmine.

See protsess oli pehmelt öeldes kohmakas ja põhjustas üsna palju konflikte. Kuna meeskonnad eksisteerisid silos, oli neil vähe või puudus ülevaade teiste meeskondade toimimisest, sealhulgas nende protsessidest ja motivatsioonist.

CI / CD, mis tähistab pidevat integreerimist ja pidevat edastamist (või juurutamist), eesmärk on lõhkuda meeskondade vahel ajalooliselt eksisteerinud seinad ja algatada selle asemel sujuvam arendusprotsess.

Pideva integreerimise ja pideva edastamise eelised

CI / CD pakub palju eeliseid. CI / CD torustiku ehitamise protsess võib olla aeganõudev, lisaks nõuab see meeskonnalt ja juhtkonnalt sisseostmist.

Mõned CI / CD eelised hõlmavad järgmist:

  • Põhjalik automatiseeritud testimine: ka CI / CD kõige lihtsamaks rakendamiseks on vaja tugevat testikomplekti, mida saab koodiga võrrelda iga kord, kui arendaja paneb muudatused peaharule. Kiirendatud tagasiside ahel: arendajad saavad viivitamatut tagasisidet CI / CD abil. Automatiseeritud testid ja sündmuste integreerimine ebaõnnestuvad enne uue koodi ühendamist. See tähendab, et arendajad saavad arendustsüklit lühendada ja funktsioone kiiremini juurutada. Vähenenud inimestevaheline konflikt: protsesside automatiseerimine ja meeskondadevahelise hõõrdumise vähendamine julgustab tegema rohkem koostöökeskkonda, kus arendajad teevad seda, mida nad kõige paremini teevad: insenerilahendusi. Usaldusväärne juurutamisprotsess: igaüks, kes on reede pärastlõunal kasutusele võtnud, võib teile öelda, kui oluline on, et juurutamine sujuks. Pidev integreerimine tagab, et kood on hästi testitud ja toimib usaldusväärselt tootmislaadses keskkonnas, enne kui see kunagi lõpptarbijani jõuab.

Pideva integreerimise ja pideva edastamise rakendamine

CI / CD juured on paindlikud metoodikad. Peaksite mõtlema CI / CD juurutamisele iteratiivse protsessina. CI / CD versioonist võib kasu saada iga meeskond, kuid üldise filosoofia kohandamine sõltub suuresti teie praegusest tehnikakihist (teie kasutatavad keeled, raamistikud, tööriistad ja tehnoloogia) ja kultuurist.

Pidev integratsioon

Pidevat integratsiooni (CI) ühendavad meeskonnad vahetuvad nii sageli kui võimalik põhi- või arendusharu. CI kasutab tavaliselt integreerimisriista automaatsete testide loomise ja käivitamise kontrollimiseks uue koodi alusel.

CI protsess võimaldab meeskonna arendajatel töötada koodialuse samal alal, hoides muudatused minimaalsed ja vältides massilisi liitmiskonflikte.

Pideva integratsiooni rakendamiseks toimige järgmiselt.

  • Kirjutage iga funktsiooni jaoks automatiseeritud testid. See hoiab ära vigade levimise tootmiskeskkonda. CI-serveri seadistamine. Server jälgib muudatuste peahoidlat ja käivitab automaatseid teste, kui uusi käsklusi surutakse. Teie CI-server peaks suutma testid kiiresti läbi viia. Uuendage arendaja harjumusi. Arendajad peavad muudatused põhikoodide andmebaasi sageli uuesti ühendama. See ühendamine peaks toimuma vähemalt üks kord päevas.

Pidev kohaletoimetamine

Pidev edastamine on CI-st sammu võrra kõrgem, sest arendajad käsitlevad koodi kõiki muudatusi edastatavatena. Vastupidiselt pidevale juurutamisele peab vabastamise käivitama siiski inimene ja muudatust ei tohi lõpptarbijale kohe kätte anda.

Selle asemel on juurutamine automatiseeritud ja arendajad saavad oma koodi ühe nupuga ühendada ja juurutada. Tehes väikeseid, sageli edastatud iteratsioone, tagab meeskond, et nad saavad muudatuste hõlpsaks tõrkeotsinguks.

Pärast seda, kui kood on läbinud automatiseeritud testid ja ehituse, saab meeskond kasutada koodi ükskõik millisesse keskkonda, mille nad on täpsustanud, näiteks kvaliteedikontroll või etapisüsteem. Sageli vaatab eakaaslane koodi käsitsi üle, enne kui insener selle toote väljalaskeharuga liidab.

Pideva edastamise rakendamiseks toimige järgmiselt.

  • Teil on CI-s tugev alus. Automaatne testikomplekt peaks kasvama korrelatsioonis funktsioonide arendamisega ja iga kord, kui veast teatatakse, peaksite teste lisama. Automatiseerige väljalasked. Inimene algatab ikkagi juurutamise, kuid vabastamine peaks olema üheastmeline protsess - ühe nupuvajutusega. Mõelge funktsioonilippudele. Funktsioonide lipud peidavad konkreetsete kasutajate mittetäielikke funktsioone, tagades, et teie eakaaslased ja kliendid näevad ainult teie soovitud funktsioone.

Pidev juurutamine

Pidev juurutamine viib pideva kohaletoimetamise isegi pideva edastamisega sammu võrra kaugemale. Kõik muudatused, mis läbivad kogu tootmise vabastamistorustiku, võetakse kasutusele. See on õige: kood pannakse otse tootmisesse.

Pidev juurutamine välistab kasutuselevõtuprotsessis inimese sekkumise ja nõuab põhjalikult automatiseeritud testkomplekti.

Pideva juurutamise rakendamiseks toimige järgmiselt.

  • Säilitage tugev testimiskultuur. Testimist tuleks pidada arendusprotsessi põhiosaks. Dokumenteerige uued funktsioonid. Automatiseeritud väljaanded ei tohiks API dokumentatsiooni ületada. Kooskõlastada teiste osakondadega. Kaasake osakonnad, nagu turundus ja klientide edu, et tagada sujuv kasutuselevõtuprotsess.