Как стать автором
Обновить
9
0
ALEKSEY ZUEV @zoomer499

Пользователь

Отправить сообщение

Выполняется upgrade, не ожидания окончания обновления, проверяется namespace на наличие ошибок и проблемных подов, и если такие поды есть их логи выводим в в лог пайплайна. По-сути процес похож на ручной дебаг, когда запустили helm и с помощью kubectl проверяем все ли раскатывается правильно и без ошибок. Надеюсь в ближайшее время выпустим серию статей, про устройству нашего CI/CD. Там более наглядно разберем такие моменты и как они помогают жизни разработчика/тестировщика.

Если вкратце, после того как запустили helm upgrade --install, скачиваем на раннер скрипт kubectl_show_error, который ищет есть ли в развернутом неймспейсе поды с ошибками:

PROBLEM_PODS="kubectl get pods -n " class="formula inline">ENV_NAME -o jsonpath='{range .items[]}{.status.containerStatuses[].ready} {.metadata.name} {end}' | grep "false" | rev |cut -d ' ' -f1 | rev )"

И далее выводим лог ошибочного пода в вывод раннера который и отобразит это в пайплайне. Пример такого вывода:

Надеюсь в следующем году опубликуем еще пару статей по поводу того как у нас устроена архитектура пайплайнов в части билдов/сборок чартов/деплойментов, там есть много интересного о чем рассказать.

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность