A folyamatos integráció felfedezése

Befejezett

A folyamatos integráció (CI) az egyik legalapvetőbb DevOps-elem. Elősegíti az együttműködést, hozzájárul a kódminőséggel kapcsolatos problémák korai észleléséhez, és elősegíti az egyszerűsített fejlesztési folyamatot. Emellett a folyamatos teljesítés és üzembe helyezés alapjaként is szolgál. A ci-gyakorlatok alkalmazásával a mintaforgatókönyvben ismertetett szervezet képes lesz megszüntetni az alkalmazások létrehozásában és tesztelésében részt vevő manuális erőfeszítéseket, hatékonyan felgyorsítva a felhasználók számára történő kézbesítést. A CI előnyeinek teljes elismeréséhez ebben a leckében ismertetjük őket.

Mi a folyamatos integráció?

A folyamatos integráció a szoftvertárház egyedi frissítéseit követően automatikusan létrejön és teszteli a szoftver frissített verzióit. Az integrációs minta általában azt foglalja magában, hogy a fejlesztők lekéréses kérelmeken keresztül külön ágakban küldik el a módosításokat. A módosításokat kollektív felülvizsgálatnak vetik alá, és a sikeres eredményt feltételezve a főágba egyesülnek. Az egyes véglegesítési vagy egyesítési események a kód összeállításának és tesztelésének aktiválására használhatók annak biztosítása érdekében, hogy a javasolt vagy az eredményül kapott módosítások ne legyenek káros hatással. A folyamatos integrációval a build és a tesztek teljesen automatizáltak.

A folyamatos integrációs folyamat ábrája.

Ez az automatizálás a fejlesztők által létrehozott és az adattár üzemeltetési platformjában implementált definíciókon alapul. A GitHub például erre a célra kínál GitHub Actions-munkafolyamatot, míg az Azure DevOps az Azure Pipelinesra támaszkodik.



Mik a folyamatos integráció előnyei?

A folyamatos integrációhoz kapcsolódó elsődleges előnyök az általános bal oldali stratégián alapulnak, amely (amint a modul későbbi részében kiderül) számos más DevOps-gyakorlatot is befolyásol. Az alapfeltétel az, hogy minél tovább tart a kódmódosítással bevezetett probléma észlelése, annál drágább és nagyobb erőfeszítést igényel a javítás. A folyamatos integrációval a kód összeállítása és tesztelése a lehető leghamarabb megtörténik. Emellett automatizált módon is implementálhatók, ami növeli a sebességet és a megbízhatóságot. A folyamatos integráció javítja a konzisztenciát, így a buildek és tesztek reprodukálható módon zajlanak. Ez a konzisztencia viszont segít érvényesíteni a programozási szabványokat, így tisztább és könnyebben karbantartható a kód. Végül, de nem utolsósorban a folyamatos integráció általában a folyamatos teljesítés részét képezi, és hatékonyan egyszerűsíti az alkalmazás teljes életciklusának kezelését. A buildelési, tesztelési és üzembehelyezési tevékenységek fenntartásával járó többletterhelés minimalizálása növeli a fejlesztési és üzemeltetési csapatok általános termelékenységét, csökkentve a szoftvertermékek piacra kelésének idejét.