CI/CD (Безперервна інтеграція та доставка)
CI/CD — це набір практик, що дозволяють автоматизувати процес розробки, тестування та розгортання програмного забезпечення.
Components: 1. Source Control (Git). 2. Build Server (CI). 3. Artifact Registry (Docker Hub, Artifactory). 4. Deployment Orchestrator (Kubernetes, AWS). Stages: Commit -> Build -> Test -> Stage -> Production. Concepts: Triggers, Runners, Secrets, Parallelism.
graph LR
Center["CI/CD (Безперервна інтеграція та доставка)"]:::main
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Простими словами
Це як автоматична перевірка домашнього завдання. Ви пишете рядок коду, і 'робот' миттєво каже вам, чи працює він правильно. Якщо все добре, цей самий робот сам 'заливає' оновлення на сайт. Вам не потрібно нічого копіювати вручну або просити начальника перевірити кожен символ.
🤓 Expert Deep Dive
Важливим елементом CD є стратегія розгортання. Наприклад, 'Canary Deployment' дозволяє показати оновлення спочатку невеликій групі користувачів (1%), щоб переконатися, що система стабільна під навантаженням. Якщо показники помилок не зростають, оновлення котиться на всіх інших. Це мінімізує ризики великих збоїв. Також у сучасних пайплайнах обов'язково є етап 'Shift Left Security', де код перевіряється на вразливості ще до того, як він буде зібраний у готовий продукт.