Философия DevOps. Искусство управления IT. Дженнифер Дэвис

Читать онлайн книгу.

Философия DevOps. Искусство управления IT - Дженнифер Дэвис


Скачать книгу
же нужно для формирования успешной культуры развертывания ПО? Чтобы продемонстрировать факторы, влияющие на успех культуры, рассмотрим совокупность людей, процессов и инструментов, сформированную в Etsy. Эта компания представляет интерактивный глобальный рынок товаров ручной работы, а также винтажных товаров. Мы выбрали в качестве примера Etsy не только потому, что этот бренд хорошо известен в отрасли своими техническими и культурными практиками. Основная причина выбора этой компании заключается в том, что Кэтрин – опытный сотрудник компании Etsy, который может компетентно судить о сформированной в этой компании культуре.

      Инженер, принятый на работу в Etsy, начинает свой первый рабочий день за ноутбуком, на котором установлена подготовленная виртуальная машина для ведения разработки. Для него уже созданы соответствующие учетные записи, позволяющие подключиться к этой машине и пройти авторизацию. Склонированы наиболее популярные репозитории GitHub, предварительно созданы системные ссылки и указатели для соответствующих инструментов. Также на рабочем столе новоиспеченного инженера имеется руководство, включающее ссылки на другие корпоративные ресурсы. Благодаря стандартизации инструментов и применяемых практик для различных групп облегчается подключение к процессу новых людей, независимо от того, в состав какой группы они входят. Каждая команда также может настроить применяемые инструменты и практики на свое усмотрение.

      К новому сотруднику прикрепляется опытный специалист, который знакомит новичка с процессами разработки и тестирования ПО, ежедневно применяемыми в организации. Новый сотрудник начинает создавать код на локальной виртуальной машине, предназначенной для разработки программ. С помощью модуля управления конфигурацией среда виртуальной машины настраивается таким образом, что становится практически идентичной реальной производственной среде. В результате можно выполнять и тестировать код локально. Это дает возможность быстро выполнять работу и вносить необходимые изменения, не привлекая опытных специалистов из группы разработчиков в качестве консультантов.

      Путем запуска набора локальных модулей и функциональных тестов инженеры Etsy могут с большой долей вероятности гарантировать работоспособность внесенных в ПО изменений на локальном уровне. Также они могут протестировать изменения на отладочном сервере. При этом используется Jenkins-кластер, который практически идентичен производственному кластеру непрерывной интеграции (CI). К тому же Jenkins-кластер обладает дополнительным преимуществом: для перехода к мастер-ветви не нужен дополнительный код. После успешного прогона тестов инженеры получают дополнительные гарантии того, что изменения не приводят к нарушению работоспособности тестов.

      В зависимости от масштаба и сложности изменений новый инженер может отправить запрос на принятие изменений кода или попросить кого-либо из коллег просмотреть код. Эта процедура не является обязательной для каждого изменения и зачастую осуществляется на усмотрение сотрудника. В среде Etsy, которой


Скачать книгу