AIDA Badoo

443
-1

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
443
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

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
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×