- PVSM.RU - https://www.pvsm.ru -

Непрерывное развертывание проектов в Windows Azure с помощью Team Foundation Service

Непрерывное развертывание проектов в Windows Azure с помощью Team Foundation Service

Microsoft Team Foundation Service [1] –– это облачная версия популярного приложения Microsoft Team Foundation Server (TFS), которое содержит удобные инструменты для создания исходного кода, сборки, гибкой разработки, рабочих процессов в команде, отслеживания задач и ошибок, а также других действий. Командные проекты Team Foundation Service можно автоматически собирать и развертывать на веб-сайтах или облачных службах Windows Azure. Информацию о том, как настроить непрерывную сборку и развертывание системы из локальной версии Team Foundation Server, см. в разделе «Непрерывное развертывание облачных приложений в Windows Azure» [2].

Далее предполагается, что на вашем компьютере установлена среда Visual Studio 2012 и Windows Azure SDK. Если среда Visual Studio 2012 не установлена, загрузите ее отсюда [3]. Можно также использовать Visual Studio 2010, но тогда необходимо установить пакет SP1 и пакет совместимости GDR [4]. Пакет Windows Azure SDK доступен по этой ссылке [5].

Чтобы настроить автоматическую сборку и развертывание облачной службы в Windows Azure с помощью Team Foundation Service Preview, выполните следующие действия:

  • Этап 1. Подпишитесь на сервис TFS Preview
  • Этап 2. Синхронизируйте проект с TFS
  • Этап 3. Подключите проект к Windows Azure
  • Этап 4. Внесите изменения и запустите повторную сборку и развертывание
  • Этап 5. Повторно разверните предыдущую сборку (необязательно)
  • Этап 6. Измените рабочее развертывание (только для облачных служб)

Этап 1. Подпишитесь на сервис TFS Preview

Создайте учетную запись TFS на сайте https://tfspreview.com [6].

Создайте командный проект на странице учетной записи TFS. Учетная запись имеет следующий формат: <имя_пользователя>.tfspreview.com [7]. Выполнять вход нужно с помощью учетной записи Microsoft Live ID.

clip_image002

Выберите Create a Team Project. Введите имя и описание проекта, а затем нажмите кнопку Create Project.

clip_image004

Когда проект будет создан, нажмите кнопку Navigate to Project.

clip_image006

Этап 2. Синхронизируйте проект в TFS

Щелкните ссылку Open new instance in Visual Studio, чтобы автоматически запустить среду Visual Studio, подключенную к командному проекту. Если отобразятся предупреждения безопасности, выберите Allow. Для выполнения этого этапа требуется Visual Studio 2012.

clip_image008

В Visual Studio откройте или создайте решение, которое необходимо развернуть. С помощью инструкций данного руководства можно развернуть веб-сайт или облачную службу (приложение Windows Azure). Чтобы создать решение, создайте проект облачной службы Windows Azure или проект ASP.NET MVC4. Убедитесь, что в проекте используется .NET Framework 4, а затем добавьте веб-роль и рабочую роль ASP.NET MVC 4. По запросу системы выберите Internet Application. Чтобы создать веб-сайт, выберите шаблон проекта ASP.NET MVC4 Application.

Откройте контекстное меню решения и выберите Add Solution to Source Control.

clip_image010

Примите или измените значения по умолчанию, а затем нажмите кнопку OK. После завершения процесса в Solution Explorer появятся значки контроля исходного кода.

clip_image012

Откройте контекстное меню решения и выберите Check In.

clip_image014

В разделе Pending Changes обозревателя команд введите комментарий и нажмите кнопку Check In.

clip_image016

При синхронизации проверьте включенные и исключенные параметры. Если нужные параметры исключены, щелкните ссылку Include All.

clip_image018

Этап 3. Подключите проект к Windows Azure

Теперь командный проект TFS с файлами исходного кода можно подключить к Windows Azure. На портале Windows Azure Preview [8] выберите облачную службу или веб-сайт либо создайте их. Для этого щелкните значок «+» в левой нижней части и выберите Cloud Service или Web Site, а затем Quick Create. Щелкните ссылку Set up TFS publishing.

clip_image020

В открывшемся мастере введите имя учетной записи TFS в текстовом поле и щелкните ссылку Authorize Now. Система может попросить вас выполнить вход.

clip_image022

Во всплывающем диалоговом окне OAuth нажмите Accept, чтобы разрешить Windows Azure настройку командного проекта в TFS.

clip_image024

Затем появится раскрывающийся список, содержащий имена ваших командных проектов TFS. Выберите проект, созданный на предыдущих этапах, и нажмите кнопку с флажком в окне мастера.

clip_image026

После подключения проекта система отобразит несколько инструкций по синхронизации изменений в командном проекте TFS. При следующей синхронизации TFS соберет и развернет проект в Windows Azure. Для проверки этой функции щелкните ссылку Check In from Visual Studio 2012, а затем Launch Visual Studio 2012 (или аналогичную кнопку на панели команд Visual Studio).

clip_image028

Этап 4. Внесите изменения и запустите повторную сборку и развертывание

В обозревателе команд Visual Studio щелкните ссылку Source Control Explorer.

clip_image030

Перейдите к файлу решения и откройте его.

clip_image032

Откройте и измените файл в Solution Explorer. Например, отредактируйте файл _Layout.cshtml в папке ViewsShared веб-роли MVC4.

clip_image034

Измените логотип сайта и нажмите Ctrl + S для сохранения.

clip_image036

В обозревателе команд щелкните ссылку Pending Changes.

clip_image038

Введите комментарий и нажмите кнопку Check In.

clip_image040

Чтобы вернуться на домашнюю страницу обозревателя команд, нажмите кнопку Home.

clip_image042

Щелкните ссылку Builds для просмотра хода выполнения сборки.

clip_image044

Обозреватель команд показывает, что для вашей синхронизации запущен процесс сборки.

clip_image046

Дважды щелкните имя выполняемой сборки для просмотра подробной информации.

clip_image048

В ходе процесса вы можете просмотреть определение сборки, которое было создано при связывании TFS с Windows Azure с помощью мастера. Откройте контекстное меню определения построения и выберите Edit Build Definition.

clip_image050

На вкладке Trigger показано, что определение сборки по умолчанию используется для всех синхронизаций.

clip_image052

На вкладке Process показано, что среда развертывания связана с именем вашей облачной службы или веб-сайта.

clip_image054

К этому моменту сборка должна завершиться.

clip_image056

Если дважды щелкнуть имя сборки, среда Visual Studio отобразит Build Summary, включая все результаты тестирования из соответствующих проектов модульного тестирования.

clip_image058

На портале Windows Azure Preview [8] можно просмотреть связанное развертывание на вкладке Deployments, выбрав тестовую среду.

clip_image060

Выберите URL в разделе Quick Glance на странице Dashboard, где показана тестовая среда облачной службы. Для выбора веб-сайта просто нажмите кнопку Browse на панели команд. По умолчанию развертывания из непрерывной интеграции для облачных служб размещаются в тестовой среде. Эту настройку можно изменить, указав в свойстве Alternate Cloud Service Environment значение Production. Для веб-сайтов не существует тестовой или рабочей среды.

clip_image062

Откроется вкладка браузера, на которой можно проверить работу сайта.

clip_image064

Если вы многократно вносили изменения в проект, количество сборок и развертываний будет довольно большим. Самые последние из них имеют статус Active.

clip_image066

Этап 5. Повторно разверните предыдущую сборку (необязательно)

Данный этап не является обязательным. Найдите предыдущее развертывание и нажмите кнопку Redeploy, чтобы вернуть сайт в предыдущее состояние. При этом в TFS будет выполнена повторная сборка, а в истории развертывания появится новая запись.

clip_image068

Этап 6. Измените рабочее развертывание (только для облачных служб)

Данный этап применим только к облачным службам и не относится к веб-сайтам. Когда все будет готово, вы можете переместить развернутое приложение из тестовой среды в рабочую, нажав кнопку Swap. При этом новое развертывание из тестовой среды будет перенесено в рабочую, а старое развертывание из рабочей среды (если оно есть) –– в тестовую. Активные развертывания в тестовой и рабочей средах могут различаться, но история развертываний ведется одна для всех, независимо от среды.

clip_image070

Дополнительную информацию см. в разделе Team Foundation Service [9].

Автор: XaocCPS


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/net/14442

Ссылки в тексте:

[1] Microsoft Team Foundation Service: http://tfspreview.com

[2] «Непрерывное развертывание облачных приложений в Windows Azure»: http://www.windowsazure.com/en-us/develop/net/common-tasks/continuous-delivery/

[3] отсюда: http://www.microsoft.com/visualstudio/11/en-us/downloads

[4] пакет совместимости GDR: http://www.microsoft.com/en-us/download/details.aspx?Id=29082

[5] по этой ссылке: http://go.microsoft.com/fwlink/?LinkId=239540&amp;clcid=0x409

[6] https://tfspreview.com: https://tfspreview.com

[7] <имя_пользователя>.tfspreview.com: http://<имя_пользователя>.tfspreview.com

[8] портале Windows Azure Preview: http://manage.windowsazure.com/

[9] Team Foundation Service: http://go.microsoft.com/fwlink/?LinkId=253861&amp;clcid=0x409