Задачи Team Foundation Build
Обновлен: Ноябрь 2007
Задачи MSBuild содержатся в целевых объектах. В этих задачах предоставляется код, выполняющийся во время процесса построения. Система MSBuild предоставляет библиотеку часто используемых задач. Дополнительные сведения см. в разделе Справочные сведения о задачах MSBuild.
В файле .targets системы MSBuild для системы Team Foundation Build, Microsoft.TeamFoundation.Build.targets, определены несколько задач Team Foundation Build, которые можно настроить, устанавливая свойства в файле TfsBuild.proj. Например, целевой объект CoreGet содержит задачу Get, которая позволяет извлечь определенный набор изменений для типа построения. По умолчанию задача Get извлекает последние файлы. Дополнительные сведения о файлах .targets см. в разделе Файлы Targets в MSBuild.
Список задач по умолчанию в файле Microsoft.TeamFoundation.Build.targets
Следующие задачи можно настроить, изменяя их свойства.
Задача Team Foundation Build |
Связанный целевой объект |
---|---|
Синхронизирует источники на компьютере построения. Также вызывает события журнала, чтобы проинформировать средство ведения журнала о каждом файле и версии, извлеченных в локальную рабочую область. |
Get |
Помечает все исходные файлы заданной рабочей области. |
Label |
Задача GenCheckinNotesUpdateWorkItems Генерирует список всех наборов изменений и рабочих элементов, созданных или измененных во время построения. Метки используются, чтобы пометить конкретное построение. |
Целевой объект GetChangeSetsAndUpdateWorkitems вызывается, если построение завершилось удачно. Целевой объект GetChangeSetsOnBuildBreak вызывается, если построение завершилось неудачно. |
Создает новый рабочий элемент для сбоев, произошедших во время процесса построения. Также обновляет поле Found In в рабочем элементе ссылкой на определенный номер построения. |
CreateWorkItem |
Создает новую рабочую область на компьютере построения. |
InitializeWorkspace |
Удаляет рабочую область, созданную во время выполнения построения. Действительные файлы не удаляются с компьютера построения. Если заданная рабочая область не существует, задача DeleteWorkspaceTask выдает предупреждение. |
InitializeWorkspace |
Задача UpdateBuildNumberDropLocation Создает в заданном расположении папку для размещения созданных во время построения файлов. Также обновляет номер построения. |
InitializeEndToEndIteration |
Выполняет набор тестов во время построения и публикует результаты. |
RunTestWithConfiguration |
Добавляет в построение этапы построения. |
None |
Выводит начальные значения для свойств построения. |
InitializeBuildProperties |
Устанавливает любое свойство построения, которое подлежит установке. |
None |
WorkspaceItemConverterTask, задание Преобразует элементы сервера контроля версий в элементы локальной рабочей области и наоборот. |
ResolveSolutionPathsForEndToEndIteration и ResolveTestFilesForEndToEndIteration |
Изменение задач Team Foundation Build
Чтобы изменить задачи, определенные в файлы определения Microsoft.TeamFoundation.Build.targets, проверьте свойства задачи, которую хотите изменить, а затем укажите эти свойства в файле TfsBuild.proj для типа построения Team Foundation Build. Задача CreateNewWorkItem определяется следующим образом.
<!-- Create WorkItem for build failure -->
<CreateNewWorkItem
BuildId="$(BuildNumber)"
Description="$(WorkItemDescription)"
TeamProject="$(TeamProject)"
TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
Title="$(WorkItemTitle)"
WorkItemFieldValues="$(WorkItemFieldValues)"
WorkItemType="$(WorkItemType)"
ContinueOnError="true" />
Чтобы настроить рабочий элемент, созданный при сбое построения, задайте свойство WorkItemFieldValues в файле TFSBuild.proj:
Примечание. |
---|
В следующем примере предполагается, что свойства Areapath и IterationPath также заданы. |
<WorkItemFieldValues>Area Path=$(AreaPath);Iteration Path=$(IterationPath);Severity=1;Priority=0;Symptom=build break;Steps To Reproduce=Start the build using Team Build;Source=Development;How Found=Build Break;Assigned To=Active</WorkItemFieldValues>
См. также
Задачи
Практическое руководство. Использование переменных среды в построении
Основные понятия
Описание файлов конфигурации Team Foundation Build