Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
AIDAНепрерывная интеграция вкрупном Интернет проекте
Automated Interactive Deploy Assistant
Содержание1. Git1.1 Workflow1.2 Gitosis1.3 GitPHP1.4 Hooks2. Automerge3. Dashboard4. JIRA. Контроль разработки5. TeamCity ...
Git workflowMaster - стабильная версия кода, копия продакшена.Каждая задача в отдельной ветке. Ветки релизовсоздаются авто...
Gitosis web admin• 25+ репозиториев• Много пользователей• Быстрое управление+=
GitPHP• CodeReview• Gitosis• Авторизация через JIRA
Git хуки• Контроль над разработчиками• Помощь разработчикам• Уведомления
Запрещающие хуки• Невалидный код• Код не по стандартам• Нерешённые конфликты• Неправильное имя ветки• Проверка прав на пуш
Хуки нотификаций• Рассылают уведомления в джабер• Рассылают письма с диффами• Оставляют комментарии в JIRA
Системные хуки• Связывают задачи с релизами• Заполняют поля в JIRA• Изменяют статусы в JIRA
Automerge• Выборка готовых к выкладке задач из JIRA• Проверка существования ветки задачи в remote"origin"• Проверка связан...
DeployDashboard - веб интерфейс AIDA• Список релизов• Списки связанных с релизами задач и их статусами• Форма добавления п...
Взглянем на Аиду с другой стороны
Контроль качества
QA• Автоматический запуск юнит тестов• Devel• Shot• Staging
JIRA. Контроль разработкиИнтеграция и автоматизация в баг-трекере:• Критерии "готовности" задачи• Интеграция с Git, Gitphp...
TeamCity - авто тесты, сборка и деплой
TeamCity - авто тесты, сборка и деплой1. Настройка проекта2. Сборка3. Deploy4. Smoke-тесты5. Откат сборки6. Автотесты
Автоматизация:1. Git2. Gitosis3. GitPHP4. Automerge5. DeployDashboard6. JIRA7. TeamCityContinuous DeliveryВ итоге:• 70% за...
Вопросы?Vladislav Chernove-mail: v.chernov@corp.badoo.comskype: chernovvsOleg Ojamäee-mail: oleko.dundich@gmail.comskype: ...
Upcoming SlideShare
Loading in …5
×

AIDA. Непрерывная интеграция на большом интернет-проекте / Владислав Чернов, Олег Оямяэ (Badoo)

762 views

Published on

  • Be the first to comment

AIDA. Непрерывная интеграция на большом интернет-проекте / Владислав Чернов, Олег Оямяэ (Badoo)

  1. 1. AIDAНепрерывная интеграция вкрупном Интернет проекте
  2. 2. Automated Interactive Deploy Assistant
  3. 3. Содержание1. Git1.1 Workflow1.2 Gitosis1.3 GitPHP1.4 Hooks2. Automerge3. Dashboard4. JIRA. Контроль разработки5. TeamCity - авто тесты, сборка и деплой6. Continuous delivery
  4. 4. Git workflowMaster - стабильная версия кода, копия продакшена.Каждая задача в отдельной ветке. Ветки релизовсоздаются автоматически по расписанию.
  5. 5. Gitosis web admin• 25+ репозиториев• Много пользователей• Быстрое управление+=
  6. 6. GitPHP• CodeReview• Gitosis• Авторизация через JIRA
  7. 7. Git хуки• Контроль над разработчиками• Помощь разработчикам• Уведомления
  8. 8. Запрещающие хуки• Невалидный код• Код не по стандартам• Нерешённые конфликты• Неправильное имя ветки• Проверка прав на пуш
  9. 9. Хуки нотификаций• Рассылают уведомления в джабер• Рассылают письма с диффами• Оставляют комментарии в JIRA
  10. 10. Системные хуки• Связывают задачи с релизами• Заполняют поля в JIRA• Изменяют статусы в JIRA
  11. 11. Automerge• Выборка готовых к выкладке задач из JIRA• Проверка существования ветки задачи в remote"origin"• Проверка связанности задачи с другими задачами• Попытка мержа ветки задачи в релиз• Уведомление о конфликте в jabber• Отправка отчёта
  12. 12. DeployDashboard - веб интерфейс AIDA• Список релизов• Списки связанных с релизами задач и их статусами• Форма добавления патча в master или релиза• Список патчей в master и релизы• Применение патча непосредственно из дашборда
  13. 13. Взглянем на Аиду с другой стороны
  14. 14. Контроль качества
  15. 15. QA• Автоматический запуск юнит тестов• Devel• Shot• Staging
  16. 16. JIRA. Контроль разработкиИнтеграция и автоматизация в баг-трекере:• Критерии "готовности" задачи• Интеграция с Git, Gitphp и Teamcity• Автоматическое изменение статуса задач• Нотификации• Дополнительная информация
  17. 17. TeamCity - авто тесты, сборка и деплой
  18. 18. TeamCity - авто тесты, сборка и деплой1. Настройка проекта2. Сборка3. Deploy4. Smoke-тесты5. Откат сборки6. Автотесты
  19. 19. Автоматизация:1. Git2. Gitosis3. GitPHP4. Automerge5. DeployDashboard6. JIRA7. TeamCityContinuous DeliveryВ итоге:• 70% задач на production• Формирование релиза• Отсутствие рутинныхдействий
  20. 20. Вопросы?Vladislav Chernove-mail: v.chernov@corp.badoo.comskype: chernovvsOleg Ojamäee-mail: oleko.dundich@gmail.comskype: oleko_dundich

×