Usar variáveis predefinidas

Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018

Observação

Em Microsoft Team Foundation Server (TFS) 2018 e versões anteriores, pipelines de build e versão são chamados de definições, execuções são chamadas de builds, conexões de serviço são chamadas de pontos de extremidade de serviço, estágios são chamados de ambientes e trabalhos são chamados de fases.

As variáveis oferecem uma maneira conveniente de obter os principais bits de dados em várias partes do pipeline. Esta é uma lista de variáveis predefinidas que estão disponíveis para seu uso. Pode haver algumas outras variáveis predefinidas, mas elas são principalmente para uso interno.

Essas variáveis são definidas automaticamente pelo sistema e somente leitura. (As exceções são Build.Clean e System.Debug.)

Em pipelines YAML, você pode referenciar variáveis predefinidas como variáveis de ambiente. Por exemplo, a variável Build.ArtifactStagingDirectory se torna a variável BUILD_ARTIFACTSTAGINGDIRECTORY.

Para pipelines clássicos, você pode usar variáveis de versão em suas tarefas de implantação para compartilhar as informações comuns (por exemplo, Nome do Ambiente, Grupo de Recursos etc.).

Saiba mais sobre como trabalhar com variáveis.

Build.Clean

Essa é uma variável preterida que modifica como o agente de build limpa a origem. Para saber como limpar a fonte, consulte Limpar o repositório local no agente.

System.AccessToken

System.AccessToken é uma variável especial que carrega o token de segurança usado pelo build em execução.

No YAML, você deve mapear System.AccessToken explicitamente o pipeline usando uma variável. Você pode fazer isso no nível da etapa ou da tarefa:

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)

Você pode configurar o escopo padrão para System.AccessToken usar o escopo de autorização de trabalho de build.

System.Debug

Para logs mais detalhados para depurar problemas de pipeline, defina-os System.Debug e defina-os como true.

  1. Edite seu pipeline.

  2. Selecione Variáveis.

  3. Adicione uma nova variável com o nome System.Debug e o valor true.

    Set System Debug to true

  4. Salve a nova variável.

Variáveis de agente (DevOps Services)

Observação

Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de build. Você não pode usá-los para personalizar o número de build ou para aplicar um rótulo ou marca de controle de versão.

VariávelDescrição
Agent.BuildDirectory

O caminho local no agente em que todas as pastas de um determinado pipeline de build são criadas. Essa variável tem o mesmo valor que Pipeline.Workspace.

Por exemplo: /home/vsts/work/1

Agent.ContainerMapping

Um mapeamento de nomes de recursos de contêiner no YAML para suas IDs do Docker em runtime.

Por exemplo:

{
  "one_container": {
    "id": "bdbb357d73a0bd3550a1a5b778b62a4c88ed2051c7802a0659f1ff6e76910190"
  },
  "another_container": {
    "id": "82652975109ec494876a8ccbb875459c945982952e0a72ad74c91216707162bb"
  }
}

Agent.HomeDirectory O diretório no qual o agente está instalado. Isso contém o software do agente. Por exemplo: c:\agent.
Agent.Id A ID do agente.
Agent.JobName O nome do trabalho em execução. Isso geralmente será "Trabalho" ou "__default", mas em cenários de várias configurações, será a configuração.
Agent.JobStatus O status do build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parcialmente bem-sucedido)

A variável de ambiente deve ser referenciada como AGENT_JOBSTATUS. O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores.

Agent.MachineName O nome do computador no qual o agente está instalado.
Agent.Name

O nome do agente registrado no pool.

Se você estiver usando um agente auto-hospedado, esse nome será especificado por você. Consulte agentes.

Agent.OS O sistema operacional do host do agente. Os valores válidos são:
  • Windows_NT
  • Darwin
  • Linux
Se você estiver executando em um contêiner, o host e o contêiner do agente poderão estar executando sistemas operacionais diferentes.
Agent.OSArchitecture A arquitetura do processador do sistema operacional do host do agente. Os valores válidos são:
  • X86
  • X64
  • ARM
Agent.TempDirectory

Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa da CLI do .NET Core para manter itens temporários, como resultados de teste, antes de serem publicados.

Por exemplo: /home/vsts/work/_temp para ubuntu

Agent.ToolsDirectory O diretório usado por tarefas como o Instalador de Ferramentas do Nó e a Versão do Python para alternar entre várias versões de uma ferramenta. Essas tarefas adicionarão ferramentas desse diretório para PATH que as etapas de build subsequentes possam usá-las.

Saiba mais sobre como gerenciar esse diretório em um agente auto-hospedado.
Agent.WorkFolder O diretório de trabalho para este agente. Por exemplo: c:\agent_work.

Observação: esse diretório não tem a garantia de ser gravável por tarefas de pipeline (por exemplo, quando mapeado para um contêiner)

Variáveis de build (DevOps Services)


VariávelDescriçãoDisponível em modelos?
Build.ArtifactStagingDirectory

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados por push para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos De cópia e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts em Azure Pipelines.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.BuildId A ID do registro do build concluído. Não
Build.BuildNumber O nome do build concluído, também conhecido como o número de execução. Você pode especificar o que está incluído nesse valor.

Um uso típico dessa variável é torná-la parte do formato de rótulo, que você especificar na guia repositório.

Observação: esse valor pode conter whitespace ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.



Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.BuildUri O URI para o build. Por exemplo: vstfs:///Build/Build/1430.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.BinariesDirectory O caminho local no agente que você pode usar como uma pasta de saída para binários compilados.

Por padrão, novos pipelines de build não são configuradas para limpar esse diretório. Você pode definir seu build para limpá-lo na guia Repositório.

Por exemplo: c:\agent_work\1\b.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.ContainerId A ID do contêiner do artefato. Quando você carrega um artefato em seu pipeline, ele é adicionado a um contêiner específico para esse artefato específico. Não
Build.DefinitionName O nome do pipeline de build.

Observação: esse valor pode conter whitespace ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Sim
Build.DefinitionVersion A versão do pipeline de build. Sim
Build.QueuedBy Veja "Como as variáveis de identidade são definidas?".

Observação: esse valor pode conter whitespace ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Sim
Build.QueuedById Veja "Como as variáveis de identidade são definidas?". Sim
Build.Reason O evento que causou a execução do build.
  • Manual: um usuário enfileirava manualmente o build.
  • IndividualCI: CI (integração contínua) disparada por um push do Git ou um check-in do TFVC.
  • BatchedCI: CI (integração contínua) disparada por um push do Git ou um check-in do TFVC e as alterações do Lote foram selecionadas.
  • Schedule: gatilho agendado .
  • ValidateShelveset: um usuário enfileirava manualmente o build de um conjunto de prateleiras TFVC específico.
  • CheckInShelveset: gatilho de check-in fechado .
  • PullRequest: o build foi disparado por uma política de branch do Git que requer um build.
  • ResourceTrigger: o build foi disparado por um gatilho de recurso ou foi disparado por outro build.
Consulte Gatilhos de pipeline de build, melhorar a qualidade do código com políticas de branch.
Sim
Build.Repository.Clean O valor selecionado para Limpar nas configurações do repositório de origem.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.LocalPath

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Observação importante: se você fizer check-out de apenas um repositório Git, esse caminho será o caminho exato para o código. Se você fizer check-out de vários repositórios, o comportamento será o seguinte (e poderá ser diferente do valor da variável Build.SourcesDirectory):

  • Se a etapa de check-out do repositório auto (primário) não tiver nenhum caminho de check-out personalizado definido ou o caminho de check-out for o caminho $(Pipeline.Workspace)/s/<RepoName> padrão de vários checkouts para o auto repositório, o valor dessa variável será revertido para seu valor padrão, que é $(Pipeline.Workspace)/s.
  • Se a etapa de check-out do repositório auto (primário) tiver um caminho de check-out personalizado definido (e não for o caminho padrão de vários checkouts), essa variável conterá o caminho exato para o auto repositório.
Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.ID O identificador exclusivo do repositório.

Isso não será alterado, mesmo que o nome do repositório mude.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.Name O nome do repositório de gatilho.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.Provider O tipo do repositório de gatilho. Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Não
Build.Repository.Tfvc.Workspace Definido se o repositório está Controle de Versão do Team Foundation. O nome do workspace do TFVC usado pelo agente de build.


Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8, o nome do workspace poderá ser: ws_12_8

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.Uri A URL do repositório de gatilho. Por exemplo: Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Não
Build.RequestedFor Veja "Como as variáveis de identidade são definidas?".

Observação: esse valor pode conter whitespace ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Sim
Build.RequestedForEmail Veja "Como as variáveis de identidade são definidas?". Sim
Build.RequestedForId Veja "Como as variáveis de identidade são definidas?". Sim
Build.SourceBranch O branch do repositório de gatilho para o qual o build foi enfileirado. Alguns exemplos:
  • Branch de repositório Git: refs/heads/master
  • Solicitação de pull do repositório Git: refs/pull/1/merge
  • Branch de repositório TFVC: $/teamproject/main
  • Check-in do repositório TFVC fechado: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Compilação do conjunto de repositórios de repositório do TFVC: myshelveset;username@live.com
  • Quando o pipeline é disparado por uma marca: refs/tags/your-tag-name
Quando você usa essa variável no formato de número de build, os caracteres de barra (/) são substituídos por caracteres _sublinhados).

Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Sim
Build.SourceBranchName O nome do branch no repositório de gatilho para o qual o build foi enfileirado.
  • Branch de repositório Git ou solicitação de pull: o último segmento de caminho no ref. Por exemplo, refs/heads/master nesse valor está master. Nesse refs/heads/feature/tools valor está tools.
  • Branch de repositório TFVC: o último segmento de caminho no caminho do servidor raiz para o workspace. Por exemplo, $/teamproject/main nesse valor está main.
  • O check-in do repositório TFVC ou o build do conjunto de prateleiras é o nome do conjunto de prateleiras. Por exemplo, Gated_2016-06-06_05.20.51.4369;username@live.com ou myshelveset;username@live.com.
Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Sim
Build.SourcesDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados.

Observação importante: se você fizer check-out de apenas um repositório Git, esse caminho será o caminho exato para o código. Se você fizer check-out de vários repositórios, ele será revertido para seu valor padrão, ou seja $(Pipeline.Workspace)/s, mesmo que o repositório auto (primário) seja verificado em um caminho personalizado diferente do caminho $(Pipeline.Workspace)/s/<RepoName> padrão de vários checkouts (a esse respeito, a variável difere do comportamento da variável Build.Repository.LocalPath).

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.SourceVersion A alteração de controle de versão mais recente do repositório de gatilho incluído neste build. Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Sim
Build.SourceVersionMessage O comentário da confirmação ou do conjunto de alterações para o repositório de gatilho. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for menor.

Corresponde Build.SourceVersionMessage à mensagem na Build.SourceVersion confirmação. A Build.SourceVersion confirmação de um build de PR é a confirmação de mesclagem (não a confirmação no branch de origem).

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Além disso, essa variável só está disponível no nível da etapa e não está disponível no trabalho nem nos níveis de estágio (ou seja, a mensagem não é extraída até que o trabalho tenha começado e verificado o código).

Observação: essa variável está disponível no TFS 2015.4.

Não
Build.StagingDirectory

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos copiar e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts no Azure Pipelines.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.Repository.Git.SubmoduleCheckout O valor selecionado para submódulos de Checkout na guia repositório. Com vários repositórios verificados, esse valor rastreia a configuração do repositório de gatilho.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.SourceTfvcShelveset Definido se o repositório está Controle de Versão do Team Foundation.


Se você estiver executando um build fechado ou uma compilação de conjunto de prateleiras, isso será definido como o nome do conjunto de prateleiras que você está criando.

Observação: essa variável produz um valor inválido para uso de build em um formato de número de build.
Não
Build.TriggeredBy.BuildId Se o build tiver sido disparado por outro build, essa variável será definida como BuildID do build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Se você estiver disparando um pipeline YAML usando resources, deverá usar as variáveis de recursos .
Não
Build.TriggeredBy.DefinitionId Se o build tiver sido disparado por outro build, essa variável será definida como DefinitionID do build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Se você estiver disparando um pipeline YAML usando resources, deverá usar as variáveis de recursos .
Não
Build.TriggeredBy.DefinitionName Se o build tiver sido disparado por outro build, essa variável será definida como o nome do pipeline de build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Se você estiver disparando um pipeline YAML usando resources, deverá usar as variáveis de recursos .
Não
Build.TriggeredBy.BuildNumber Se o build tiver sido disparado por outro build, essa variável será definida como o número do build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Se você estiver disparando um pipeline YAML usando resources, deverá usar as variáveis de recursos .
Não
Build.TriggeredBy.ProjectID Se o build tiver sido disparado por outro build, essa variável será definida como ID do projeto que contém o build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Se você estiver disparando um pipeline YAML usando resources, deverá usar as variáveis de recursos .
Não
Common.TestResultsDirectory O caminho local no agente em que os resultados do teste são criados. Por exemplo: c:\agent_work\1\TestResults

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não

Variáveis de pipeline (DevOps Services)

VariávelDescrição
Pipeline.Workspace Diretório do workspace para um pipeline específico. Essa variável tem o mesmo valor que Agent.BuildDirectory.

Por exemplo, /home/vsts/work/1.

Variáveis de trabalho de implantação (DevOps Services)

Essas variáveis têm escopo para um trabalho de implantação específico e serão resolvidas somente no momento da execução do trabalho.

VariávelDescrição
Environment.Name Nome do ambiente direcionado no trabalho de implantação para executar as etapas de implantação e registrar o histórico de implantação. Por exemplo, smarthotel-dev.
Environment.Id ID do ambiente direcionado no trabalho de implantação. Por exemplo, 10.
Environment.ResourceName Nome do recurso específico dentro do ambiente direcionado no trabalho de implantação para executar as etapas de implantação e registrar o histórico de implantação. Por exemplo, bookings que é um namespace do Kubernetes que foi adicionado como um recurso ao ambiente smarthotel-dev.
Environment.ResourceId ID do recurso específico dentro do ambiente direcionado no trabalho de implantação para executar as etapas de implantação. Por exemplo, 4.
Strategy.Name O nome da estratégia de implantação: canary, runOnceou rolling.
Strategy.CycleName O nome do ciclo atual em uma implantação. As opções são PreIteration, Iterationou PostIteration.

Variáveis do sistema (DevOps Services)

VariávelDescriçãoDisponível em modelos?
System.AccessToken Use o token OAuth para acessar a API REST.

Use System.AccessToken de scripts YAML.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Sim
System.CollectionId O GUID da coleção TFS ou Azure DevOps organização. Sim
System.CollectionUri O URI da coleção TFS ou Azure DevOps organização. Por exemplo: https://dev.azure.com/fabrikamfiber/. Sim
System.DefaultWorkingDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
System.DefinitionId A ID do pipeline de build. Sim
System.HostType Definido como build se o pipeline for um build. Para uma versão, os valores são deployment para um trabalho de grupo de implantação, gates durante a avaliação de portões e release para outros trabalhos (Agente e Sem Agente). Sim
System.JobAttempt Definido como 1 na primeira vez em que este trabalho é tentado e incrementa toda vez que o trabalho é repetido. Não
System.JobDisplayName O nome legível dado a um trabalho. Não
System.JobId Um identificador exclusivo para uma única tentativa de um único trabalho. O valor é exclusivo para o pipeline atual. Não
System.JobName O nome do trabalho, normalmente usado para expressar dependências e acessar variáveis de saída. Não
System.PhaseAttempt Defina como 1 na primeira vez em que essa fase é tentada e incrementa toda vez que o trabalho é repetido.

Nota: "Fase" é um conceito com redundância principal que representa o tempo de design para um trabalho (enquanto o trabalho era a versão de runtime de uma fase). Removemos principalmente o conceito de "fase" de Azure Pipelines. Trabalhos de matriz e multiconfiguração são o único lugar em que "fase" ainda é diferente de "trabalho". Uma fase pode criar uma instância de vários trabalhos que diferem apenas em suas entradas.
Não
System.PhaseDisplayName O nome legível por humanos dado a uma fase. Não
System.PhaseName Um identificador baseado em cadeia de caracteres para um trabalho, normalmente usado para expressar dependências e acessar variáveis de saída. Não
System.StageAttempt Definido como 1 na primeira vez em que esse estágio é tentado e incrementa sempre que o trabalho é repetido. Não
System.StageDisplayName O nome legível dado a um estágio. Não
System.StageName Um identificador baseado em cadeia de caracteres para um estágio, normalmente usado para expressar dependências e acessar variáveis de saída. Sim
System.PullRequest.IsFork Se a solicitação de pull for de uma bifurcação do repositório, essa variável será definida como True. Caso contrário, ele será definido como False. Sim
System.PullRequest.PullRequestId A ID da solicitação de pull que causou esse build. Por exemplo: 17. (Essa variável será inicializada somente se o build for executado devido a uma PR do Git afetada por uma política de branch). Não
System.PullRequest.PullRequestNumber O número da solicitação de pull que causou esse build. Essa variável é populada para solicitações de pull de GitHub que têm uma ID de solicitação de pull diferente e um número de solicitação de pull. Essa variável só estará disponível em um pipeline YAML se a PR for afetada por uma política de branch. Não
System.PullRequest.SourceBranch O branch que está sendo revisado em uma solicitação de pull. Por exemplo: refs/heads/users/raisa/new-feature para Azure Repos. (Essa variável será inicializada somente se o build for executado devido a uma PR do Git afetada por uma política de branch). Essa variável só estará disponível em um pipeline YAML se a PR for afetada por uma política de branch. Não
System.PullRequest.SourceRepositoryURI A URL para o repositório que contém a solicitação de pull. Por exemplo: https://dev.azure.com/ouraccount/_git/OurProject. Não
System.PullRequest.TargetBranch O branch que é o destino de uma solicitação de pull. Por exemplo: refs/heads/master quando o repositório está em Azure Repos e master quando o repositório está em GitHub. Essa variável será inicializada somente se o build for executado devido a uma PR do Git afetada por uma política de branch. Essa variável só estará disponível em um pipeline YAML se a PR for afetada por uma política de branch. Não
System.TeamFoundationCollectionUri O URI da coleção TFS ou Azure DevOps organização. Por exemplo: https://dev.azure.com/fabrikamfiber/.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Sim
System.TeamProject O nome do projeto que contém esse build. Sim
System.TeamProjectId A ID do projeto ao qual essa compilação pertence. Sim
TF_BUILD Defina como True se o script está sendo executado por uma tarefa de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não

Verifica variáveis (DevOps Services)

VariávelDescrição
Checks.StageAttempt Definido como 1 na primeira vez em que este estágio é tentado e incrementa toda vez que o estágio é repetido.

Essa variável só pode ser usada em uma aprovação ou verificar se há um ambiente. Por exemplo, você pode usar $(Checks.StageAttempt) em uma verificação de API DE INVOCAR REST.

Add the stage attempt as a parameter.

Variáveis de agente (DevOps Server 2020)

Observação

Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de build. Você não pode usá-los para personalizar o número de build ou para aplicar um rótulo ou marca de controle de versão.

VariávelDescrição
Agent.BuildDirectory

O caminho local no agente em que todas as pastas de um determinado pipeline de build são criadas. Essa variável tem o mesmo valor que Pipeline.Workspace.

Por exemplo: /home/vsts/work/1

Agent.HomeDirectory O diretório no qual o agente está instalado. Isso contém o software do agente. Por exemplo: c:\agent.
Agent.Id A ID do agente.
Agent.JobName O nome do trabalho em execução. Isso geralmente será "Trabalho" ou "__default", mas em cenários de várias configurações, será a configuração.
Agent.JobStatus O status do build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parcialmente bem-sucedido)

A variável de ambiente deve ser referenciada como AGENT_JOBSTATUS. O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores.

Agent.MachineName O nome do computador no qual o agente está instalado.
Agent.Name

O nome do agente registrado no pool.

Se você estiver usando um agente auto-hospedado, esse nome será especificado por você. Veja agentes.

Agent.OS O sistema operacional do host do agente. Os valores válidos são:
  • Windows_NT
  • Darwin
  • Linux
Se você estiver executando em um contêiner, o host e o contêiner do agente poderão estar executando sistemas operacionais diferentes.
Agent.OSArchitecture A arquitetura do processador do sistema operacional do host do agente. Os valores válidos são:
  • X86
  • X64
  • ARM
Agent.TempDirectory

Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa da CLI do .NET Core para manter itens temporários, como resultados de teste, antes de serem publicados.

Por exemplo: /home/vsts/work/_temp para ubuntu

Agent.ToolsDirectory O diretório usado por tarefas como o Instalador de Ferramentas do Nó e a Versão do Python para alternar entre várias versões de uma ferramenta. Essas tarefas adicionarão ferramentas desse diretório para PATH que as etapas de build subsequentes possam usá-las.

Saiba mais sobre como gerenciar esse diretório em um agente auto-hospedado.
Agent.WorkFolder O diretório de trabalho para este agente. Por exemplo: c:\agent_work.

Observação: esse diretório não tem a garantia de ser gravável por tarefas de pipeline (por exemplo, quando mapeado para um contêiner)

Variáveis de build (DevOps Server 2020)


VariávelDescriçãoDisponível em modelos?
Build.ArtifactStagingDirectory

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados por push para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos De cópia e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts em Azure Pipelines.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.BuildId A ID do registro do build concluído. Não
Build.BuildNumber O nome do build concluído, também conhecido como o número de execução. Você pode especificar o que está incluído nesse valor.

Um uso típico dessa variável é torná-la parte do formato de rótulo, que você especifica na guia repositório.

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.



Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.BuildUri O URI do build. Por exemplo: vstfs:///Build/Build/1430.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.BinariesDirectory O caminho local no agente que você pode usar como uma pasta de saída para binários compilados.

Por padrão, novos pipelines de build não são configurados para limpar esse diretório. Você pode definir seu build para limpá-lo na guia Repositório.

Por exemplo: c:\agent_work\1\b.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.ContainerId A ID do contêiner do artefato. Quando você carrega um artefato em seu pipeline, ele é adicionado a um contêiner específico para esse artefato específico. Não
Build.DefinitionName O nome do pipeline de build.

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Sim
Build.DefinitionVersion A versão do pipeline de build. Sim
Build.QueuedBy Veja "Como as variáveis de identidade estão definidas?".

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Sim
Build.QueuedById Veja "Como as variáveis de identidade estão definidas?". Sim
Build.Reason O evento que causou a execução do build.
  • Manual: um usuário enfileirava manualmente o build.
  • IndividualCI: CI (integração contínua) disparada por um push git ou um check-in TFVC.
  • BatchedCI: CI (integração contínua) disparada por um push git ou um check-in TFVC, e as alterações do Lote foram selecionadas.
  • Schedule: gatilho agendado .
  • ValidateShelveset: um usuário enfileirava manualmente o build de um conjunto de prateleiras TFVC específico.
  • CheckInShelveset: gatilho de check-in fechado .
  • PullRequest: o build foi disparado por uma política de branch do Git que requer um build.
  • ResourceTrigger: o build foi disparado por um gatilho de recurso ou foi disparado por outro build.
Consulte gatilhos de pipeline build, melhorar a qualidade do código com políticas de branch.
Sim
Build.Repository.Clean O valor selecionado para Limpar nas configurações do repositório de origem.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.LocalPath

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Observação importante: se você fizer check-out de apenas um repositório Git, esse caminho será o caminho exato para o código. Se você fizer check-out de vários repositórios, o comportamento será o seguinte (e poderá ser diferente do valor da variável Build.SourcesDirectory):

  • Se a etapa de checkout do repositório auto (primário) não tiver nenhum caminho de check-out personalizado definido ou o caminho de check-out for o caminho $(Pipeline.Workspace)/s/<RepoName> padrão de vários checkouts para o auto repositório, o valor dessa variável será revertido para seu valor padrão, ou seja $(Pipeline.Workspace)/s.
  • Se a etapa de checkout do repositório auto (primário) tiver um caminho de check-out personalizado definido (e não for o caminho padrão de vários checkouts), essa variável conterá o caminho exato para o auto repositório.
Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.ID O identificador exclusivo do repositório.

Isso não mudará, mesmo que o nome do repositório o faça.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.Name O nome do repositório de gatilho.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.Provider O tipo do repositório de gatilho. Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Não
Build.Repository.Tfvc.Workspace Definido se o repositório está Controle de Versão do Team Foundation. O nome do workspace do TFVC usado pelo agente de build.


Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8, o nome do workspace poderá ser: ws_12_8

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.Repository.Uri A URL do repositório de gatilho. Por exemplo: Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Não
Build.RequestedFor Veja "Como as variáveis de identidade são definidas?".

Observação: esse valor pode conter whitespace ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Sim
Build.RequestedForEmail Veja "Como as variáveis de identidade são definidas?". Sim
Build.RequestedForId Veja "Como as variáveis de identidade são definidas?". Sim
Build.SourceBranch O branch do repositório de gatilho para o qual o build foi enfileirado. Alguns exemplos:
  • Branch de repositório Git: refs/heads/master
  • Solicitação de pull do repositório Git: refs/pull/1/merge
  • Branch de repositório TFVC: $/teamproject/main
  • Check-in do repositório TFVC fechado: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Compilação do conjunto de repositórios de repositório do TFVC: myshelveset;username@live.com
  • Quando o pipeline é disparado por uma marca: refs/tags/your-tag-name
Quando você usa essa variável no formato de número de build, os caracteres de barra (/) são substituídos por caracteres _sublinhados).

Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Sim
Build.SourceBranchName O nome do branch no repositório de gatilho para o qual o build foi enfileirado.
  • Branch de repositório Git ou solicitação de pull: o último segmento de caminho no ref. Por exemplo, refs/heads/master nesse valor está master. Nesse refs/heads/feature/tools valor está tools.
  • Branch de repositório TFVC: o último segmento de caminho no caminho do servidor raiz para o workspace. Por exemplo, $/teamproject/main nesse valor está main.
  • O check-in do repositório TFVC ou o build do conjunto de prateleiras é o nome do conjunto de prateleiras. Por exemplo, Gated_2016-06-06_05.20.51.4369;username@live.com ou myshelveset;username@live.com.
Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Sim
Build.SourcesDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados.

Observação importante: se você fizer check-out de apenas um repositório Git, esse caminho será o caminho exato para o código. Se você fizer check-out de vários repositórios, ele será revertido para seu valor padrão, ou seja $(Pipeline.Workspace)/s, mesmo que o repositório auto (primário) seja verificado em um caminho personalizado diferente do caminho $(Pipeline.Workspace)/s/<RepoName> padrão de vários checkouts (a esse respeito, a variável difere do comportamento da variável Build.Repository.LocalPath).

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.SourceVersion A alteração de controle de versão mais recente do repositório de gatilho incluído neste build. Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Sim
Build.SourceVersionMessage O comentário da confirmação ou do conjunto de alterações para o repositório de gatilho. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for menor.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão. Além disso, essa variável só está disponível no nível da etapa e não está disponível no trabalho nem nos níveis de estágio (ou seja, a mensagem não é extraída até que o trabalho tenha começado e verificado o código).

Observação: essa variável está disponível no TFS 2015.4.

Não
Build.StagingDirectory

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos copiar e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts no Azure Pipelines.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
Build.Repository.Git.SubmoduleCheckout O valor selecionado para submódulos de Checkout na guia repositório. Com vários repositórios verificados, esse valor rastreia a configuração do repositório de gatilho.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.SourceTfvcShelveset Definido se o repositório está Controle de Versão do Team Foundation.


Se você estiver executando um build fechado ou uma compilação de conjunto de prateleiras, isso será definido como o nome do conjunto de prateleiras que você está criando.

Observação: essa variável produz um valor inválido para uso de build em um formato de número de build.
Não
Build.TriggeredBy.BuildId Se o build tiver sido disparado por outro build, essa variável será definida como BuildID do build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.TriggeredBy.DefinitionId Se o build tiver sido disparado por outro build, essa variável será definida como DefinitionID do build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.TriggeredBy.DefinitionName Se o build tiver sido disparado por outro build, essa variável será definida como o nome do pipeline de build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.TriggeredBy.BuildNumber Se o build tiver sido disparado por outro build, essa variável será definida como o número do build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Build.TriggeredBy.ProjectID Se o build tiver sido disparado por outro build, essa variável será definida como ID do projeto que contém o build de gatilho. Em pipelines clássicos, essa variável é disparada por um gatilho de conclusão de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não
Common.TestResultsDirectory O caminho local no agente em que os resultados do teste são criados. Por exemplo: c:\agent_work\1\TestResults

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não

Variáveis de pipeline (DevOps Server 2020)

VariávelDescrição
Pipeline.Workspace Diretório do workspace para um pipeline específico. Essa variável tem o mesmo valor que Agent.BuildDirectory.

Por exemplo, /home/vsts/work/1.

Variáveis de trabalho de implantação (DevOps Server 2020)

Essas variáveis têm escopo para um trabalho de implantação específico e serão resolvidas somente no momento da execução do trabalho.

VariávelDescrição
Environment.Name Nome do ambiente direcionado no trabalho de implantação para executar as etapas de implantação e registrar o histórico de implantação. Por exemplo, smarthotel-dev.
Environment.Id ID do ambiente direcionado no trabalho de implantação. Por exemplo, 10.
Environment.ResourceName Nome do recurso específico dentro do ambiente direcionado no trabalho de implantação para executar as etapas de implantação e registrar o histórico de implantação. Por exemplo, bookings que é um namespace do Kubernetes que foi adicionado como um recurso ao ambiente smarthotel-dev.
Environment.ResourceId ID do recurso específico dentro do ambiente direcionado no trabalho de implantação para executar as etapas de implantação. Por exemplo, 4.

Variáveis do sistema (DevOps Server 2020)

VariávelDescriçãoDisponível em modelos?
System.AccessToken Use o token OAuth para acessar a API REST.

Use System.AccessToken de scripts YAML.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Sim
System.CollectionId O GUID da coleção TFS ou da organização Azure DevOps Sim
System.CollectionUri Uma cadeia de caracteres Team Foundation Server URI de coleção. Sim
System.DefaultWorkingDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Não
System.DefinitionId A ID do pipeline de build. Sim
System.HostType Definido como build se o pipeline for um build. Para uma versão, os valores são deployment para um trabalho de grupo de implantação, gates durante a avaliação de portões e release para outros trabalhos (Agente e Sem Agente). Sim
System.JobAttempt Definido como 1 na primeira vez em que este trabalho é tentado e incrementa toda vez que o trabalho é repetido. Não
System.JobDisplayName O nome legível dado a um trabalho. Não
System.JobId Um identificador exclusivo para uma única tentativa de um único trabalho. O valor é exclusivo para o pipeline atual. Não
System.JobName O nome do trabalho, normalmente usado para expressar dependências e acessar variáveis de saída. Não
System.PhaseAttempt Defina como 1 na primeira vez em que essa fase é tentada e incrementa toda vez que o trabalho é repetido.

Nota: "Fase" é um conceito com redundância principal que representa o tempo de design para um trabalho (enquanto o trabalho era a versão de runtime de uma fase). Removemos principalmente o conceito de "fase" de Azure Pipelines. Trabalhos de matriz e multiconfiguração são o único lugar em que "fase" ainda é diferente de "trabalho". Uma fase pode criar uma instância de vários trabalhos que diferem apenas em suas entradas.
Não
System.PhaseDisplayName O nome legível dado a uma fase. Não
System.PhaseName Um identificador baseado em cadeia de caracteres para um trabalho, normalmente usado para expressar dependências e acessar variáveis de saída. Não
System.StageAttempt Definido como 1 na primeira vez que este estágio é tentado e incrementa toda vez que o trabalho é repetido. Não
System.StageDisplayName O nome legível dado a um estágio. Não
System.StageName Um identificador baseado em cadeia de caracteres para um estágio, normalmente usado para expressar dependências e acessar variáveis de saída. Sim
System.PullRequest.IsFork Se a solicitação de pull for de uma bifurcação do repositório, essa variável será definida como True. Caso contrário, ele será definido como False. Sim
System.PullRequest.PullRequestId A ID da solicitação de pull que causou esse build. Por exemplo: 17. (Essa variável será inicializada somente se o build for executado devido a uma PR git afetada por uma política de branch). Não
System.PullRequest.PullRequestNumber O número da solicitação de pull que causou esse build. Essa variável é preenchida para solicitações de pull de GitHub que têm uma ID de solicitação de pull diferente e um número de solicitação de pull. Essa variável só estará disponível em um pipeline YAML se a PR for afetada por uma política de branch. Não
System.PullRequest.SourceBranch O branch que está sendo revisado em uma solicitação de pull. Por exemplo: refs/heads/users/raisa/new-feature. (Essa variável será inicializada somente se o build for executado devido a uma PR git afetada por uma política de branch). Essa variável só estará disponível em um pipeline YAML se a PR for afetada por uma política de branch. Não
System.PullRequest.SourceRepositoryURI A URL para o repositório que contém a solicitação de pull. Por exemplo: https://dev.azure.com/ouraccount/_git/OurProject. Não
System.PullRequest.TargetBranch O branch que é o destino de uma solicitação de pull. Por exemplo: refs/heads/master quando o repositório está em Azure Repos e master quando o repositório está em GitHub. Essa variável será inicializada somente se o build for executado devido a uma PR git afetada por uma política de branch. Essa variável só estará disponível em um pipeline YAML se a PR for afetada por uma política de branch. Não
System.TeamFoundationCollectionUri O URI da coleção team foundation. Por exemplo: https://dev.azure.com/fabrikamfiber/

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Sim
System.TeamProject O nome do projeto que contém esse build. Sim
System.TeamProjectId A ID do projeto ao qual essa compilação pertence. Sim
TF_BUILD Definido como True se o script está sendo executado por uma tarefa de build.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Não

Variáveis de agente (DevOps Server 2019)

Observação

Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de build. Você não pode usá-los para personalizar o número de build ou para aplicar um rótulo ou marca de controle de versão.

VariávelDescrição
Agent.BuildDirectory

O caminho local no agente em que todas as pastas de um determinado pipeline de build são criadas.

Por exemplo: c:\agent_work\1

Agent.HomeDirectory O diretório no qual o agente está instalado. Isso contém o software do agente. Por exemplo: c:\agent.
Agent.Id A ID do agente.
Agent.JobName O nome do trabalho em execução. Isso geralmente será "Trabalho" ou "__default", mas em cenários de várias configurações, será a configuração.
Agent.JobStatus O status do build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parcialmente bem-sucedido)

A variável de ambiente deve ser referenciada como AGENT_JOBSTATUS. O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores.

Agent.MachineName O nome do computador no qual o agente está instalado.
Agent.Name

O nome do agente registrado no pool.

Se você estiver usando um agente auto-hospedado, esse nome será especificado por você. Consulte agentes.

Agent.OS O sistema operacional do host do agente. Os valores válidos são:
  • Windows_NT
  • Darwin
  • Linux
Se você estiver executando em um contêiner, o host e o contêiner do agente poderão estar executando sistemas operacionais diferentes.
Agent.OSArchitecture A arquitetura do processador do sistema operacional do host do agente. Os valores válidos são:
  • X86
  • X64
  • ARM
Agent.TempDirectory Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa da CLI do .NET Core para manter itens temporários, como resultados de teste, antes de serem publicados.
Agent.ToolsDirectory O diretório usado por tarefas como o Instalador de Ferramentas do Nó e a Versão do Python para alternar entre várias versões de uma ferramenta. Essas tarefas adicionarão ferramentas desse diretório para PATH que as etapas de build subsequentes possam usá-las.

Saiba mais sobre como gerenciar esse diretório em um agente auto-hospedado.
Agent.WorkFolder O diretório de trabalho para este agente. Por exemplo: c:\agent_work.

Esse diretório não tem a garantia de ser gravável por tarefas de pipeline (por exemplo, quando mapeado para um contêiner)

Variáveis de build (DevOps Server 2019)


VariávelDescrição
Build.ArtifactStagingDirectory

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados por push para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos De cópia e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts em Azure Pipelines.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Build.BuildId A ID do registro do build concluído.
Build.BuildNumber O nome do build concluído. Você pode especificar o formato de número de build que gera esse valor nas opções de pipeline.

Um uso típico dessa variável é torná-la parte do formato de rótulo, que você especifica na guia repositório.

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.



Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Build.BuildUri O URI do build. Por exemplo: vstfs:///Build/Build/1430.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.BinariesDirectory O caminho local no agente que você pode usar como uma pasta de saída para binários compilados.

Por padrão, novos pipelines de build não são configurados para limpar esse diretório. Você pode definir seu build para limpá-lo na guia Repositório.

Por exemplo: c:\agent_work\1\b.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.DefinitionName O nome do pipeline de build.

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Build.DefinitionVersion A versão do pipeline de build.
Build.QueuedBy Veja "Como as variáveis de identidade estão definidas?".

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Build.QueuedById Veja "Como as variáveis de identidade estão definidas?".
Build.Reason O evento que causou a execução do build.
  • Manual: um usuário enfileirava manualmente o build.
  • IndividualCI: CI (integração contínua) disparada por um push git ou um check-in TFVC.
  • BatchedCI: CI (integração contínua) disparada por um push git ou um check-in TFVC, e as alterações do Lote foram selecionadas.
  • Schedule: gatilho agendado .
  • ValidateShelveset: um usuário enfileirava manualmente o build de um conjunto de prateleiras TFVC específico.
  • CheckInShelveset: gatilho de check-in fechado .
  • PullRequest: o build foi disparado por uma política de branch do Git que requer um build.
  • BuildCompletion: o build foi disparado por outro build
Consulte gatilhos de pipeline build, melhorar a qualidade do código com políticas de branch.
Build.Repository.Clean O valor selecionado para Limpar nas configurações do repositório de origem.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.LocalPath

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Essa variável é sinônimo de Build.SourcesDirectory.

Build.Repository.Name O nome do repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.Provider O tipo de repositório selecionado. Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.Tfvc.Workspace Definido se o repositório está Controle de Versão do Team Foundation. O nome do workspace TFVC usado pelo agente de build.


Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8, o nome do workspace poderá ser: ws_12_8

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.Uri A URL do repositório. Por exemplo: Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.RequestedFor Veja "Como as variáveis de identidade são definidas?".

Observação: esse valor pode conter whitespace ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Build.RequestedForEmail Veja "Como as variáveis de identidade são definidas?".
Build.RequestedForId Veja "Como as variáveis de identidade são definidas?".
Build.SourceBranch O branch para o qual o build foi enfileirado. Alguns exemplos:
  • Branch de repositório Git: refs/heads/master
  • Solicitação de pull do repositório Git: refs/pull/1/merge
  • Branch de repositório TFVC: $/teamproject/main
  • Check-in do repositório TFVC fechado: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Compilação do conjunto de repositórios de repositório do TFVC: myshelveset;username@live.com
Quando você usa essa variável no formato de número de build, os caracteres de barra (/) são substituídos por caracteres _sublinhados).

Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Build.SourceBranchName O nome do branch para o qual o build foi enfileirado.
  • Branch de repositório Git ou solicitação de pull: o último segmento de caminho no ref. Por exemplo, refs/heads/master nesse valor está master. Nesse refs/heads/feature/tools valor está tools.
  • Branch de repositório TFVC: o último segmento de caminho no caminho do servidor raiz para o workspace. Por exemplo, $/teamproject/main esse valor é main.
  • O check-in do repositório TFVC ou o build do conjunto de prateleiras é o nome do conjunto de prateleiras. Por exemplo, Gated_2016-06-06_05.20.51.4369;username@live.com ou myshelveset;username@live.com.
Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Build.SourcesDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Essa variável é sinônimo de Build.Repository.LocalPath.

Build.SourceVersion A alteração de controle de versão mais recente incluída neste build. Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.SourceVersionMessage O comentário do conjunto de alterações ou confirmação. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for menor.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Observação: essa variável está disponível no TFS 2015.4.

Build.StagingDirectory

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos copiar e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts no Azure Pipelines.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Build.Repository.Git.SubmoduleCheckout O valor selecionado para submódulos de Checkout na guia repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.SourceTfvcShelveset Definido se o repositório está Controle de Versão do Team Foundation.


Se você estiver executando um build fechado ou uma compilação de conjunto de prateleiras, isso será definido como o nome do conjunto de prateleiras que você está criando.

Observação: essa variável produz um valor inválido para uso de build em um formato de número de build.
Build.TriggeredBy.BuildId Se o build tiver sido disparado por outro build, essa variável será definida como BuildID do build de gatilho.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.TriggeredBy.DefinitionId Se o build tiver sido disparado por outro build, essa variável será definida como DefinitionID do build de gatilho.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.TriggeredBy.DefinitionName Se o build tiver sido disparado por outro build, essa variável será definida como o nome do pipeline de build de gatilho.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.TriggeredBy.BuildNumber Se o build tiver sido disparado por outro build, essa variável será definida como o número do build de gatilho.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.TriggeredBy.ProjectID Se o build tiver sido disparado por outro build, essa variável será definida como ID do projeto que contém o build de gatilho.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Common.TestResultsDirectory O caminho local no agente em que os resultados do teste são criados. Por exemplo: c:\agent_work\1\TestResults

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Variáveis do sistema (DevOps Server 2019)

VariávelDescrição
System.AccessToken Use o token OAuth para acessar a API REST.

Use System.AccessToken de scripts YAML.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
System.CollectionId O GUID da coleção TFS ou da organização Azure DevOps
System.DefaultWorkingDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

System.DefinitionId A ID do pipeline de build.
System.HostType Definido como build se o pipeline for um build. Para uma versão, os valores são deployment para um trabalho de grupo de implantação e release para um trabalho do Agente.
System.PullRequest.IsFork Se a solicitação de pull for de uma bifurcação do repositório, essa variável será definida como True. Caso contrário, ele será definido como False.
System.PullRequest.PullRequestId A ID da solicitação de pull que causou esse build. Por exemplo: 17. (Essa variável será inicializada somente se o build for executado devido a um Git PR afetado por uma política de branch.)
System.PullRequest.PullRequestNumber O número da solicitação de pull que causou esse build. Essa variável é populada para solicitações de pull de GitHub que têm uma ID de solicitação de pull diferente e um número de solicitação de pull.
System.PullRequest.SourceBranch O branch que está sendo revisado em uma solicitação de pull. Por exemplo: refs/heads/users/raisa/new-feature. (Essa variável será inicializada somente se o build for executado devido a um Git PR afetado por uma política de branch.)
System.PullRequest.SourceRepositoryURI A URL para o repositório que contém a solicitação de pull. Por exemplo: https://dev.azure.com/ouraccount/_git/OurProject. (Essa variável será inicializada somente se o build for executado devido a um Azure Repos Git PR afetado por uma política de branch. Ele não é inicializado para GitHub PRs.)
System.PullRequest.TargetBranch O branch que é o destino de uma solicitação de pull. Por exemplo: refs/heads/master. Essa variável será inicializada somente se o build for executado devido a uma PR do Git afetada por uma política de branch.
System.TeamFoundationCollectionUri O URI da coleção team foundation. Por exemplo: https://dev.azure.com/fabrikamfiber/.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
System.TeamProject O nome do projeto que contém esse build.
System.TeamProjectId A ID do projeto ao qual essa compilação pertence.
TF_BUILD Defina como True se o script está sendo executado por uma tarefa de build.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Variáveis de agente (TFS 2018)

Observação

Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de build. Você não pode usá-los para personalizar o número de build ou para aplicar um rótulo ou marca de controle de versão.

VariávelDescrição
Agent.BuildDirectory

O caminho local no agente em que todas as pastas de um determinado pipeline de build são criadas.

Por exemplo: c:\agent_work\1

Agent.HomeDirectory O diretório no qual o agente está instalado. Isso contém o software do agente. Por exemplo: c:\agent.
Agent.Id A ID do agente.
Agent.JobStatus O status do build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parcialmente bem-sucedido)

A variável de ambiente deve ser referenciada como AGENT_JOBSTATUS. O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores.

Agent.MachineName O nome do computador no qual o agente está instalado.
Agent.Name

O nome do agente registrado no pool.

Esse nome é especificado por você. Veja agentes.

Agent.TempDirectory Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa da CLI do .NET Core para manter itens temporários, como resultados de teste, antes de serem publicados.
Agent.ToolsDirectory O diretório usado por tarefas como o Instalador de Ferramentas de Nó e a Versão do Python para alternar entre várias versões de uma ferramenta. Essas tarefas adicionarão ferramentas desse diretório para PATH que as etapas de build subsequentes possam usá-las.

Saiba mais sobre como gerenciar esse diretório em um agente auto-hospedado.
Agent.WorkFolder O diretório de trabalho para este agente. Por exemplo: c:\agent_work.

Variáveis de build (TFS 2018)


VariávelDescrição
Build.ArtifactStagingDirectory O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados para o destino.

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos copiar e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts no Azure Pipelines.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Build.BuildId A ID do registro do build concluído.
Build.BuildNumber O nome do build concluído. Você pode especificar o formato de número de build que gera esse valor nas opções de pipeline.

Um uso típico dessa variável é torná-la parte do formato de rótulo, que você especifica na guia repositório.

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.



Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como uma marca de controle de versão.

Build.BuildUri O URI do build. Por exemplo: vstfs:///Build/Build/1430.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.BinariesDirectory O caminho local no agente que você pode usar como uma pasta de saída para binários compilados.

Por padrão, novos pipelines de build não são configurados para limpar esse diretório. Você pode definir seu build para limpá-lo na guia Repositório.

Por exemplo: c:\agent_work\1\b.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.DefinitionName O nome do pipeline de build.

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Build.DefinitionVersion A versão do pipeline de build.
Build.QueuedBy Veja "Como as variáveis de identidade estão definidas?".

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Build.QueuedById Veja "Como as variáveis de identidade estão definidas?".
Build.Reason O evento que causou a execução do build.
  • Manual: um usuário enfileirava manualmente o build da interface do usuário ou uma chamada à API.
  • IndividualCI: CI (integração contínua) disparada por um push git ou um check-in TFVC.
  • BatchedCI: CI (integração contínua) disparada por um push git ou um check-in TFVC, e as alterações do Lote foram selecionadas.
  • Schedule: gatilho agendado .
  • ValidateShelveset: um usuário enfileirava manualmente o build de um conjunto de prateleiras TFVC específico.
  • CheckInShelveset: gatilho de check-in fechado .
  • PullRequest: o build foi disparado por uma política de branch do Git que requer um build.
Consulte gatilhos de pipeline build, melhorar a qualidade do código com políticas de branch.
Build.Repository.Clean O valor selecionado para Limpar nas configurações do repositório de origem.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.LocalPath

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Essa variável é sinônimo de Build.SourcesDirectory.

Build.Repository.Name O nome do repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.Provider O tipo de repositório selecionado. Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.Tfvc.Workspace Definido se o repositório está Controle de Versão do Team Foundation. O nome do workspace TFVC usado pelo agente de build.

Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8, o nome do workspace poderá ser: ws_12_8

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.Repository.Uri A URL do repositório. Por exemplo:
  • Git: https://fabrikamfiber/tfs/DefaultCollection/Scripts/_git/Scripts
  • TFVC: https://fabrikamfiber/tfs/DefaultCollection/
Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.RequestedFor Veja "Como as variáveis de identidade estão definidas?".

Observação: esse valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato de rótulo falhará.

Build.RequestedForEmail Veja "Como as variáveis de identidade estão definidas?".
Build.RequestedForId Veja "Como as variáveis de identidade estão definidas?".
Build.SourceBranch O branch para o qual o build foi enfileirado. Alguns exemplos:
  • Branch de repositório Git: refs/heads/master
  • Solicitação de pull do repositório Git: refs/pull/1/merge
  • Branch de repositório TFVC: $/teamproject/main
  • Check-in de repositório TFVC fechado: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Build de conjunto de repositórios de repositório TFVC: myshelveset;username@live.com
Quando você usa essa variável no formato de número de build, os caracteres de barra (/) são substituídos por caracteres _sublinhados).

Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Build.SourceBranchName O nome do branch para o qual o build foi enfileirado.
  • Branch de repositório git ou solicitação de pull: o último segmento de caminho no ref. Por exemplo, refs/heads/master nesse valor está master. Nesse refs/heads/feature/tools valor está tools.
  • Branch de repositório TFVC: o último segmento de caminho no caminho do servidor raiz para o workspace. Por exemplo, $/teamproject/main nesse valor é main.
  • O check-in do repositório TFVC ou o build de conjunto de prateleiras é o nome do conjunto de prateleiras. Por exemplo, Gated_2016-06-06_05.20.51.4369;username@live.com ou myshelveset;username@live.com.
Observação: no TFVC, se você estiver executando um build de check-in fechado ou criando manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de build.
Build.SourcesDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Essa variável é sinônimo de Build.Repository.LocalPath.

Build.SourceVersion A alteração de controle de versão mais recente incluída neste build. Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.SourceVersionMessage O comentário do commit ou do conjunto de alterações. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for menor.

Essa variável tem escopo de agente e pode ser usada como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Observação: essa variável está disponível no TFS 2015.4.

Build.StagingDirectory

O caminho local no agente para o qual todos os artefatos são copiados antes de serem enviados por push para o destino. Por exemplo: c:\agent_work\1\a

Uma maneira típica de usar essa pasta é publicar seus artefatos de build com os arquivos De cópia e publicar tarefas de artefatos de build .

Observação: Build.ArtifactStagingDirectory e Build.StagingDirectory são intercambiáveis. Esse diretório é limpo antes de cada nova compilação, para que você não precise limpá-lo por conta própria.

Veja Artifacts em Azure Pipelines.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Build.Repository.Git.SubmoduleCheckout O valor selecionado para submodules do Checkout na guia repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
Build.SourceTfvcShelveset Definido se o repositório está Controle de Versão do Team Foundation.

Se você estiver executando um build fechado ou um build de conjunto de prateleiras, isso será definido como o nome do conjunto de prateleiras que você está criando.

Observação: essa variável gera um valor inválido para uso de build em um formato de número de build.
Common.TestResultsDirectory O caminho local no agente em que os resultados do teste são criados. Por exemplo: c:\agent_work\1\TestResults

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Variáveis do sistema (TFS 2018)

VariávelDescrição
System.AccessToken Use o token OAuth para acessar a API REST.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
System.CollectionId O GUID da coleção TFS ou da organização Azure DevOps
System.DefaultWorkingDirectory

O caminho local no agente em que os arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s

Por padrão, novos pipelines de build atualizam apenas os arquivos alterados. Você pode modificar como os arquivos são baixados na guia Repositório.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

System.DefinitionId A ID do pipeline de build.
System.HostType Defina para build se o pipeline é um build ou release se o pipeline é uma versão.
System.PullRequest.IsFork Se a solicitação de pull for de uma bifurcação do repositório, essa variável será definida como True. Caso contrário, ele será definido como False. Disponível no TFS 2018.2.
System.PullRequest.PullRequestId A ID da solicitação de pull que causou esse build. Por exemplo: 17. (Essa variável será inicializada somente se o build for executado devido a uma PR git afetada por uma política de branch.)
System.PullRequest.SourceBranch O branch que está sendo revisado em uma solicitação de pull. Por exemplo: refs/heads/users/raisa/new-feature. (Essa variável será inicializada somente se o build for executado devido a uma PR git afetada por uma política de branch.)
System.PullRequest.SourceRepositoryURI A URL para o repositório que contém a solicitação de pull. Por exemplo: http://our-server:8080/tfs/DefaultCollection/_git/OurProject. (Essa variável será inicializada somente se o build for executado devido a um Azure Repos Git PR afetado por uma política de branch.)
System.PullRequest.TargetBranch O branch que é o destino de uma solicitação de pull. Por exemplo: refs/heads/master. Essa variável será inicializada somente se o build for executado devido a uma PR git afetada por uma política de branch.
System.TeamFoundationCollectionUri O URI da coleção team foundation. Por exemplo: http://our-server:8080/tfs/DefaultCollection/.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.
System.TeamProject O nome do projeto que contém esse build.
System.TeamProjectId A ID do projeto ao qual essa compilação pertence.
TF_BUILD Definido como True se o script está sendo executado por uma tarefa de build.

Essa variável tem escopo de agente. Ele pode ser usado como uma variável de ambiente em um script e como um parâmetro em uma tarefa de build, mas não como parte do número de build ou como uma marca de controle de versão.

Como as variáveis de identidade são definidas?

O valor depende do que causou o build e são específicos para Azure Repos repositórios.

Se o build for disparado... Em seguida, os valores Build.QueuedBy e Build.QueuedById são baseados em... Em seguida, os valores Build.RequestedFor e Build.RequestedForId são baseados em...
Em Git ou TFVC pelos gatilhos de CI (integração contínua) A identidade do sistema, por exemplo: [DefaultCollection]\Project Collection Service Accounts A pessoa que pressionou ou verificou as alterações.
No Git ou por um build de política de branch. A identidade do sistema, por exemplo: [DefaultCollection]\Project Collection Service Accounts A pessoa que verificou as alterações.
No TFVC por um gatilho de check-in fechado A pessoa que verificou as alterações. A pessoa que verificou as alterações.
No Git ou TFVC pelos gatilhos agendados A identidade do sistema, por exemplo: [DefaultCollection]\Project Collection Service Accounts A identidade do sistema, por exemplo: [DefaultCollection]\Project Collection Service Accounts
Porque você clicou no botão Compilar Fila Você Você