Управление релизами в Visual Studio 2013

OSzone.net » Microsoft » Разработка приложений » Другое » Управление релизами в Visual Studio 2013
Автор: Дмитрий Андреев
Иcточник: MSDN
Опубликована: 10.06.2014

Если вы разрабатываете сложные системы, то наверняка задумывались об автоматизации шагов, связанных с релизом. Представим, что вы создаете сложный многокомпонентный веб-сайт, инфраструктура которого разделена на несколько серверов.
Весьма заманчивым является сценарий, когда ваш процесс непрерывной интеграции и создания билдов продолжается автоматическим развертыванием этого сайта. При этом соблюдаются некоторые условия и критерии, например, требуется чтобы билд который готов к развертыванию в эксплуатационной среде проходил все тесты, и утверждался ответственными людьми из команды. Неизбежно возникает ряд моментов, которые усложняют процесс сборки, приходится создавать скрипты развертывания. Если учесть еще и процесс утверждения, то становится понятно, что такая автоматизация может быть достаточно трудоемким делом. К счастью в Team Foundation Server 2013 входит ряд инструментов, которые позволят значительно упростить управление релизами.

Архитектура управления релизами


Новый инструментарий который вошел в выпуск Team Foundation Server 2013 разработан компанией InCycle. Ранее этот продукт был известен как InRelease и отлично себя зарекомендовал. Общая архитектура представлена ниже:
*
Увеличить


На основе этой архитектуры могут быть построены самые различные варианты развертывания, в том числе веб приложений, настольных приложений, и многокомпонентных сложных систем.

Управление шагами по развертыванию


Одной из самых трудоемких частей автоматизации релизов является развертывание собранных компонент продукта. В зависимости от архитектуры разрабатываемой системы этот процесс может состоять из множества шагов, которые требуют тонкой настройки, и подготовки всевозможных скриптов. Их дальнейшая проверка и отладка может отнять очень много времени. Если вы используете компоненты управления релизами в TFS 2013 то у вас есть уже готовые скрипты и компоненты которые могут значительно облегчить эту задачу.
*
Увеличить


Эти компоненты позволяют без программирования скриптов управлять виртуальными машинами, запускать процессы, осуществлять копирование файлов и многое другое.
В дополнение к этому, в этих компонентах есть механизмы обратного отката (rollback), в случае если что-то пошло не так и в процессе развертывания произошли сбои. Настройки позволяют предусмотреть шаги которые вернут состояние систем в первоначальное.
Настройка процессов подготовки релиза и шагов по развертыванию осуществляется в визуальном редакторе:
*
Увеличить


При этом можно более детально конфигурировать целевую среду развертывания с помощью действий (Actions), например создать виртуальный сайт в IIS, создать новую виртуальную машину в Azure и многое другое:
*
Увеличить


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

Процессы утверждения релизов


В процессе непрерывной интеграции изменений создается множество билдов. Какие то из них могут не удовлетворять условиям приемки, а какие то в конце концов окажутся теми сборками, которые обладают нужным уровнем качества и готовы для развертывания в эксплуатационной среде. В инструментарии управления релизами предусмотрены механизмы утверждения. Процесс подготовки релиза формализуется и разделяется на несколько этапов. При этом в каждом этапе может присутствовать фаза утверждения на основе критериев, например прохождения модульных тестов, или ответственным лицом.
*
Увеличить


Такой механизм позволяет значительно снизить риски развертывания сырого билда в эксплуатационной среде, и всегда можно отследить прохождение каждого этапа.

Еще раз хотелось бы отметить что на конференции ALM Summit Russia будет подготовлен специальный доклад на тему управления релизами, в рамках которого будет более подробно рассказано как о возможностях этого инструментария так и его настройке. Если вы хотите посетить эту конференцию, обязательно воспользуйтесь текущей 50% скидкой на билет с помощью промокода alm14_VS. Это даст вам возможность не только получить информацию из первых рук но и пообщаться с экспертами, задать дополнительные вопросы. До встречи на конференции и побольше релизов готовых к эксплуатации!
*
Увеличить


Ссылка: http://www.oszone.net/24350/