Развитие сообщества open devops community

18
Развитие сообщества Open DevOps Community Тимур Гильмуллин, Руководитель группы поддержки процессов разработки (DevOps) [email protected] linkedin.com/in/tgilmullin Александр Паздников, Руководитель отдела технологий и процессов разработки [email protected]

Upload: positive-hack-days

Post on 21-Jan-2018

107 views

Category:

Technology


5 download

TRANSCRIPT

Page 1: Развитие сообщества Open DevOps Community

Развитие сообщества Open DevOps Community

Тимур Гильмуллин, Руководитель группы

поддержки процессов разработки (DevOps)

[email protected]

linkedin.com/in/tgilmullin

Александр Паздников, Руководитель отдела

технологий и процессов разработки

[email protected]

Page 2: Развитие сообщества Open DevOps Community

Проблема на начало 2016:

нет готового объединяющего решения

для CI/CD-систем

Page 3: Развитие сообщества Open DevOps Community

Проблемы 2016 года

• Отсутствовал готовый каркас открытой системы управления

полным циклом процесса разработки, доставки, развёртывания

и лицензирования

• Отдельные системы: GitLab, TFS, TeamСity, JFrog Artifactory,

статьи best practice и блоги, разрозненная документация

• Разрозненные знания отдельных специалистов компании о

продуктах и их сборке

Page 4: Развитие сообщества Open DevOps Community

Попытки решения проблем

Op!DevOps! 2016:

• статья на Хабрахабр

•видео

Open DevOps Community

• на базе GitHub-проекта DevOpsHQ

Page 5: Развитие сообщества Open DevOps Community

Что мы хотели объединить в DevOpsHQ

DevOpsHQ

ArtifactoryTeamCity

Upsource

GitLab

TFS

YouTrack

TestRail

DockerSaltStackZabbix

CrossBuilder

CrossPM

DevOpsLab

SupplyLab

SymbolServer

Page 6: Развитие сообщества Open DevOps Community

Цели и проекты в DevOpsHQ

Page 7: Развитие сообщества Open DevOps Community

Цель сообщества Open DevOps Community

Сформировать открытые готовые решения для управления:

• полным циклом процесса разработки

• тестирования и смежных процессов

• доставки

• развёртывания

• лицензирования продуктов

Page 8: Развитие сообщества Open DevOps Community

Опубликованные проекты

• crosspm — универсальный менеджер для скачивания пакетов для сборок

многокомпонентных продуктов, по правилам, заданным в манифесте

• vspheretools — инструмент для управления виртуальными машинами на

vSphere прямо из консоли, с возможностью подключения в качестве API-

библиотеки в Python-скриптах

• YouTrack Python 3 Client Library — Python-клиент для работы с API YouTrack

• TFS API Python client — Python-клиент для работы с API MS TFS

• A Python client for Artifactory — Python-клиент для работы с API хранилища

бинарных данных Artifactory

• FuzzyClassificator — универсальный нейронечёткий классификатор

произвольных объектов, свойства которых могут быть оценены на нечёткой

измерительной шкале

Page 9: Развитие сообщества Open DevOps Community

Готовятся к публикации

• CrossBuilder — система организации кросс-платформенных сборок

Build As a Code, наподобие Travis CI, но не зависящая от используемой

CI-системы (TeamCity, Jenkins, GitLab-CI)

• ChangelogBuilder — генератор release notes с описанием изменений

по продукту, который получает и агрегирует данные из различных

трекеров (TFS, YouTrack, GitLab)

• pyteamcity — доработанный python-клиент для работы с API TeamCity

• MSISDK — SDK для создания msi-пакетов для инсталляторов

Page 10: Развитие сообщества Open DevOps Community

Типовой проект

• Типовой проект ExampleProject (все проекты под MIT-лицензией)

Page 11: Развитие сообщества Open DevOps Community

Планы развития DevOpsHQ

Page 12: Развитие сообщества Open DevOps Community

Ретроспектива

• 2015 — настройка базовых сценариев и процессов, построение

скелета-каркаса системы DevOps

• 2016 — активное наращивание объёмов сборок и тестовых

процессов

• 2017 — закрепление успехов и стабилизация роста, качественный

переход на удобство использования

• впервые: годовой план для крупных задач

• цель: получение общего Конечного Полезного Результата

Page 13: Развитие сообщества Open DevOps Community

Цели и функции DevOps в PT

• Основная цель DevOps — обеспечение снижения

себестоимости производства Конечного Полезного Результата

• Основная функция DevOps — макросборка частей в единый

полезный конечный продукт и сокращение себестоимости

цепочки:

производство — доставка — развёртывание ПО

Page 14: Развитие сообщества Open DevOps Community

SupplyLab: система доставки обновлений

Система SupplyLab в 2017 году в цифрах:

1.Заказчики выкачали 80 Тб обновлений

2.Было опубликовано порядка 20 релизов продуктов

3.Было опубликовано ~2000 пакетов обновлений с данными

Планы по SupplyLab на 2018:

1.Разделить кодовую базу ядра и лицензионных проверок

2.Публикация в DevOpsHQ

Page 15: Развитие сообщества Open DevOps Community

Вектор целей управления на 2018

1.Обеспечение стабильности процессов разработки

2.Регулярное проведение вебинаров о существующих наработках,

для обеспечения серийности производства

3.Анализ процессов продуктовых команд для выявления узких мест,

которые может решить DevOps

4.Перевод на серийное дублирование процессов в командах

Page 16: Развитие сообщества Open DevOps Community

Направления развития в 2018

1.Расширение серийности — добавление новых типовых сборочных

шаблонов, в первую очередь, за счёт CrossBuilder

2.Ввод в эксплуатацию системы управления составом релиза и

качеством входящих пакетов (CrossPM + DevOpsLab)

3.Типовой процесс поставки через систему обновления SupplyLab

4.Выход на технологию Infrastructure as Code

5.Профилирование и оптимизация процессов сборки, развёртывания,

доставки

Page 17: Развитие сообщества Open DevOps Community

Планы DevOpsHQ на 2018

1.Разработка CrossBuilder — открытой системы Build As a Code и

шаблонов типовых проектов для неё

2.Управление составом дистрибутива на базе сборочных контрактов

пакетов и их меток качества

3.Разработка DevOpsLab — системы автоматизации и делегирования

типовых задач в проектные команды

Page 18: Развитие сообщества Open DevOps Community

Спасибо!

Вопросы?Тимур Гильмуллин

[email protected]

Александр Паздников

[email protected]