9 релизов в неделю.Секрет успеха.
Макс БогуславскийБанки.ру
О себе
Что будет в докладе:
● реальная история развития отдела;● набор решений, которые нам в этом
помогли;● devops.
Что не будет в докладе:
● котиков;● “серебрянных пуль”.
Почему так часто?
● первое время их было 18, но это был перебор.
● сильная связанность функционала требует регресс;
● много маркетинговых задач;● хотфиксы блокеров и критических задач;● много мелких проектов.
О проекте
О проекте
Три года назад
● права на деплой есть у всех;● несоответствие боя и тестовой среды;● отладка на бою;● выкладка без тестирования;● обновление базы под заказ;● смоук-тест шел 8 часов;● “красные карточки” лучшему сотруднику.
Схема без тестеров
Три года назад
Схема с тестером
2012 год
● Agile + Feature team + Jira Workflow;● skype-чат + “Горячий чат”;● тестовые среды + тестовые прогоны перед выкладкой;● Bamboo + первые selenium-тесты;● jmeter (functional mode);● svn -> git;● блокировка выкладки.
Feature team
Новые трудности
● стали нагляднее нарушения рамок проекта ;
● разное понимание Agile;● разное понимание приоритетов;● “очень плохо выкладываемся” vs “очень
хорошо выкладываемся”;● “это проблема тестовой среды”;● “а у нас все работало”.
Прогнозируемость
2013 год
● регламент выкладки;● журнал выкладок;● выделение эксплуатации;● если не успел, то хотфикс после
выкладки;● разбор задач из техподдержки;● четкая приоритезация;● подключение юнит-тестов;● быстрые тесты + прогоны < 5 минут.
18 выкладок
● понедельник - четверг:o 11:00 / 13:00 / 15:00 / 17:00
● пятница:o 12:00 / 14:00
9 выкладок
● понедельник - четверг:o 11:00 / 15:00
● пятница:o 12:00
Журнал внеплановых выкладок
Новые трудности
● падает инфраструктура;● 18 деплоев в неделю...
И мы добавили еще немножко
Журнал внеплановых выкладок II
тестовые среды Бамбу 2.0
Up Time
2014 год
● git-workflow + pull-request;● запрет на коммит в девелоп/master ветку;● Склянки 2.0 (виртуализация/capistrano + puppet);● быстрые тесты + прогоны (5 минут) . часть два;● jmeter -> админка;● обучение автоматизации всей QA команды;● упрощенный framework для автоматизации;● тестирование задач админов/архитектурных задач,
которые были выполнены вне команды.
Bamboo 2.0
Схема выкладок сейчас
Новые проблемы
● долго разворачивать все проекты;● люди забывают зачем нужны традиции;● большое количество сред жрут ресурсы;● умирающие агенты;● разные ожидания от тестирования;● разросшийся фреймворк.
Пространство для развития
● переход на полный CI;● единые скрипты выкладки для dev > test >
prod;● full coverage на всех уровнях;● нагрузочная среда в облаках.
Выводы:
● слепо копировать технологии - зло;● система должна быть понятна каждому
участнику процесса;● не все готовы сразу меняться;● факап - это отличный аргумент “за”;● система со временем деградирует.