Переменные среды Team Foundation Build
Переменные среды TF_BUILD можно использовать для получения ключевых битов данных, необходимых для логики процесса сборки. Например, можно получить путь к исходной папке или путь к папке, содержащей выходные данные, которые требуется сбросить.
Переменные среды TF_BUILD
Использование переменных среды в MSBuild
Использование переменных среды в программах или скриптах
Использование переменных среды в пользовательском процессе сборки
Переменные среды TF_BUILD
TF_BUILD Устанавливается TFBuild равным значению True, чтобы можно было сделать части скрипта условными в зависимости от того, запускается ли ваш скрипт TFBuild или нет.
TF_BUILD_BINARIESDIRECTORY Каталог, из которого процесс сборки копирует выходные файлы в расположение промежуточного хранения. Этот каталог является подкаталогом рабочего каталога агента сборки. Например, C:\Build\BuildBot3\CoolApp\CIBuild\bin.
TFBuild автоматически создает этот каталог и помещает в него выходные данные сборки, если для параметра Местоположение выходных файлов не задано значение AsConfigured. В этом случае вы можете использовать свои скрипты для копирования файлов, которые необходимо сбросить в этот каталог.
Примечание
Ваш скрипт также должен быть способен обеспечивать создание или очистку этого каталога по мере необходимости.Пример см. в разделе Выполнение скрипта в процессе сборки.
TF_BUILD_BUILDDEFINITIONNAME имя определения сборки.
TF_BUILD_BUILDDIRECTORY Рабочий каталог агента сборки. Например, C:\Build\BuildBot3\CoolApp\CIBuild.
TF_BUILD_BUILDNUMBER Номер сборки этой сборки. Например, CIBuild_20130613.6.
TF_BUILD_BUILDREASON Причина сборки для этой сборки. Например, IndividualCI.
TF_BUILD_BUILDURI URI для сборки. Например, vstfs:///Build/Build/35.
TF_BUILD_COLLECTIONURI Универсальный код ресурса (URI) коллекции командных проектов. Например: http://fabrikam-2:8080/tfs/DefaultCollection (для использования этой переменной среды на компьютере должен быть установлен продукт Visual Studio 2012 с обновлением 2 или более поздние версии).
TF_BUILD_DROPLOCATION Расположение размещения. Пример размещения с использованием пути UNC: \\fabrikam-1\Drops\CIBuild\CIBuild_20130613.6. Пример размещения на Team Foundation Server: #/11/drop.
TF_BUILD_SOURCEGETVERSION Собираемая версия (набор изменений TFVC или фиксация Git).
TF_BUILD_SOURCESDIRECTORY Вложенный каталог источников в рабочем каталоге агента сборки. Этот каталог содержит ваш исходный код. Например, C:\Build\BuildBot3\CoolApp\CIBuild\src.
Пример см. в разделе Выполнение скрипта в процессе сборки.
TF_BUILD_TESTRESULTSDIRECTORY Вложенный каталог результатов тестирования в рабочем каталоге агента сборки. Например, C:\Build\BuildBot3\CoolApp\CIBuild\tst.
Использование данных переменных среды в MSBuild
При использовании MSBuild для компиляции кода (с помощью шаблона по умолчанию или в пользовательском процессе сборки с помощью действия MSBuild) можно передавать аргументы для управления работой. Кроме того некоторые проекты кода включают в себя специальные целевые объекты, которые можно вызвать с использованием этих аргументов. Можно использовать переменные среды TF_BUILD для включения этих параметров без изменения XML-кода в файле проекта кода.
Например, вы используете шаблон по умолчанию для сборки проекта веб-приложения ASP.NET, и вам необходимо поместить только веб-пакет в расположение промежуточного хранения. Для этого отредактируйте определение сборки и:
Задайте для параметра процесса Размещение вывода значение AsConfigured.
Добавьте в аргументы MSBuild что-либо подобное следующим параметрам:
/p:DeployOnBuild=true;DeployMethod=Package /p:DefaultPackageOutputDir=”$(TF_BUILD_BINARIESDIRECTORY)”\WebPackage
Использование данных среды в программах или скриптах
Можно также передавать переменные среды TF_BUILD программам и скриптам других владельцев. Не требуется передавать их своим скриптам, если ваш скрипт получает доступ к ним, используя приведенные выше имена. Некоторые примеры см. в разделе Выполнение скрипта в процессе сборки.
Использование данных среды в пользовательском процессе сборки
Если требуется использовать переменную среды в пользовательском шаблоне процесса сборки, для получения данных можно использовать действие GetEnvironmentVariable. Данные можно получить из любого объекта WellKnownEnvironmentVariables.
Например, чтобы получить путь к каталогу двоичных файлов, задайте для свойства Name действия GetEnvironmentVariable значение Microsoft.TeamFoundation.Build.Activities.Extensions.WellKnownEnvironmentVariables.BinariesDirectory