Архів категорії: CI/CD

GitHub Actions: запуск Actions Runner Controller в Kubernetes

24 Вересня 2024
 

 Ми користуємось GitHub Actions для деплоїв, і врешті-решт прийшли до того, що хочеться запускати Runners на своїх серверах в Kubernetes, бо: self-hosted GitHub Runners дешевші – фактично, платимо тільки за сервери, на яких запускаються джоби нам потрібно запускати SQL migrations на AWS RDS в приватних сабнетах перформанс – ми можемо використовувати будь-який тип AWS EC2… Читати далі »

Renovate: GitHub та Helm Charts versions management

29 Травня 2024
 

 Depndabot (див. Dependabot: GitHub та Terraform versions management) цікавий тим, що досить швидко і просто конфігуриться, але те, що він досі не вміє в Helm-чарти (хоча feature request був відкритий ще в 2018) робить його трохи useless для нас. Отже, натомість давайте глянемо на Renovate, який прям дуже цінується всіма, хто має справу з менеджментом… Читати далі »

Dependabot: GitHub та Terraform versions management

29 Травня 2024
 

 З часом, коли проект росте, то рано чи пізно постане питання про апгрейд версій пакетів, модулів, чартів. Робити це вручну, звісно, можна – але тільки до якоїсь межі, бо врешті-решт ви просто фізично не зможете моніторити та оновлювати все. Для автоматизації таких процесів існує багато рішень, але найчастіше зустрічаються два – Renovate та Dependabot. За… Читати далі »

Helm: UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress

24 Травня 2024
 

 Іноді під час деплою Helm-чартів може з’являтись помилка “UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress“: Виникати може через те, що попередній деплой не відбувся через помилки в чарті, або втрачений зв’язок між білд-машиною та Kubernets-кластером. Перевіряємо статус релізу з ls –all: $ helm -n dev-backend-api-ns ls –all NAME NAMESPACE REVISION UPDATED STATUS CHART APP… Читати далі »

GitHub Actions: використання Reusable Workflows – нюанси роботи

13 Березня 2024
 

 В пості GitHub Actions: деплой Dev/Prod оточень з Terraform я вже трохи торкався теми Reusable Workflows та Composite Actions – прийшов час трохи більше з нею ознайомитись. Що треба зробити: зараз на проекті ми в кожному репозиторії пишемо Workflow-файли окремо. Втім, оскільки поступово всі процеси уніфікуються – управління інфраструктурою через Terraform, та запуск сервісів в… Читати далі »

GitHub Actions: деплой Terraform з review запланованих змін

7 Березня 2024
 

 У пості GitHub Actions: деплой Dev/Prod оточень з Terraform я вже описував те, як можна реалізувати CI/CD для Terraform з GitHub Actions, але в тому рішенні є один суттєвий недолік: немає можливості зробити review змін перед тим, як їх застосувати з terraform apply. GitHub Actions має можливість використання Reviewing deployments для approve/reject, проте ця можливість… Читати далі »

GitHub Actions: Docker-білд в AWS ECR та деплой Helm-чарту в AWS EKS

2 Жовтня 2023
 

 Отже, маємо розгорнутий кластер Kubernetes – див. серію Terraform: створення EKS, частина 1 – VPC, Subnets та Endpoints. Маємо GitHub Actions workflow для його деплою – див. GitHub Actions: деплой Dev/Prod оточень з Terraform. Прийшов час почати деплоїти наш бекенд в Kubernetes. Тут знов використаємо GitHub Actions – будемо білдити Docker-образ з API-сервісом бекенду, зберігати… Читати далі »