Опубликован: 12.03.2009 | Уровень: для всех | Доступ: платный | ВУЗ: Санкт-Петербургский государственный университет
Лекция 17:

Практикум

Тема 5. Создание и конфигурация автоматической сборки

На данном этапе команда должна создать в своем проекте процедуру автоматической сборки. При этом должно быть создано несколько процедур:

  1. Простая процедура, включающая только сборку.
  2. Полная процедура, включающая тесты и анализ кода.

После создания сборок необходимо настроить параметры непрерывной интеграции:

  1. Простая сборка должна запускаться после каждого внесенного изменений, но не чаше чем раз в 5 минут.
  2. Полная сборка должна запускаться каждую ночь.

Шаг 1. Создание простой сборки

Все результаты сборки, проведенной TFS, выкладываются в разделяемую папку, на запись в которую есть права у пользователя, с правами которого работает сервер автоматических сборок (обычно – TFSBuild), а также у пользователя, с правами которого работает сам TFS (обычно – TFSService). Как правило, учащиеся не обладают достаточным количеством прав для создания такого рода папок, поэтому они должны быть заранее подготовлены преподавателем.

Для создания простой сборки необходимо обратится к окну Team Explorer, после чего в разделе Builds выбрать команду Build Definitions:

Вызов этой команды приведет к открытию мастера, в котором нужно задать следующие параметры сборки:

  1. Задать имя и описание сборки:
  2. На закладке Project File, создать новое описание сборки используя кнопку Create, после чего задав проекты и конфигурации для сборки:
  3. На закладке Build Defaults создать определение агента-сборщика используя кнопку New. Для агента указать имя, описание, и IP адрес сервера сборок (как правило, совпадает с сервером TFS):

  4. На закладке Build Defaults также необходимо задать имя разделяемой папки, в которую будут сложены результаты:

После того, как определение сборки было создано, её необходимо запустить, используя команду Queue new build:


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

Шаг 2. Создание сложной сборки

Создание сложной сборки проходит во многом аналогично созданию сборки простой, за исключением нескольких шагов:

  1. На закладке опций при создании проекта сборки необходимо включить автоматический запуск модульных тестов и анализ кода:
  2. На закладке Build Defaults необходимо задать другую папку для сбора результатов:

После создания сборки необходимо запустить её, и обратить внимание, что результаты сборки включают и результаты тестов:

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

Следующая же собранная сборка будет содержать большое количество предупреждений от анализатора:

Шаг 3. Настройка непрерывной интеграции

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

  1. Вызвать команду Edit build definition:

  2. Задать настройки автоматического запуска на закладке Trigger:
  3. Настроить политику очистки сборок на закладке Retention Policy. Это необходимо для того, чтобы избежать быстрого исчезновения места на машине-сборщике и для удаления из базы TFS информации о второстепенных сборках:

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

  1. В контекстном меню проекта выбрать команду Project Alerts:

  2. В списке событий, о которых нужно слать нотификации, выбрать "a build completes" и задать список адресов электронной почты, на которые нужно отправить сообщение:

После настройки простой сборки для запуска при внесении изменения необходимо проверить работу системы – внести некоторое изменение и дождаться сообщения о сборке.

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

Данил Богданов
Данил Богданов
Илья Макаренко
Илья Макаренко

Добрый день.

Вопрос №1

Какова стоимость получения диплома о мини-МБА по данному курсу? Или ориентироваться на указанную на сайте?

Вопрос №2

Возможно ли начать обучение без потери результатов, не отправив документы на зачисление, а отправку выполнить позже?

Александр Кулаков
Александр Кулаков
Россия, Челябинск
Максим Овцин
Максим Овцин
Россия, Санкт-Петербург, НИУ ИТМО