Модель системы continuous integration в компании positive technologies |...
TRANSCRIPT
![Page 1: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/1.jpg)
Модель системы Continuous Integration в компании Positive Technologies
Тимур ГильмуллинРуководитель отдела технологий разработки
(DevOps)[email protected]
https://www.linkedin.com/in/tgilmullin
![Page 2: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/2.jpg)
Проблема: TFS как система Continuous Integration
![Page 3: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/3.jpg)
Начало 2014-го: все сборки реализованы на TFS
Выбор TFS в качестве системы сборки и тестирования имеет ряд недостатков:• Трудно поддерживать шаблоны сборочных, деплойных и тестовых конфигураций
• Проблемы с интеграцией не c# языков
• Невозможно оперативное расширение инфраструктуры
![Page 4: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/4.jpg)
Насущные потребности в Continuous Integration
Возникла необходимость:• Типизировать и шаблонизировать создание сборочных, деплойных и тестовых
конфигураций
• Ускорить создание типовых проектов в Continuous Integration системах
• Обеспечить расширяемость проектов и упростить добавление новых конфигураций
![Page 5: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/5.jpg)
Решение проблемы: TeamCity + GitLab + Artifactory
В течение 1-2 лет инфраструктура Continuous Integration переведена на связку из базовых сервисов:
• TeamCity - система организации Continuous Integration в Компании
• GitLab - система хранения исходного кода компонент продуктов Компании
• Artifactory - система хранения собранных бинарных версий компонент и продуктов Компании
![Page 6: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/6.jpg)
Типовые проекты в TeamCity
![Page 7: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/7.jpg)
Релизная схема сборок с продвижениями в TeamCity
![Page 8: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/8.jpg)
Обобщенная трехуровневая иерархия проектов в TeamCity
![Page 9: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/9.jpg)
Типовой интерфейс проектов в TeamCity
![Page 10: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/10.jpg)
Недостатки базовой архитектуры типовых проектов
• Сложная логика конфигураций в TeamCity
• Сборочные конфигурации поддерживаются только силами DevOps
• Мы быстро достигли предела масштабирования проектов, реализуя их только силами DevOps
• Отсутствовали механизмы доставки и инсталляции продуктов Компании, интегрированные с Continuous Integration системой
• Различающиеся сборочные процессы на сборочных серверах и машинах разработчиков
![Page 11: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/11.jpg)
Типовые проекты: планы развития
![Page 12: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/12.jpg)
Планируемое развитие сборочной платформы на TeamCity
Модель сборочных конфигураций и сборочных серверов в Teamcity:
![Page 13: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/13.jpg)
Планируемое развитие сборочных процессов
Модель сборочной системы CrossBuilder:
Цели создания CrossBuilder:
• Идентичные сборочные процессы на сборочных серверах и машинах разработчиков
• Возможность использования различных CI-систем
• Декларативное описание процесса сборки делегируется в команды разработки
![Page 14: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/14.jpg)
2016 год:Сервисы и Continuous Integration в Компании
![Page 15: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/15.jpg)
Расширенная схема процессов Continuous Integration
![Page 16: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/16.jpg)
Сервисы DevOps в Positive Technologies
• Сообщество DevOpsHQ:https://github.com/devopshq
![Page 17: Модель системы Continuous Integration в компании Positive Technologies | Тимур Гильмуллин](https://reader036.vdocuments.pub/reader036/viewer/2022062523/5879303a1a28ab7c448b63e3/html5/thumbnails/17.jpg)
Спасибо!Вопросы?
Тимур ГильмуллинРуководитель отдела технологий разработки
(DevOps)[email protected]
https://www.linkedin.com/in/tgilmullin