Использование предопределенных переменных
Azure DevOps Services | Azure DevOps Server 2022 г. - Azure DevOps Server 2019 г. | TFS 2018
Примечание
В Microsoft Team Foundation Server (TFS) 2018 и предыдущих версий конвейеры сборки и выпуска называются определениями, выполнения называются сборками, подключения к службам называются конечными точками служб, этапы называются средами, а задания называются этапами.
Переменные предоставляют удобный способ получения ключевых битов данных в различных частях конвейера. Это список предопределенных переменных, доступных для использования. Может существовать несколько других предопределенных переменных, но они в основном для внутреннего использования.
Эти переменные автоматически задаются системой и доступны только для чтения. (Исключениями являются Build.Clean и System.Debug.)
В конвейерах YAML можно ссылаться на предопределенные переменные как на переменные среды. Например, переменная Build.ArtifactStagingDirectory
становится переменной BUILD_ARTIFACTSTAGINGDIRECTORY
.
Для классических конвейеров можно использовать переменные выпуска в задачах развертывания для совместного использования общих сведений (например, имя среды, группа ресурсов и т. д.).
Дополнительные сведения о работе с переменными.
Build.Clean
Это нерекомендуемая переменная, которая изменяет способ очистки источника агентом сборки. Сведения о том, как очистить источник, см. в статье Очистка локального репозитория в агенте.
System.AccessToken
System.AccessToken
— это специальная переменная, которая содержит маркер безопасности, используемый выполняющейся сборкой.
В YAML необходимо явно сопоставить System.AccessToken
с конвейером с помощью переменной . Это можно сделать на уровне шага или задачи:
steps:
- bash: echo This script could use $SYSTEM_ACCESSTOKEN
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
- powershell: |
Write-Host "This is a script that could use $env:SYSTEM_ACCESSTOKEN"
Write-Host "$env:SYSTEM_ACCESSTOKEN = $(System.AccessToken)"
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
Вы можете настроить область по умолчанию для System.AccessToken
использования области авторизации задания сборки.
System.Debug
Чтобы получить более подробные журналы для отладки проблем конвейера, определите System.Debug
и задайте для него значение true
.
Измените конвейер.
Выберите элемент Variables (Переменные).
Добавьте новую переменную с именем
System.Debug
и значениемtrue
.Сохраните новую переменную.
Если задано значение System.Debug
, true
будут настроены подробные журналы для всех запусков. Вы также можете настроить подробные журналы для одного запуска с помощью флажка Включить диагностику системы . Дополнительные сведения см. в статье Просмотр журналов для диагностики проблем конвейера.
Переменные агента (DevOps Services)
Примечание
Переменные агента можно использовать в качестве переменных среды в скриптах и в качестве параметров в задачах сборки. Их нельзя использовать для настройки номера сборки или применения метки или тега системы управления версиями.
Переменная | Описание |
---|---|
Agent.BuildDirectory |
Локальный путь к агенту, где создаются все папки для заданного конвейера сборки. Эта переменная имеет то же значение, что и Пример: |
Agent.ContainerMapping |
Сопоставление имен ресурсов контейнера в YAML с идентификаторами Docker во время выполнения. Пример: |
Agent.HomeDirectory | Каталог, в который устанавливается агент. Содержит программное обеспечение агента. Например: c:\agent . |
Agent.Id | Идентификатор агента. |
Agent.JobName | Имя выполняющегося задания. Обычно это будет "Задание" или "__default", но в сценариях с несколькими конфигурациями будет конфигурация. |
Agent.JobStatus | Состояние сборки.
На переменную среды следует ссылаться как |
Agent.MachineName | Имя компьютера, на котором установлен агент. |
Agent.Name |
Имя агента, зарегистрированного в пуле. Если вы используете локальный агент, это имя указывается вами. См. раздел Агенты. |
Agent.OS |
Операционная система узла агента. Допустимые значения:
|
Agent.OSArchitecture |
Архитектура процессора операционной системы узла агента. Допустимые значения:
|
Agent.TempDirectory |
Временная папка, очищаемая после каждого задания конвейера. Этот каталог используется такими задачами, как .NET Core CLI, для хранения временных элементов, таких как результаты теста, перед их публикацией. Например: |
Agent.ToolsDirectory |
Каталог, используемый такими задачами, как Node Tool Installer и Использование версии Python для переключения между несколькими версиями средства.
Эти задачи будут добавлять средства из этого каталога в , PATH чтобы их можно было использовать в последующих шагах сборки.
Сведения об управлении этим каталогом в локальном агенте. |
Agent.WorkFolder |
Рабочий каталог для этого агента.
Например: c:\agent_work .
Примечание. Этот каталог не гарантируется для записи задачами конвейера (например, при сопоставлении с контейнером). |
Переменные сборки (DevOps Services)
Переменная | Описание | Доступно в шаблонах? |
---|---|---|
Build.ArtifactStagingDirectory |
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Нет |
Build.BuildId | Идентификатор записи для завершенной сборки. | Нет |
Build.BuildNumber | Имя завершенной сборки, также известное как номер запуска. Можно указать , что входит в это значение. Обычно эта переменная используется для того, чтобы сделать ее частью формата меток, который указывается на вкладке репозитория. Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой.
|
Нет |
Build.BuildUri | Универсальный код ресурса (URI) для сборки. Например: vstfs:///Build/Build/1430 .
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.BinariesDirectory | Локальный путь к агенту, который можно использовать в качестве выходной папки для скомпилированных двоичных файлов.
По умолчанию новые конвейеры сборки не настроены для очистки этого каталога. Вы можете определить сборку, чтобы очистить ее, на вкладке Репозиторий. Например: c:\agent_work\1\b .
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.ContainerId | Идентификатор контейнера для артефакта. При отправке артефакта в конвейер он добавляется в контейнер, который относится к конкретному артефакту. | Нет |
Build.DefinitionName | Имя конвейера сборки.
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Да |
Build.DefinitionVersion | Версия конвейера сборки. | Да |
Build.QueuedBy | См. раздел "Как задаются переменные удостоверений?".
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Да |
Build.QueuedById | См. раздел "Как задаются переменные удостоверений?". | Да |
Build.Reason | Событие, вызвавшее выполнение сборки.
|
Да |
Build.Repository.Clean | Значение, выбранное для параметра Очистить в параметрах исходного репозитория.
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.LocalPath |
Локальный путь к агенту, куда скачиваются файлы исходного кода. Пример: Важное примечание. Если вы извлекаете только один репозиторий Git, этот путь будет точным путем к коду. При извлечении нескольких репозиториев поведение выглядит следующим образом (и может отличаться от значения переменной Build.SourcesDirectory):
|
Нет |
Build.Repository.ID | Уникальный идентификатор репозитория.
Это не изменится, даже если имя репозитория не изменится. Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.Name | Имя запускающего репозитория.
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.Provider | Тип актививного репозитория.
|
Нет |
Build.Repository.Tfvc.Workspace | Определяется, является ли репозиторий система управления версиями Team Foundation. Имя рабочей области TFVC , используемой агентом сборки.
Например, если Agent.BuildDirectory имеет значение c:\agent_work\12 , а Agent.Id — 8 , имя рабочей области может быть следующим: ws_12_8
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.Uri | URL-адрес запускающего репозитория. Пример: Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. | Нет |
Build.RequestedFor | См. раздел Как задаются переменные удостоверений?
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Да |
Build.RequestedForEmail | См. раздел Как задаются переменные удостоверений? | Да |
Build.RequestedForId | См. раздел Как задаются переменные удостоверений? | Да |
Build.SourceBranch | Ветвь репозитория, запускающего сборку, была поставлена в очередь. Некоторые примеры.
/ ) заменяются символами _ подчеркивания .
Примечание. В TFVC, если вы выполняете сборку с закрытой проверкой или вручную создаете набор полок, эту переменную нельзя использовать в формате номера сборки. |
Да |
Build.SourceBranchName | Имя ветви в актививном репозитории, для который была поставлена сборка в очередь.
|
Да |
Build.SourcesDirectory |
Локальный путь к агенту, по которому скачиваются файлы исходного кода. Пример: Важное примечание. Если вы извлекаете только один репозиторий Git, этот путь будет точным путем к коду. При извлечении нескольких репозиториев он вернется к значению по умолчанию, то есть |
Нет |
Build.SourceVersion | Последнее изменение системы управления версиями в актививном репозитории, включенном в эту сборку.
|
Да |
Build.SourceVersionMessage | Комментарий фиксации или набора изменений для запускающего репозитория. Мы усекаем сообщение до первой строки или до 200 символов, в зависимости от того, какой из них короче.
Соответствует Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. Кроме того, эта переменная доступна только на уровне шага и недоступна ни на уровне задания, ни на уровне стадии (т. е. сообщение не извлекается до тех пор, пока задание не начнется и не извлекается код). Примечание. Эта переменная доступна в TFS 2015.4. Примечание Переменная Build.SourceVersionMessage не работает с классическими конвейерами сборки в репозиториях Bitbucket при изменении пакетной службы во время выполнения сборки . |
Нет |
Build.StagingDirectory |
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Нет |
Build.Repository.Git.SubmoduleCheckout | Значение, выбранное для подмодулей "Извлечь " на вкладке репозитория. При извлечении нескольких репозиториев это значение отслеживает параметр запускающего репозитория.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Build.SourceTfvcShelveset | Определяется, если репозиторий система управления версиями Team Foundation.
Если вы используете закрытую сборку или сборку с набором стеллажей, это будет называться набор стеллажей , который вы создаете. Примечание. Эта переменная возвращает недопустимое значение для использования сборки в числовом формате. |
Нет |
Build.TriggeredBy.BuildId | Если сборка была активирована другой сборкой, то для этой переменной присваивается значение BuildID запускающей сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. При активации конвейера YAML с помощью resources следует использовать переменные ресурсов .
|
Нет |
Build.TriggeredBy.DefinitionId | Если сборка была активирована другой сборкой, для этой переменной присваивается значение DefinitionID запускающей сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. При активации конвейера YAML с помощью resources следует использовать переменные ресурсов .
|
Нет |
Build.TriggeredBy.DefinitionName | Если сборка была активирована другой сборкой, для этой переменной присваивается имя запускающего конвейера сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. При активации конвейера YAML с помощью resources следует использовать переменные ресурсов .
|
Нет |
Build.TriggeredBy.BuildNumber | Если сборка была активирована другой сборкой, для этой переменной присваивается номер запускающей сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. При активации конвейера YAML с помощью resources следует использовать переменные ресурсов .
|
Нет |
Build.TriggeredBy.ProjectID | Если сборка была активирована другой сборкой, то этой переменной присваивается идентификатор проекта, содержащего сборку, актививную. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. При активации конвейера YAML с помощью resources следует использовать переменные ресурсов .
|
Нет |
Common.TestResultsDirectory | Локальный путь к агенту, в котором создаются результаты теста. Пример: c:\agent_work\1\TestResults
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Переменные конвейера (DevOps Services)
Переменная | Описание |
---|---|
Pipeline.Workspace | Каталог рабочей области для определенного конвейера. Эта переменная имеет то же значение, что и Agent.BuildDirectory .Например, /home/vsts/work/1 . |
Совет
Если вы используете классические конвейеры выпуска, вы можете использовать классические выпуски и переменные артефактов для хранения данных в конвейере и доступа к ней.
Переменные задания развертывания (DevOps Services)
Эти переменные относятся к определенному заданию развертывания и разрешаются только во время выполнения задания.
Переменная | Описание |
---|---|
Environment.Name | Имя среды, предназначенной в задании развертывания для выполнения шагов развертывания и записи журнала развертывания. Например, smarthotel-dev . |
Environment.Id | Идентификатор среды, целевой в задании развертывания. Например, 10 . |
Environment.ResourceName | Имя конкретного ресурса в среде, предназначенной в задании развертывания для выполнения шагов развертывания, и записи журнала развертывания. Например, bookings это пространство имен Kubernetes, добавленное в качестве ресурса в среду smarthotel-dev . |
Environment.ResourceId | Идентификатор конкретного ресурса в среде, предназначенной в задании развертывания для выполнения шагов развертывания. Например, 4 . |
Strategy.Name | Имя стратегии развертывания: canary , runOnce или rolling . |
Strategy.CycleName | Имя текущего цикла в развертывании. Параметры: PreIteration , Iteration или PostIteration . |
Системные переменные (DevOps Services)
Переменная | Описание | Доступно в шаблонах? |
---|---|---|
System.AccessToken | Используйте маркер OAuth для доступа к REST API.
Используйте System.AccessToken из скриптов YAML. Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Да |
System.CollectionId | GUID коллекции TFS или организации Azure DevOps. | Да |
System.CollectionUri | Универсальный код ресурса (URI) коллекции TFS или организации Azure DevOps. Например: https://dev.azure.com/fabrikamfiber/ . |
Да |
System.DefaultWorkingDirectory |
Локальный путь к агенту, по которому скачиваются файлы исходного кода. Пример: |
Да |
System.DefinitionId | Идентификатор конвейера сборки. | Да |
System.HostType | Задайте значение , build если конвейер является сборкой. Для выпуска используются deployment значения для задания группы развертывания, gates во время оценки шлюзов и release для других заданий (без агента и без агента). |
Да |
System.JobAttempt | Установите значение 1 при первой попытке задания и увеличивается каждый раз при повторной попытке задания. | Нет |
System.JobDisplayName | Понятное имя, данное заданию. | Нет |
System.JobId | Уникальный идентификатор для одной попытки одного задания. Значение уникально для текущего конвейера. | Нет |
System.JobName | Имя задания, которое обычно используется для выражения зависимостей и доступа к выходным переменным. | Нет |
System.PhaseAttempt | Установите значение 1 при первой попытке этого этапа и увеличивается каждый раз при повторной попытке задания. Примечание: "Этап" — это в основном избыточное понятие, представляющее время разработки для задания (в то время как задание было версией среды выполнения этапа). Мы в основном удалили понятие "этап" из Azure Pipelines. Матричные и многоконфигурные задания являются единственным местом, где "фаза" по-прежнему отличается от "задания". На одном этапе можно создать экземпляры нескольких заданий, которые отличаются только своими входными данными. |
Нет |
System.PhaseDisplayName | Понятное имя этапа. | Нет |
System.PhaseName | Строковый идентификатор для задания, который обычно используется для выражения зависимостей и доступа к выходным переменным. | Нет |
System.PlanId | Строковый идентификатор для одного запуска конвейера. | Нет |
System.PullRequest.IsFork | Если запрос на вытягивание выполняется из вилки репозитория, эта переменная имеет значение True .
В противном случае ему присваивается значение False . |
Да |
System.PullRequest.PullRequestId | Идентификатор запроса на вытягивание, вызвавшего эту сборку. Например: 17 . (Эта переменная инициализируется только в том случае, если сборка выполнялась из-за запроса на вытягивание Git, затронутого политикой ветви. |
Нет |
System.PullRequest.PullRequestNumber | Номер запроса на вытягивание, вызвавшего эту сборку. Эта переменная заполняется для запросов на вытягивание из GitHub с другим идентификатором и номером запроса на вытягивание. Эта переменная доступна в конвейере YAML, только если на запрос запроса влияет политика ветви. | Нет |
System.PullRequest.SourceBranch | Ветвь, которая проверяется в запросе на вытягивание. Например: refs/heads/users/raisa/new-feature для Azure Repos. (Эта переменная инициализируется только в том случае, если сборка выполнялась из-за запроса на вытягивание Git, затронутого политикой ветви. Эта переменная доступна в конвейере YAML, только если на запрос запроса влияет политика ветви. |
Нет |
System.PullRequest.SourceRepositoryURI | URL-адрес репозитория, содержащего запрос на вытягивание. Например: https://dev.azure.com/ouraccount/_git/OurProject . |
нет |
System.PullRequest.TargetBranch | Ветвь, которая является целевой для запроса на вытягивание. Например, refs/heads/main если репозиторий находится в Azure Repos, а main репозиторий — в GitHub. Эта переменная инициализируется только в том случае, если сборка выполнялась из-за запроса на вытягивание Git, затронутого политикой ветви. Эта переменная доступна в конвейере YAML, только если на запрос запроса влияет политика ветви. |
Нет |
System.StageAttempt | Задайте значение 1 при первой попытке выполнения этого этапа и увеличивается при каждой повторной попытке задания. | Нет |
System.StageDisplayName | Понятное для человека имя, присвоенное сцене. | Нет |
System.StageName | Строковый идентификатор этапа, который обычно используется для выражения зависимостей и доступа к выходным переменным. | Нет |
System.TeamFoundationCollectionUri | Универсальный код ресурса (URI) коллекции TFS или организации Azure DevOps. Например: https://dev.azure.com/fabrikamfiber/ .
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Да |
System.TeamProject | Имя проекта, содержащего эту сборку. | Да |
System.TeamProjectId | Идентификатор проекта, к которому принадлежит эта сборка. | Да |
System.TimelineId | Строковый идентификатор для сведений о выполнении и журналов одного запуска конвейера. | Нет |
TF_BUILD | Задайте значение , True если скрипт выполняется задачей сборки.
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Проверка переменных (DevOps Services)
Переменная | Описание |
---|---|
Checks.StageAttempt | Установите значение 1 при первой попытке выполнения этого этапа и увеличивается каждый раз при повторной попытке этапа.
Эту переменную можно использовать только при утверждении или проверке среды. Например, можно использовать $(Checks.StageAttempt) в проверке вызова REST API. |
Переменные агента (DevOps Server)
Примечание
Переменные агента можно использовать в качестве переменных среды в скриптах и в качестве параметров в задачах сборки. Их нельзя использовать для настройки номера сборки или применения метки или тега системы управления версиями.
Переменная | Описание |
---|---|
Agent.BuildDirectory |
Локальный путь к агенту, где создаются все папки для заданного конвейера сборки. Эта переменная имеет то же значение, что и Пример: |
Agent.HomeDirectory | Каталог, в который устанавливается агент. Содержит программное обеспечение агента. Например: c:\agent . |
Agent.Id | Идентификатор агента. |
Agent.JobName | Имя выполняющегося задания. Обычно это будет "Задание" или "__default", но в сценариях с несколькими конфигурациями будет конфигурация. |
Agent.JobStatus | Состояние сборки.
На переменную среды следует ссылаться как |
Agent.MachineName | Имя компьютера, на котором установлен агент. |
Agent.Name |
Имя агента, зарегистрированного в пуле. Если вы используете локальный агент, это имя указывается вами. См. раздел Агенты. |
Agent.OS |
Операционная система узла агента. Допустимые значения:
|
Agent.OSArchitecture |
Архитектура процессора операционной системы узла агента. Допустимые значения:
|
Agent.TempDirectory |
Временная папка, очищаемая после каждого задания конвейера. Этот каталог используется такими задачами, как .NET Core CLI, для хранения временных элементов, таких как результаты теста, перед их публикацией. Например: |
Agent.ToolsDirectory |
Каталог, используемый такими задачами, как Node Tool Installer и Использование версии Python для переключения между несколькими версиями средства.
Эти задачи будут добавлять средства из этого каталога в , PATH чтобы их можно было использовать в последующих шагах сборки.
Сведения об управлении этим каталогом в локальном агенте. |
Agent.WorkFolder |
Рабочий каталог для этого агента.
Например: c:\agent_work .
Примечание. Этот каталог не гарантируется для записи задачами конвейера (например, при сопоставлении с контейнером). |
Переменные сборки (DevOps Server)
Переменная | Описание | Доступно в шаблонах? |
---|---|---|
Build.ArtifactStagingDirectory |
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Нет |
Build.BuildId | Идентификатор записи для завершенной сборки. | Нет |
Build.BuildNumber | Имя завершенной сборки, также известное как номер запуска. Можно указать , что входит в это значение. Обычно эта переменная используется для того, чтобы сделать ее частью формата меток, который указывается на вкладке репозитория. Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой.
|
Нет |
Build.BuildUri | Универсальный код ресурса (URI) для сборки. Например: vstfs:///Build/Build/1430 .
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.BinariesDirectory | Локальный путь к агенту, который можно использовать в качестве выходной папки для скомпилированных двоичных файлов.
По умолчанию новые конвейеры сборки не настроены для очистки этого каталога. Вы можете определить сборку, чтобы очистить ее, на вкладке Репозиторий. Например: c:\agent_work\1\b .
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.ContainerId | Идентификатор контейнера для артефакта. При отправке артефакта в конвейер он добавляется в контейнер, который относится к конкретному артефакту. | Нет |
Build.DefinitionName | Имя конвейера сборки.
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Да |
Build.DefinitionVersion | Версия конвейера сборки. | Да |
Build.QueuedBy | См. раздел "Как задаются переменные удостоверений?".
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Да |
Build.QueuedById | См. раздел "Как задаются переменные удостоверений?". | Да |
Build.Reason | Событие, вызвавшее выполнение сборки.
|
Да |
Build.Repository.Clean | Значение, выбранное для параметра Очистить в параметрах исходного репозитория.
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.LocalPath |
Локальный путь к агенту, куда скачиваются файлы исходного кода. Пример: Важное примечание. Если вы извлекаете только один репозиторий Git, этот путь будет точным путем к коду. При извлечении нескольких репозиториев поведение выглядит следующим образом (и может отличаться от значения переменной Build.SourcesDirectory):
|
Нет |
Build.Repository.ID | Уникальный идентификатор репозитория.
Это не изменится, даже если имя репозитория не изменится. Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.Name | Имя запускающего репозитория.
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.Provider | Тип актививного репозитория.
|
Нет |
Build.Repository.Tfvc.Workspace | Определяется, является ли репозиторий система управления версиями Team Foundation. Имя рабочей области TFVC , используемой агентом сборки.
Например, если Agent.BuildDirectory имеет значение c:\agent_work\12 , а Agent.Id — 8 , имя рабочей области может быть следующим: ws_12_8
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. |
Нет |
Build.Repository.Uri | URL-адрес запускающего репозитория. Пример: Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. | Нет |
Build.RequestedFor | См. раздел "Как задаются переменные удостоверений?".
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Да |
Build.RequestedForEmail | См. раздел "Как задаются переменные удостоверений?". | Да |
Build.RequestedForId | См. раздел "Как задаются переменные удостоверений?". | Да |
Build.SourceBranch | Ветвь запускающего репозитория, для который была поставлена сборка в очередь. Некоторые примеры.
/ ) заменяются символами _ подчеркивания .
Примечание. В TFVC, если вы выполняете сборку с закрытой проверкой или вручную создаете набор полок, эту переменную нельзя использовать в формате номера сборки. |
Да |
Build.SourceBranchName | Имя ветви в актививном репозитории, для который была поставлена сборка в очередь.
|
Да |
Build.SourcesDirectory |
Локальный путь к агенту, куда скачиваются файлы исходного кода. Пример: Важное примечание. Если вы извлекаете только один репозиторий Git, этот путь будет точным путем к коду. При извлечении нескольких репозиториев он вернется к значению по умолчанию, которое равно |
Нет |
Build.SourceVersion | Последнее изменение системы управления версиями в актививном репозитории, включенном в эту сборку.
|
Да |
Build.SourceVersionMessage | Комментарий к фиксации или набору изменений для запускающего репозитория. Мы усекаем сообщение до первой строки или 200 символов, в зависимости от того, какой из них короче.
Эта переменная имеет область действия агента и может использоваться в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не в составе номера сборки или в качестве тега управления версиями. Кроме того, эта переменная доступна только на уровне шага и недоступна ни на уровне задания, ни на уровне этапа (т. е. сообщение не извлекается до запуска задания и извлечения кода). Примечание. Эта переменная доступна в TFS 2015.4. Примечание Переменная Build.SourceVersionMessage не работает с классическими конвейерами сборки в репозиториях Bitbucket при изменении пакетной службы во время выполнения сборки . |
Нет |
Build.StagingDirectory |
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Нет |
Build.Repository.Git.SubmoduleCheckout | Значение, выбранное для подмодулей "Извлечь " на вкладке репозитория. При извлечении нескольких репозиториев это значение отслеживает параметр запускающего репозитория.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Build.SourceTfvcShelveset | Определяется, если репозиторий система управления версиями Team Foundation.
Если вы используете закрытую сборку или сборку с набором стеллажей, это будет называться набор стеллажей , который вы создаете. Примечание. Эта переменная возвращает недопустимое значение для использования сборки в числовом формате. |
Нет |
Build.TriggeredBy.BuildId | Если сборка была активирована другой сборкой, то для этой переменной присваивается значение BuildID запускающей сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Build.TriggeredBy.DefinitionId | Если сборка была активирована другой сборкой, для этой переменной присваивается значение DefinitionID запускающей сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Build.TriggeredBy.DefinitionName | Если сборка была активирована другой сборкой, для этой переменной присваивается имя запускающего конвейера сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Build.TriggeredBy.BuildNumber | Если сборка была активирована другой сборкой, для этой переменной присваивается номер запускающей сборки. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Build.TriggeredBy.ProjectID | Если сборка была активирована другой сборкой, то этой переменной присваивается идентификатор проекта, содержащего сборку, актививную. В классических конвейерах эта переменная активируется триггером завершения сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Common.TestResultsDirectory | Локальный путь к агенту, в котором создаются результаты теста. Пример: c:\agent_work\1\TestResults
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Переменные конвейера (DevOps Server)
Переменная | Описание |
---|---|
Pipeline.Workspace | Каталог рабочей области для определенного конвейера. Эта переменная имеет то же значение, что и Agent.BuildDirectory .Например, /home/vsts/work/1 . |
Переменные задания развертывания (DevOps Server)
Эти переменные относятся к определенному заданию развертывания и разрешаются только во время выполнения задания.
Переменная | Описание |
---|---|
Environment.Name | Имя среды, предназначенной в задании развертывания для выполнения шагов развертывания и записи журнала развертывания. Например, smarthotel-dev . |
Environment.Id | Идентификатор среды, целевой в задании развертывания. Например, 10 . |
Environment.ResourceName | Имя конкретного ресурса в среде, предназначенной в задании развертывания для выполнения шагов развертывания, и записи журнала развертывания. Например, bookings это пространство имен Kubernetes, добавленное в качестве ресурса в среду smarthotel-dev . |
Environment.ResourceId | Идентификатор конкретного ресурса в среде, предназначенной в задании развертывания для выполнения шагов развертывания. Например, 4 . |
Системные переменные (DevOps Server)
Переменная | Описание | Доступно в шаблонах? |
---|---|---|
System.AccessToken | Используйте маркер OAuth для доступа к REST API.
Используйте System.AccessToken из скриптов YAML. Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Да |
System.CollectionId | GUID коллекции TFS или организации Azure DevOps | Да |
System.CollectionUri | Строковый URI коллекции Team Foundation Server. | Да |
System.DefaultWorkingDirectory |
Локальный путь к агенту, по которому скачиваются файлы исходного кода. Пример: |
Нет |
System.DefinitionId | Идентификатор конвейера сборки. | Да |
System.HostType | Задайте значение , build если конвейер является сборкой. Для выпуска используются deployment значения для задания группы развертывания, gates во время оценки шлюзов и release для других заданий (без агента и без агента). |
Да |
System.JobAttempt | Установите значение 1 при первой попытке задания и увеличивается каждый раз при повторной попытке задания. | Нет |
System.JobDisplayName | Понятное имя, данное заданию. | Нет |
System.JobId | Уникальный идентификатор для одной попытки одного задания. Значение уникально для текущего конвейера. | Нет |
System.JobName | Имя задания, которое обычно используется для выражения зависимостей и доступа к выходным переменным. | Нет |
System.PhaseAttempt | Установите значение 1 при первой попытке этого этапа и увеличивается каждый раз при повторной попытке задания. Примечание: "Этап" — это в основном избыточное понятие, представляющее время разработки для задания (в то время как задание было версией этапа среды выполнения). Мы в основном удалили понятие "этап" из Azure Pipelines. Матричные и многоконфигурные задания являются единственным местом, где "фаза" по-прежнему отличается от "задания". На одном этапе можно создать экземпляры нескольких заданий, которые отличаются только своими входными данными. |
Нет |
System.PhaseDisplayName | Понятное имя этапа. | Нет |
System.PhaseName | Строковый идентификатор задания, который обычно используется для выражения зависимостей и доступа к выходным переменным. | Нет |
System.StageAttempt | Установите значение 1 при первой попытке этого этапа и увеличивается каждый раз при повторной попытке задания. | Нет |
System.StageDisplayName | Понятное имя, данное сцене. | Нет |
System.StageName | Строковый идентификатор для этапа, который обычно используется для выражения зависимостей и доступа к выходным переменным. | Да |
System.PullRequest.IsFork | Если запрос на вытягивание выполняется из вилки репозитория, эта переменная имеет значение True .
В противном случае ему присваивается значение False . |
Да |
System.PullRequest.PullRequestId | Идентификатор запроса на вытягивание, вызвавшего эту сборку. Например: 17 . (Эта переменная инициализируется только в том случае, если сборка была выполнена из-за запроса на вытягивание Git, затронутого политикой ветви. |
Нет |
System.PullRequest.PullRequestNumber | Номер запроса на вытягивание, вызвавшего эту сборку. Эта переменная заполняется для запросов на вытягивание из GitHub с другим идентификатором и номером запроса на вытягивание. Эта переменная доступна в конвейере YAML, только если на запрос запроса влияет политика ветви. | Нет |
System.PullRequest.SourceBranch | Ветвь, проверяемая в запросе на вытягивание. Например: refs/heads/users/raisa/new-feature . (Эта переменная инициализируется только в том случае, если сборка была выполнена из-за запроса на вытягивание Git, затронутого политикой ветви. Эта переменная доступна в конвейере YAML только в том случае, если на запрос запроса влияет политика ветви. |
Нет |
System.PullRequest.SourceRepositoryURI | URL-адрес репозитория, содержащего запрос на вытягивание. Например: https://dev.azure.com/ouraccount/_git/OurProject . |
нет |
System.PullRequest.TargetBranch | Ветвь, которая является целевым объектом запроса на вытягивание. Например, refs/heads/main когда репозиторий находится в Azure Repos, а main репозиторий — в GitHub. Эта переменная инициализируется только в том случае, если сборка была выполнена из-за запроса на вытягивание Git, затронутого политикой ветви. Эта переменная доступна в конвейере YAML только в том случае, если на запрос запроса влияет политика ветви. |
Нет |
System.TeamFoundationCollectionUri | Универсальный код ресурса (URI) коллекции team Foundation. Пример: https://dev.azure.com/fabrikamfiber/
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Да |
System.TeamProject | Имя проекта, содержащего эту сборку. | Да |
System.TeamProjectId | Идентификатор проекта, к которому принадлежит эта сборка. | Да |
TF_BUILD | Задайте значение , True если скрипт выполняется задачей сборки.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Нет |
Переменные агента (DevOps Server 2019 г.)
Примечание
Переменные агента можно использовать в качестве переменных среды в скриптах и в качестве параметров в задачах сборки. Их нельзя использовать для настройки номера сборки или применения метки или тега управления версиями.
Переменная | Описание |
---|---|
Agent.BuildDirectory |
Локальный путь к агенту, в котором создаются все папки для заданного конвейера сборки. Пример: |
Agent.HomeDirectory | Каталог, в который устанавливается агент. Он содержит программное обеспечение агента. Например: c:\agent . |
Agent.Id | Идентификатор агента. |
Agent.JobName | Имя выполняющегося задания. Обычно это будет "Задание" или "__default", но в сценариях с несколькими конфигурациями будет конфигурация. |
Agent.JobStatus | Состояние сборки.
Переменная среды должна быть указана как |
Agent.MachineName | Имя компьютера, на котором установлен агент. |
Agent.Name |
Имя агента, зарегистрированного в пуле. Если вы используете локальный агент, это имя указывается вами. См. раздел Агенты. |
Agent.OS |
Операционная система узла агента. Допустимые значения:
|
Agent.OSArchitecture |
Архитектура процессора операционной системы узла агента. Допустимые значения:
|
Agent.TempDirectory | Временная папка, очищаемая после каждого задания конвейера. Этот каталог используется такими задачами, как .NET Core CLI, для хранения временных элементов, таких как результаты теста, перед их публикацией. |
Agent.ToolsDirectory |
Каталог, используемый такими задачами, как Node Tool Installer и Использование версии Python для переключения между несколькими версиями средства.
Эти задачи будут добавлять средства из этого каталога в , PATH чтобы их можно было использовать в последующих шагах сборки.
Сведения об управлении этим каталогом в локальном агенте. |
Agent.WorkFolder |
Рабочий каталог для этого агента.
Например: c:\agent_work .
Этот каталог не гарантируется для записи задач конвейера (например, при сопоставлении с контейнером). |
Переменные сборки (DevOps Server 2019 г.)
Переменная | Описание |
---|---|
Build.ArtifactStagingDirectory |
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Build.BuildId | Идентификатор записи для завершенной сборки. |
Build.BuildNumber | Имя завершенной сборки. В параметрах конвейера можно указать формат номера сборки, который создает это значение.
Обычно эта переменная используется для того, чтобы сделать ее частью формата меток, который указывается на вкладке репозитория. Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой.
|
Build.BuildUri | Универсальный код ресурса (URI) для сборки. Например: vstfs:///Build/Build/1430 .
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.BinariesDirectory | Локальный путь к агенту, который можно использовать в качестве выходной папки для скомпилированных двоичных файлов.
По умолчанию новые конвейеры сборки не настроены для очистки этого каталога. Вы можете определить сборку, чтобы очистить ее, на вкладке Репозиторий. Например: c:\agent_work\1\b .
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.DefinitionName | Имя конвейера сборки.
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Build.DefinitionVersion | Версия конвейера сборки. |
Build.QueuedBy | См. раздел "Как задаются переменные удостоверений?".
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Build.QueuedById | См. раздел "Как задаются переменные удостоверений?". |
Build.Reason | Событие, вызвавшее выполнение сборки.
|
Build.Repository.Clean | Значение, выбранное для параметра Очистить в параметрах исходного репозитория.
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.Repository.LocalPath |
Локальный путь к агенту, куда скачиваются файлы исходного кода. Пример: Эта переменная является синонимом Build.SourcesDirectory. |
Build.Repository.Name | Имя репозитория.
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.Repository.Provider | Выбранный тип репозитория.
|
Build.Repository.Tfvc.Workspace | Определяется, является ли репозиторий система управления версиями Team Foundation. Имя рабочей области TFVC , используемой агентом сборки.
Например, если Agent.BuildDirectory имеет значение c:\agent_work\12 , а Agent.Id — 8 , имя рабочей области может быть следующим: ws_12_8
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.Repository.Uri | URL-адрес репозитория. Пример: Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.RequestedFor | См. раздел "Как задаются переменные удостоверений?".
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Build.RequestedForEmail | См. раздел "Как задаются переменные удостоверений?". |
Build.RequestedForId | См. раздел "Как задаются переменные удостоверений?". |
Build.SourceBranch | Ветвь, для нее была поставлена в очередь сборка. Некоторые примеры.
/ ) заменяются символами _ подчеркивания .
Примечание. В TFVC, если вы выполняете сборку с закрытой проверкой или вручную создаете набор полок, эту переменную нельзя использовать в формате номера сборки. |
Build.SourceBranchName | Имя ветви, для нее была поставлена сборка в очередь.
|
Build.SourcesDirectory |
Локальный путь к агенту, куда скачиваются файлы исходного кода. Пример: Эта переменная является синонимом Build.Repository.LocalPath. |
Build.SourceVersion | Последнее изменение системы управления версиями, входящее в эту сборку.
|
Build.SourceVersionMessage | Комментарий фиксации или набора изменений. Мы усекаем сообщение до первой строки или 200 символов, в зависимости от того, какой из них короче.
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. Примечание. Эта переменная доступна в TFS 2015.4. Примечание Переменная Build.SourceVersionMessage не работает с классическими конвейерами сборки в репозиториях Bitbucket при изменении пакетной службы во время выполнения сборки . |
Build.StagingDirectory |
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Build.Repository.Git.SubmoduleCheckout | Значение, выбранное для подмодулей оформления заказа на вкладке репозитория. Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.SourceTfvcShelveset | Определяется, является ли репозиторий система управления версиями Team Foundation.
Если вы используете сборку с закрытыми воротами или сборку с набором полок, в качестве значения используется имя создаваемого набора полок . Примечание. Эта переменная возвращает недопустимое значение для использования сборки в формате номера сборки. |
Build.TriggeredBy.BuildId | Если сборка была активирована другой сборкой, то для этой переменной задается значение BuildID запускающей сборки.
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.TriggeredBy.DefinitionId | Если сборка была активирована другой сборкой, для этой переменной задается значение DefinitionID сборки, активировающей ее.
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Build.TriggeredBy.DefinitionName | Если сборка была активирована другой сборкой, для этой переменной присваивается имя запускающего конвейера сборки.
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.TriggeredBy.BuildNumber | Если сборка была активирована другой сборкой, для этой переменной присваивается номер запускающей сборки.
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.TriggeredBy.ProjectID | Если сборка была активирована другой сборкой, то этой переменной присваивается идентификатор проекта, содержащего сборку, актививную.
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Common.TestResultsDirectory | Локальный путь к агенту, в котором создаются результаты теста. Пример: c:\agent_work\1\TestResults
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Системные переменные (DevOps Server 2019)
Переменная | Описание |
---|---|
System.AccessToken | Используйте маркер OAuth для доступа к REST API.
Используйте System.AccessToken из скриптов YAML. Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
System.CollectionId | GUID коллекции TFS или организации Azure DevOps |
System.DefaultWorkingDirectory |
Локальный путь к агенту, по которому скачиваются файлы исходного кода. Пример: |
System.DefinitionId | Идентификатор конвейера сборки. |
System.HostType | Задайте значение , build если конвейер является сборкой. Для выпуска используются deployment значения для задания группы развертывания и release задания агента.
|
System.PullRequest.IsFork | Если запрос на вытягивание выполняется из вилки репозитория, эта переменная имеет значение True .
В противном случае ему присваивается значение False . |
System.PullRequest.PullRequestId | Идентификатор запроса на вытягивание, вызвавшего эту сборку. Например: 17 . (Эта переменная инициализируется только в том случае, если сборка была выполнена из-за запроса на запрос Git, затронутого политикой ветви.) |
System.PullRequest.PullRequestNumber | Номер запроса на вытягивание, вызвавшего эту сборку. Эта переменная заполняется для запросов на вытягивание из GitHub с другим идентификатором и номером запроса на вытягивание. |
System.PullRequest.SourceBranch | Ветвь, проверяемая в запросе на вытягивание. Например: refs/heads/users/raisa/new-feature . (Эта переменная инициализируется только в том случае, если сборка была выполнена из-за запроса на запрос Git, затронутого политикой ветви.) |
System.PullRequest.SourceRepositoryURI | URL-адрес репозитория, содержащего запрос на вытягивание. Например: https://dev.azure.com/ouraccount/_git/OurProject . (Эта переменная инициализируется только в том случае, если сборка выполнялась из-за Azure Repos Git PR, затронутой политикой ветви. Он не инициализирован для GitHub PRs.) |
System.PullRequest.TargetBranch | Ветвь, которая является целевым объектом запроса на вытягивание. Например: refs/heads/main . Эта переменная инициализируется только в том случае, если сборка была выполнена из-за запроса на вытягивание Git, затронутого политикой ветви. |
System.TeamFoundationCollectionUri | Универсальный код ресурса (URI) коллекции team Foundation. Например: https://dev.azure.com/fabrikamfiber/ .
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
System.TeamProject | Имя проекта, содержащего эту сборку. |
System.TeamProjectId | Идентификатор проекта, к которому принадлежит эта сборка. |
TF_BUILD | Задайте значение , True если скрипт выполняется задачей сборки.
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Переменные агента (TFS 2018)
Примечание
Переменные агента можно использовать в качестве переменных среды в скриптах и в качестве параметров в задачах сборки. Их нельзя использовать для настройки номера сборки или применения метки или тега управления версиями.
Переменная | Описание |
---|---|
Agent.BuildDirectory |
Локальный путь к агенту, в котором создаются все папки для заданного конвейера сборки. Пример: |
Agent.HomeDirectory | Каталог, в который устанавливается агент. Он содержит программное обеспечение агента. Например: c:\agent . |
Agent.Id | Идентификатор агента. |
Agent.JobStatus | Состояние сборки.
Переменная среды должна быть указана как |
Agent.MachineName | Имя компьютера, на котором установлен агент. |
Agent.Name |
Имя агента, зарегистрированного в пуле. Это имя указано вами. См. раздел Агенты. |
Agent.TempDirectory | Временная папка, которая очищается после каждого задания конвейера. Этот каталог используется такими задачами, как .NET Core CLI, для хранения временных элементов, таких как результаты теста, перед их публикацией. |
Agent.ToolsDirectory |
Каталог, используемый такими задачами, как Node Tool Installer и Использование версии Python для переключения между несколькими версиями средства.
Эти задачи будут добавлять средства из этого каталога в , PATH чтобы последующие шаги сборки могли использовать их.
Сведения об управлении этим каталогом в локальном агенте. |
Agent.WorkFolder |
Рабочий каталог для этого агента.
Например: c:\agent_work .
|
Переменные сборки (TFS 2018)
Переменная | Описание |
---|---|
Build.ArtifactStagingDirectory | Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения.
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Build.BuildId | Идентификатор записи для завершенной сборки. |
Build.BuildNumber | Имя завершенной сборки. В параметрах конвейера можно указать формат номера сборки, который создает это значение.
Обычно эта переменная используется для того, чтобы сделать ее частью формата метки, указанного на вкладке репозитория. Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой.
|
Build.BuildUri | Универсальный код ресурса (URI) для сборки. Например: vstfs:///Build/Build/1430 .
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.BinariesDirectory | Локальный путь к агенту, который можно использовать в качестве выходной папки для скомпилированных двоичных файлов.
По умолчанию новые конвейеры сборки не настроены для очистки этого каталога. Вы можете определить сборку, чтобы очистить ее на вкладке Репозиторий. Например: c:\agent_work\1\b .
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.DefinitionName | Имя конвейера сборки.
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Build.DefinitionVersion | Версия конвейера сборки. |
Build.QueuedBy | См. раздел Как задаются переменные удостоверений?
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Build.QueuedById | См. раздел Как задаются переменные удостоверений? |
Build.Reason | Событие, вызвавшее выполнение сборки.
|
Build.Repository.Clean | Значение, выбранное для параметра Очистить в параметрах исходного репозитория.
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.Repository.LocalPath |
Локальный путь к агенту, по которому скачиваются файлы исходного кода. Пример: Эта переменная является синонимом Build.SourcesDirectory. |
Build.Repository.Name | Имя репозитория.
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.Repository.Provider | Тип выбранного репозитория.
|
Build.Repository.Tfvc.Workspace | Определяется, если репозиторий система управления версиями Team Foundation. Имя рабочей области TFVC , используемой агентом сборки.
Например, если Agent.BuildDirectory имеет значение c:\agent_work\12 , а Agent.Id — 8 , имя рабочей области может быть следующим: ws_12_8
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.Repository.Uri | URL-адрес репозитория. Пример:
|
Build.RequestedFor | См. раздел Как задаются переменные удостоверений?
Примечание. Это значение может содержать пробелы или другие недопустимые символы метки. В таких случаях формат метки завершится ошибкой. |
Build.RequestedForEmail | См. раздел Как задаются переменные удостоверений? |
Build.RequestedForId | См. раздел Как задаются переменные удостоверений? |
Build.SourceBranch | Ветвь, для нее была поставлена в очередь сборка. Некоторые примеры.
/ ) заменяются символами _ подчеркивания .
Примечание. В TFVC, если вы выполняете сборку с закрытой проверкой или вручную создаете набор полок, эту переменную нельзя использовать в формате номера сборки. |
Build.SourceBranchName | Имя ветви, для нее была поставлена в очередь сборка.
|
Build.SourcesDirectory |
Локальный путь к агенту, по которому скачиваются файлы исходного кода. Пример: Эта переменная является синонимом Build.Repository.LocalPath. |
Build.SourceVersion | Последнее изменение системы управления версиями, входящее в эту сборку.
|
Build.SourceVersionMessage | Комментарий фиксации или набора изменений. Мы усекаем сообщение до первой строки или до 200 символов, в зависимости от того, какой из них короче.
Эта переменная находится в области действия агента и может использоваться как переменная среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или как тег управления версиями. Примечание. Эта переменная доступна в TFS 2015.4. Примечание Переменная Build.SourceVersionMessage не работает с классическими конвейерами сборки в репозиториях Bitbucket при изменении пакетной службы во время выполнения сборки . |
Build.StagingDirectory |
Локальный путь к агенту, в который копируются все артефакты перед отправкой в место назначения. Пример: |
Build.Repository.Git.SubmoduleCheckout | Значение, выбранное для подмодулей "Извлечь " на вкладке репозитория. Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Build.SourceTfvcShelveset | Определяется, если репозиторий система управления версиями Team Foundation.
Если вы используете закрытую сборку или сборку с набором стеллажей, это будет называться набор стеллажей , который вы создаете. Примечание. Эта переменная возвращает недопустимое значение для использования сборки в числовом формате. |
Common.TestResultsDirectory | Локальный путь к агенту, в котором создаются результаты теста. Пример: c:\agent_work\1\TestResults
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
Системные переменные (TFS 2018)
Переменная | Описание |
---|---|
System.AccessToken | Используйте маркер OAuth для доступа к REST API.
Эта переменная имеет область действия агента. Его можно использовать как переменную среды в скрипте и как параметр в задаче сборки, но не как часть номера сборки или как тег управления версиями. |
System.CollectionId | GUID коллекции TFS или организации Azure DevOps |
System.DefaultWorkingDirectory |
Локальный путь к агенту, по которому скачиваются файлы исходного кода. Пример: |
System.DefinitionId | Идентификатор конвейера сборки. |
System.HostType | Задайте значение , build если конвейер является сборкой или release если конвейер является выпуском. |
System.PullRequest.IsFork | Если запрос на вытягивание выполняется из вилки репозитория, эта переменная имеет значение True .
В противном случае ему присваивается значение False . Доступно в TFS 2018.2. |
System.PullRequest.PullRequestId | Идентификатор запроса на вытягивание, вызвавшего эту сборку. Например: 17 . (Эта переменная инициализируется только в том случае, если сборка выполнялась из-за запроса на вытягивание Git, затронутого политикой ветви.) |
System.PullRequest.SourceBranch | Ветвь, которая проверяется в запросе на вытягивание. Например: refs/heads/users/raisa/new-feature . (Эта переменная инициализируется только в том случае, если сборка выполнялась из-за запроса на вытягивание Git, затронутого политикой ветви.) |
System.PullRequest.SourceRepositoryURI | URL-адрес репозитория, содержащего запрос на вытягивание. Например: http://our-server:8080/tfs/DefaultCollection/_git/OurProject . (Эта переменная инициализируется только в том случае, если сборка была выполнена из-за Azure Repos запроса на вытягивание Git, затронутого политикой ветви.) |
System.PullRequest.TargetBranch | Ветвь, которая является целевой для запроса на вытягивание. Например: refs/heads/main . Эта переменная инициализируется только в том случае, если сборка выполнялась из-за запроса на вытягивание Git, затронутого политикой ветви. |
System.TeamFoundationCollectionUri | Универсальный код ресурса (URI) коллекции Team Foundation. Например: http://our-server:8080/tfs/DefaultCollection/ .
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
System.TeamProject | Имя проекта, содержащего эту сборку. |
System.TeamProjectId | Идентификатор проекта, к которому принадлежит эта сборка. |
TF_BUILD | Задайте значение , True если скрипт выполняется задачей сборки.
Эта переменная имеет область действия агента. Его можно использовать в качестве переменной среды в скрипте и в качестве параметра в задаче сборки, но не как часть номера сборки или тега управления версиями. |
Как задаются переменные удостоверений?
Значение зависит от причины сборки и зависит от Azure Repos репозиториев.
Если сборка активирована... | Затем значения Build.QueuedBy и Build.QueuedById основаны на... | Затем значения Build.RequestedFor и Build.RequestedForId основаны на... |
---|---|---|
В Git или TFVC с помощью триггеров непрерывной интеграции (CI) | Системное удостоверение, например: [DefaultCollection]\Project Collection Service Accounts |
Пользователь, который вытеснил или проверил изменения. |
В Git или по сборке политики ветви. | Системное удостоверение, например: [DefaultCollection]\Project Collection Service Accounts |
Пользователь, который проверил изменения. |
В TFVC с помощью закрытого триггера возврата | Пользователь, который проверил изменения. | Пользователь, который проверил изменения. |
В Git или TFVC по запланированным триггерам | Системное удостоверение, например: [DefaultCollection]\Project Collection Service Accounts |
Системное удостоверение, например: [DefaultCollection]\Project Collection Service Accounts |
Так как вы нажали кнопку Сборка очереди | Вы | Вы |