7С
Коротко:
- Continious Development (розгляд ідеї продукту, планування розробки, розбивання задачі на підзадачі). Інструменти: Jira, Git
Ось так зазвичай зображують життєвий цикл DevOps. Тут багато етапів, які ми вже розглянули, але також додались і нові, наприклад, Release, Operate та Monitor:

Також життєвий цикл DevOps можна описати за допомогою семи «C»:
- Постійний розвиток (Continuous Development),(ідеї та планування, розбивання задач на малі підзадачі) який спрямований на планування всіх процесів.
✔️Фази
- Планування;
- Написання коду.
✔️Практики
- Планування Agile (using Jira for example);
- Планування Sprint;
- Версіонування коду(git).
- Постійна інтеграція (Continuous Integration). Це один із ключових етапів, де команда пише код, тести, проводить код-ревью щоб впевнитись, що код правильно інтегрований з існуючою кодовою базою.
✔️Практики
- Юніт-тестування;
- Інтеграційне тестування;
- Тестування в середовищі dev;
- Код-ревью;
- Пул-реквести;
- Перевірка якості.
- Постійне тестування (Continuous Testing). Після інтеграції коду відбувається постійне тестування для перевірки працездатності та виявлення помилок.
✔️Фази
- Збірка продукту;
- Тестування.
✔️Практики
- Автоматизоване тестування;
- UI-тести.
- Постійне розгортання (Continuous Deployment), яке передбачає автоматизоване впровадження змін у продакшн після успішного тестування.
✔️Фази
- Розгортання;
- Експлуатація (operation).
✔️Практики
- Автоматизовані реліз-пайплайни;
- Автоматизоване розгортання коду;
- Автоматизоване розгортання інфраструктури;
- Інфраструктура як код;
- Автоматизовані перевірки якості та безпеки коду;
- Автоматизовані ролбеки.
- Постійний зворотний зв'язок (Continuous Feedback). Важливо забезпечити постійний зворотний зв'язок із користувачами для врахування їхніх вимог і відгуків.
✔️Практики
- A/B-тестування;
- Флаги функцій (feature flags);
- Відгуки користувачів.
- Постійна операційна підтримка (Continuous Operations). Цей етап про налаштування автоматизованих релізів так, щоб оновлення версії не вимагало даунтайму — часу, коли додаток не доступний клієнтам.
✔️Практики
- Релізи без даунтайму.
- Постійний моніторинг (Continuous Monitoring). Це фаза, у якій відбувається моніторинг, логування, аналіз помилок і відновлення системи після помилок.
✔️Фази
- Моніторинг.
✔️Практики
- Моніторинг;
- Логування;
- Створення алертів;
- Управління інцидентами;
- Postmortems;
- Автовідмова;
- Автомасштабування.