Определение процесса построения для поддержки непрерывной интеграции

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

Содержание раздела

  • Определение процесса построения для поддержки непрерывной интеграции

  • Правила повышения функциональности и производительности процесса построения

  • Следующие шаги

Определение процесса построения для поддержки непрерывной интеграции

Необходимые разрешения

Для выполнения данной процедуры необходимо задать для разрешения Редактировать определение построения значение Разрешить.Дополнительные сведения см. в разделе Разрешения Team Foundation Server.

Определение процесса построения для поддержки непрерывной интеграции

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

    1. Если вы еще не подключены к командному проекту, в котором вы должны работать, подключитесь к командному проекту.

    2. Выберите Значок "Начало"Главная, а затем выберите Значок построенийПостроения.

    3. На странице Построения выберите Новое определение построения.

    Откроется окно Определение построения.

  2. На вкладке Триггер выберите Непрерывная интеграция.

    СоветСовет

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

  3. На вкладке Рабочая область в таблице Рабочие папки укажите папки управления версиями, за которыми должно следить определение построения.

    СоветСовет

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

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

  5. На вкладке Процесс в Шаблон процесса построения, шаблон по умолчанию выбирается по умолчанию.Укажите в параметре Элементы для построения решения или проекты кода, которые нужно построить.

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

    Дополнительные сведения см. в разделе Правила повышения функциональности и производительности процесса построения далее в этом разделе.

  7. Укажите параметры процесса построения на других вкладках.Дополнительные сведения см. в разделе Создание определения построения.

Правила повышения функциональности и производительности процесса построения

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

Обязательный узел

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

    • если пара платформа-конфигурация строится быстрее, чем другие пары, следует указать ее в значении данного параметра;

    • укажите как можно меньше пар платформа-значение.

Основной узел

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

  • Выполнить анализ кода: Для повышения производительности, установите это свойство в значение Никогда.

  • Параметры сервера символов и источников, Индексация источников: Для повышения производительности, установите это свойство в значение Ложь.

Дополнительный узел

  • Параметры агента

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

    • Максимальное время выполнения: Задайте для этого параметра разумно приемлемое времяК примеру, 15 минут могут не представлять для команды никакой проблемы, а восемь часов — уже слишком много.

  • Создать рабочий элемент при ошибке: Установите в значение Истина, если требуется, чтобы процесс построения отправил ошибку разработчику, чье возвращение, вызвавшее построения, завершается неудачей.

  • Отключение тестов:

    • Для повышения производительности выберите Истина.

    • Если код должен вызывать некоторые тесты, выберите Ложь, а затем определите набор тестов для запуска в построении.Можно улучшить производительность, запустив только тесты, которые необходимы.Чтобы назначить эти тесты, отфильтруйте их по категориям или по приоритетам.Дополнительные сведения см. в разделе Выполнение тестов в процессе построения.

  • Пометка источников: Установите в значение Истина, если нужно пометить код именем завершенного построения.Эта метка может быть полезна для команды.Например, метка помогает команде определять «последнюю удачную» версию программного кода.В противном случае установите значение Ложь, чтобы увеличить производительность.

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

Следующие шаги

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

Можно указать такие проблемы, как ошибки построения или неуспешное выполнение основных модульных тестов, намного быстрее при использовании триггера Непрерывная интеграция.Однако можно отключить данные типы проблем внедрения в базу кода, если использовать триггер Условный возврат.Дополнительные сведения см. в разделе Определение процесса построения с условным возвратом для проверки изменений.

Связанные разделы

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