Utilizar variáveis predefinidas
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
As variáveis fornecem-lhe uma forma conveniente de obter os bits chave de dados em várias partes do seu pipeline. Esta é uma lista de variáveis predefinidas que estão disponíveis para utilização. 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 fazer referência a variáveis predefinidas como variáveis de ambiente. Por exemplo, a variável Build.ArtifactStagingDirectory
torna-se a variável BUILD_ARTIFACTSTAGINGDIRECTORY
.
Para pipelines clássicos, você pode usar variáveis de liberaçã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.
Gorjeta
Você pode pedir ajuda Copilot com variáveis. Para saber mais, consulte Pedir ao Copiloto para gerar um estágio com uma condição com base em valores variáveis.
Build.Clean
Esta é uma variável preterida que modifica como o agente de compilação 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 pela compilação em execução.
No YAML, você deve mapear System.AccessToken
explicitamente para o pipeline usando uma variável. Você pode fazer isso no nível da etapa ou da tarefa. Por exemplo, você pode usar System.AccessToken
para autenticar com um registro de contêiner.
steps:
- task: Docker@2
inputs:
command: login
containerRegistry: '<docker connection>'
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
Você pode configurar o escopo padrão para System.AccessToken
usar o escopo de autorização de trabalho de compilação.
System.Debug
Para obter logs mais detalhados para depurar problemas de pipeline, defina-o System.Debug
e defina-o como true
.
Edite seu pipeline.
Selecione Variáveis.
Adicione uma nova variável com o nome
System.Debug
e o valortrue
.Salve a nova variável.
Configuração System.Debug
para true
configurar logs detalhados para todas as execuções. Você também pode configurar logs detalhados para uma única execução com a caixa de seleção Habilitar diagnóstico do sistema.
Você também pode definir System.Debug
como true
uma variável em um pipeline ou modelo.
variables:
system.debug: 'true'
Quando System.Debug
é definido como true
, uma variável extra nomeada Agent.Diagnostic
é definida como true
. Quando Agent.Diagnostic
é true
, o agente coleta mais logs que podem ser usados para solucionar problemas de rede para agentes auto-hospedados. Para obter mais informações, veja Diagnósticos de rede de agentes autoalojados.
Nota
A Agent.Diagnostic
variável está disponível com o Agent v2.200.0 e superior.
Para obter mais informações, consulte Revisar logs para diagnosticar problemas de pipeline.
Variáveis do agente (Serviços de DevOps)
Nota
Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de compilação. Não é possível usá-los para personalizar o número de compilação ou para aplicar um rótulo ou tag de controle de versão.
Variável | Description |
---|---|
Agent.BuildDirectory | O caminho local no agente onde todas as pastas para um determinado pipeline de compilação são criadas. Esta 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 seus IDs do Docker em tempo de execução. Exemplo segue tabela. |
Agent.HomeDirectory | O diretório no qual o agente está instalado. Isso contém o software do agente. Por exemplo: c:\agent . |
Agent.Id | O ID do agente. |
Agent.JobName | O nome do trabalho em execução. Este será geralmente "Job"; ou "__default", mas em cenários multi-configuração, será a configuração. |
Agent.JobStatus | O status da compilação.
AGENT_JOBSTATUS . O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores. |
Agent.MachineName | O nome da máquina na 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:
|
Agent.OSArchitecture | A arquitetura do processador do sistema operacional do host do agente. Os valores válidos são:
|
Agent.TempDirectory | Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa .NET Core CLI para armazenar itens temporários, como resultados de teste, antes de serem publicados. Por exemplo: /home/vsts/work/_temp para o Ubuntu. |
Agent.ToolsDirectory | O diretório usado por tarefas como Node Tool Installer e Use Python Version para alternar entre várias versões de uma ferramenta. Essas tarefas adicionam ferramentas desse diretório para PATH que as etapas de compilação 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 .Nota: Não é garantido que este diretório seja gravável por tarefas de pipeline (por exemplo, quando mapeado em um contêiner) |
Exemplo de Agent.ContainerMapping:
{
"one_container": {
"id": "bdbb357d73a0bd3550a1a5b778b62a4c88ed2051c7802a0659f1ff6e76910190"
},
"another_container": {
"id": "82652975109ec494876a8ccbb875459c945982952e0a72ad74c91216707162bb"
}
}
Variáveis de compilação (Serviços de DevOps)
Quando você usa uma variável em um modelo que não está marcado como disponível em modelos, a variável não será renderizada. A variável não será renderizada porque seu valor não está acessível dentro do escopo do modelo.
Variável | Description | Disponível em modelos? |
---|---|---|
Build.ArtifactStagingDirectory | 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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.BuildId | A ID do registro para a compilação concluída. | Não |
Build.BuildNumber | O nome da compilação concluída, 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. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.BuildUri | O URI para a compilação. 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 compilação, mas não como parte do número de compilação 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 compilação não são configurados para limpar esse diretório. Você pode definir sua compilação para limpá-la 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.ContainerId | A ID do contêiner para seu 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.CronSchedule.DisplayName | O displayName da programação cron que acionou a execução do pipeline. Essa variável só será definida se a execução do pipeline for acionada por um gatilho agendado YAML. Para obter mais informações, consulte definição schedules.cron - variável Build.CronSchedule.DisplayName |
Sim |
Build.DefinitionName | O nome do pipeline de compilação. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.DefinitionVersion | A versão do pipeline de compilação. | Sim |
Build.QueuedBy | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.QueuedById | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.Reason | O evento que fez com que a compilação fosse executada.
|
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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.LocalPath | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s .Por padrão, os novos pipelines de compilação 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 pode diferir do valor da variável Build.SourcesDirectory):
|
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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Name | O nome do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Provider | O tipo de repositório de acionamento.
|
Não |
Build.Repository.Tfvc.Workspace | Definido se seu repositório é Team Foundation Version Control. O nome do espaço de trabalho TFVC usado pelo agente de compilação. Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8 , o nome do espaço de trabalho 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Uri | A URL do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.RequestedFor | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.RequestedForEmail | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.RequestedForId | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.SourceBranch | A ramificação do repositório de acionamento para o qual a compilação foi enfileirada. Alguns exemplos:
/ ) são substituídos por caracteres _ de sublinhado ).Nota: No TFVC, se você estiver executando uma compilação de check-in fechado ou construindo manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de compilação. |
Sim |
Build.SourceBranchName | O nome da ramificação no repositório de acionamento para o qual a compilação foi enfileirada.
|
Sim |
Build.SourcesDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s .Por padrão, os novos pipelines de compilação 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, que é $(Pipeline.Workspace)/s , mesmo que o repositório self (primário) faça check-out para um caminho personalizado diferente de seu caminho $(Pipeline.Workspace)/s/<RepoName> padrão de multi-checkout (nesse aspeto, 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.SourceVersion | A última alteração de controle de versão do repositório de acionamento incluído nesta compilação.
|
Sim |
Build.SourceVersionMessage | O comentário do commit ou changeset para o repositório de acionamento. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for mais curto. O Build.SourceVersionMessage corresponde à mensagem sobre Build.SourceVersion commit. A Build.SourceVersion confirmação para uma compilação PR é a confirmação de mesclagem (não a confirmação na ramificação 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Além disso, essa variável só está disponível no nível de etapa e não está disponível nos níveis de trabalho ou estágio (ou seja, a mensagem não é extraída até que o trabalho seja iniciado e o código seja verificado). Nota: Esta variável está disponível no TFS 2015.4. Nota: A variável Build.SourceVersionMessage não funciona com pipelines de compilação clássicos em repositórios Bitbucket quando Batch muda enquanto uma compilação está em andamento está habilitada. |
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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Git.SubmoduleCheckout | O valor selecionado para os submódulos Checkout na guia repositório. Com vários repositórios com check-out, esse valor rastreia a configuração do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.SourceTfvcShelveset | Definido se seu repositório é Team Foundation Version Control. Se você estiver executando uma compilação fechada ou uma compilação de prateleira, isso será definido com o nome do conjunto de prateleiras que você está construindo. Nota: Essa variável produz um valor que é inválido para uso de compilação em um formato de número de compilação. |
Não |
Build.TriggeredBy.BuildId | Se a compilação foi acionada por outra compilação, essa variável é definida como BuildID da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.DefinitionId | Se a compilação foi acionada por outra compilação, essa variável é definida como DefinitionID da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.DefinitionName | Se a compilação foi acionada por outra compilação, essa variável é definida como o nome do pipeline de compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.BuildNumber | Se a compilação foi acionada por outra compilação, essa variável é definida como o número da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.ProjectID | Se a compilação foi acionada por outra compilação, essa variável é definida como ID do projeto que contém a compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Common.TestResultsDirectory | O caminho local no agente onde 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Variáveis de pipeline (DevOps Services)
Variável | Description |
---|---|
Pipeline.Workspace | Diretório de espaço de trabalho para um pipeline específico. Esta variável tem o mesmo valor que Agent.BuildDirectory . Por exemplo, /home/vsts/work/1 . |
Gorjeta
Se você estiver usando pipelines de liberação clássicos, poderá usar versões clássicas e variáveis de artefatos para armazenar e acessar dados em todo o pipeline.
Variáveis de trabalho de implantação (Serviços de DevOps)
Essas variáveis têm como escopo um trabalho de Implantação específico e serão resolvidas somente no momento da execução do trabalho.
Variável | Description |
---|---|
Environment.Name | Nome do ambiente de destino 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 de destino no trabalho de implantação. Por exemplo, 10 . |
Environment.ResourceName | Nome do recurso específico dentro do ambiente de destino 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 de destino 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 , runOnce , ou rolling . |
Strategy.CycleName | O nome do ciclo atual em uma implantação. As opções são PreIteration , Iteration ou PostIteration . |
Variáveis de sistema (DevOps Services)
Quando você usa uma variável em um modelo que não está marcado como disponível em modelos, a variável não será renderizada. A variável não será renderizada porque seu valor não está acessível dentro do escopo do modelo.
Variável | Description | Disponí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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Sim |
System.CollectionId | O GUID da coleção TFS ou da organização do Azure DevOps. | Sim |
System.CollectionUri | O URI da coleção TFS ou da organização do Azure DevOps. Por exemplo: https://dev.azure.com/fabrikamfiber/ . |
Sim |
System.DefaultWorkingDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s Por padrão, os novos pipelines de compilação 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Sim |
System.DefinitionId | A ID do pipeline de compilação. | Sim |
System.HostType | Defina como build se o pipeline for uma compilação. 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 (Agent e Agentless). |
Sim |
System.JobAttempt | Defina como 1 na primeira vez que este trabalho é tentado e aumenta sempre que o trabalho é repetido. | Não |
System.JobDisplayName | O nome legível por humanos 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.OidcRequestUri | Gere um idToken para autenticação com Entra ID usando OpenID Connect (OIDC).
Mais informações. |
Sim |
System.PhaseAttempt | Defina como 1 na primeira vez que esta fase é tentada e aumenta sempre que o trabalho é repetido. Nota: "Fase" é um conceito principalmente redundante, que representa o tempo de design para um trabalho (enquanto o trabalho era a versão de tempo de execução de uma fase). Removemos principalmente o conceito de "fase" do Azure Pipelines. Os trabalhos matriciais e multi-config são o único lugar onde "fase" ainda é distinta de "trabalho". Uma fase pode instanciar 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.PlanId | Um identificador baseado em cadeia de caracteres para uma única execução de pipeline. | Não |
System.PullRequest.IsFork | Se a solicitação pull for de uma bifurcação do repositório, essa variável será definida como True .Caso contrário, é definido como False . |
Sim |
System.PullRequest.PullRequestId | A ID da solicitação pull que causou essa compilação. Por exemplo: 17 . (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). |
Não |
System.PullRequest.PullRequestNumber | O número da solicitação pull que causou essa compilação. Essa variável é preenchida para solicitações pull do GitHub que têm um ID de solicitação pull e um número de solicitação pull diferentes. Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. | Não |
System.PullRequest.targetBranchName | O nome da ramificação de destino para uma solicitação pull. Essa variável pode ser usada em um pipeline para executar condicionalmente tarefas ou etapas com base na ramificação de destino da solicitação pull. Por exemplo, talvez você queira acionar um conjunto diferente de testes ou ferramentas de análise de código, dependendo da ramificação na qual as alterações estão sendo mescladas. | Não |
System.PullRequest.SourceBranch | A ramificação que está sendo revisada em uma solicitação pull. Por exemplo: refs/heads/users/raisa/new-feature para Azure Repos. (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. |
Não |
System.PullRequest.SourceCommitId | A confirmação que está sendo revisada em uma solicitação pull. (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. | |
System.PullRequest.SourceRepositoryURI | A URL para o repositório que contém a solicitação pull. Por exemplo: https://dev.azure.com/ouraccount/_git/OurProject . |
Não |
System.PullRequest.TargetBranch | A ramificação que é o destino de uma solicitação pull. Por exemplo: refs/heads/main quando seu repositório está no Azure Repos e main quando seu repositório está no GitHub. Essa variável será inicializada somente se a compilação for executada devido a um Git PR afetado por uma política de ramificação. Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. |
Não |
System.StageAttempt | Defina como 1 na primeira vez que este estágio é tentado e aumenta sempre que o estágio é repetido. | Não |
System.StageDisplayName | O nome legível por humanos dado a um palco. | 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. | Não |
System.TeamFoundationCollectionUri | O URI da coleção TFS ou da organização do Azure DevOps. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Sim |
System.TeamProject | O nome do projeto que contém essa compilação. | Sim |
System.TeamProjectId | A ID do projeto ao qual esta compilação pertence. | Sim |
System.TimelineId | Um identificador baseado em cadeia de caracteres para os detalhes de execução e logs de uma única execução de pipeline. | Não |
TF_BUILD | Defina como True se o script estiver sendo executado por uma tarefa de compilação.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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Verifica variáveis (Serviços de DevOps)
Variável | Description |
---|---|
Checks.StageAttempt | Defina como 1 na primeira vez que este estágio é tentado e aumenta sempre que o estágio é repetido. Essa variável só pode ser usada dentro de uma aprovação ou verificação de um ambiente. Por exemplo, você pode usar $(Checks.StageAttempt) dentro de uma verificação Invoke REST API. |
Variáveis de agente (DevOps Server 2022)
Nota
Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de compilação. Não é possível usá-los para personalizar o número de compilação ou para aplicar um rótulo ou tag de controle de versão.
Variável | Description |
---|---|
Agent.BuildDirectory | O caminho local no agente onde todas as pastas para um determinado pipeline de compilação são criadas. Esta 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 seus IDs do Docker em tempo de execução. Exemplo segue tabela. |
Agent.HomeDirectory | O diretório no qual o agente está instalado. Isso contém o software do agente. Por exemplo: c:\agent . |
Agent.Id | O ID do agente. |
Agent.JobName | O nome do trabalho em execução. Isso geralmente será "Job" ou "__default", mas em cenários multi-config, será a configuração. |
Agent.JobStatus | O status da compilação.
AGENT_JOBSTATUS . O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores. |
Agent.MachineName | O nome da máquina na 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:
|
Agent.OSArchitecture | A arquitetura do processador do sistema operacional do host do agente. Os valores válidos são:
|
Agent.TempDirectory | Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa .NET Core CLI para armazenar itens temporários, como resultados de teste, antes de serem publicados. Por exemplo: /home/vsts/work/_temp para o Ubuntu. |
Agent.ToolsDirectory | O diretório usado por tarefas como Node Tool Installer e Use Python Version para alternar entre várias versões de uma ferramenta. Essas tarefas adicionam ferramentas desse diretório para PATH que as etapas de compilação 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 .Nota: Não é garantido que este diretório seja gravável por tarefas de pipeline (por exemplo, quando mapeado em um contêiner). |
Exemplo de Agent.ContainerMapping:
{
"one_container": {
"id": "bdbb357d73a0bd3550a1a5b778b62a4c88ed2051c7802a0659f1ff6e76910190"
},
"another_container": {
"id": "82652975109ec494876a8ccbb875459c945982952e0a72ad74c91216707162bb"
}
}
Variáveis de compilação (DevOps Server 2022)
Quando você usa uma variável em um modelo que não está marcado como disponível em modelos, a variável não será renderizada. A variável não será renderizada porque seu valor não está acessível dentro do escopo do modelo.
Variável | Description | Disponível em modelos? |
---|---|---|
Build.ArtifactStagingDirectory | 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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.BuildId | A ID do registro para a compilação concluída. | Não |
Build.BuildNumber | O nome da compilação concluída, 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. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.BuildUri | O URI para a compilação. 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 compilação, mas não como parte do número de compilação 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 compilação não são configurados para limpar esse diretório. Você pode definir sua compilação para limpá-la 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.ContainerId | A ID do contêiner para seu 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.CronSchedule.DisplayName | O displayName da programação cron que acionou a execução do pipeline. Essa variável só será definida se a execução do pipeline for acionada por um gatilho agendado YAML. Para obter mais informações, consulte definição schedules.cron - variável Build.CronSchedule.DisplayName. Essa variável está disponível no Azure DevOps Server 2022.1 e superior. |
Sim |
Build.DefinitionName | O nome do pipeline de compilação. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.DefinitionVersion | A versão do pipeline de compilação. | Sim |
Build.QueuedBy | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.QueuedById | Consulte "Como são definidas as variáveis de identidade?. | Sim |
Build.Reason | O evento que fez com que a compilação fosse executada.
|
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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.LocalPath | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s . Por padrão, os novos pipelines de compilação 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 pode diferir do valor da variável Build.SourcesDirectory):
|
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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Name | O nome do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Provider | O tipo de repositório de acionamento.
|
Não |
Build.Repository.Tfvc.Workspace | Definido se seu repositório é Team Foundation Version Control. O nome do espaço de trabalho TFVC usado pelo agente de compilação. Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8 , o nome do espaço de trabalho 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Uri | A URL do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. | Não |
Build.RequestedFor | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.RequestedForEmail | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.RequestedForId | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.SourceBranch | A ramificação do repositório de acionamento para o qual a compilação foi enfileirada. Alguns exemplos:
/ ) são substituídos por caracteres _ de sublinhado ).Nota: No TFVC, se você estiver executando uma compilação de check-in fechado ou construindo manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de compilação. |
Sim |
Build.SourceBranchName | O nome da ramificação no repositório de acionamento para o qual a compilação foi enfileirada.
|
Sim |
Build.SourcesDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s . Por padrão, os novos pipelines de compilação 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, que é $(Pipeline.Workspace)/s , mesmo que o repositório self (primário) faça check-out para um caminho personalizado diferente de seu caminho $(Pipeline.Workspace)/s/<RepoName> padrão de multi-checkout (nesse aspeto, 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.SourceVersion | A última alteração de controle de versão do repositório de acionamento incluído nesta compilação.
|
Sim |
Build.SourceVersionMessage | O comentário do commit ou changeset para o repositório de acionamento. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for mais curto. O Build.SourceVersionMessage corresponde à mensagem sobre Build.SourceVersion commit. A Build.SourceVersion confirmação para uma compilação PR é a confirmação de mesclagem (não a confirmação na ramificação 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Além disso, essa variável só está disponível no nível de etapa e não está disponível nos níveis de trabalho ou estágio (ou seja, a mensagem não é extraída até que o trabalho seja iniciado e o código seja verificado). Nota: Esta variável está disponível no TFS 2015.4. Nota: A variável Build.SourceVersionMessage não funciona com pipelines de compilação clássicos em repositórios Bitbucket quando Batch muda enquanto uma compilação está em andamento está habilitada. |
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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Git.SubmoduleCheckout | O valor selecionado para os submódulos Checkout na guia repositório. Com vários repositórios com check-out, esse valor rastreia a configuração do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.SourceTfvcShelveset | Definido se seu repositório é Team Foundation Version Control. Se você estiver executando uma compilação fechada ou uma compilação de prateleira, isso será definido com o nome do conjunto de prateleiras que você está construindo. Nota: Essa variável produz um valor que é inválido para uso de compilação em um formato de número de compilação. |
Não |
Build.TriggeredBy.BuildId | Se a compilação foi acionada por outra compilação, essa variável é definida como BuildID da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.DefinitionId | Se a compilação foi acionada por outra compilação, essa variável é definida como DefinitionID da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.DefinitionName | Se a compilação foi acionada por outra compilação, essa variável é definida como o nome do pipeline de compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.BuildNumber | Se a compilação foi acionada por outra compilação, essa variável é definida como o número da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Build.TriggeredBy.ProjectID | Se a compilação foi acionada por outra compilação, essa variável é definida como ID do projeto que contém a compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Se você estiver acionando um pipeline YAML usando resources o , deverá usar as variáveis de recursos. |
Não |
Common.TestResultsDirectory | O caminho local no agente onde 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Variáveis de pipeline (DevOps Server 2022)
Variável | Description |
---|---|
Pipeline.Workspace | Diretório de espaço de trabalho para um pipeline específico. Esta variável tem o mesmo valor que Agent.BuildDirectory . Por exemplo, /home/vsts/work/1 . |
Gorjeta
Se você estiver usando pipelines de liberação clássicos, poderá usar versões clássicas e variáveis de artefatos para armazenar e acessar dados em todo o pipeline.
Variáveis de trabalho de implantação (DevOps Server 2022)
Essas variáveis têm como escopo um trabalho de Implantação específico e serão resolvidas somente no momento da execução do trabalho.
Variável | Description |
---|---|
Environment.Name | Nome do ambiente de destino 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 de destino no trabalho de implantação. Por exemplo, 10 . |
Environment.ResourceName | Nome do recurso específico dentro do ambiente de destino 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 de destino 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 , runOnce , ou rolling . |
Strategy.CycleName | O nome do ciclo atual em uma implantação. As opções são PreIteration , Iteration ou PostIteration . |
Variáveis do sistema (DevOps Server 2022)
Quando você usa uma variável em um modelo que não está marcado como disponível em modelos, a variável não será renderizada. A variável não será renderizada porque seu valor não está acessível dentro do escopo do modelo.
Variável | Description | Disponí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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Sim |
System.CollectionId | O GUID da coleção TFS ou da organização do Azure DevOps. | Sim |
System.CollectionUri | O URI da coleção TFS ou da organização do Azure DevOps. Por exemplo: https://dev.azure.com/fabrikamfiber/ . |
Sim |
System.DefaultWorkingDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s Por padrão, os novos pipelines de compilação 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Sim |
System.DefinitionId | A ID do pipeline de compilação. | Sim |
System.HostType | Defina como build se o pipeline for uma compilação. 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 (Agent e Agentless). |
Sim |
System.JobAttempt | Defina como 1 na primeira vez que este trabalho é tentado e aumenta sempre que o trabalho é repetido. | Não |
System.JobDisplayName | O nome legível por humanos 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 que esta fase é tentada e aumenta sempre que o trabalho é repetido. Nota: "Fase" é um conceito principalmente redundante, que representa o tempo de design para um trabalho (enquanto o trabalho era a versão de tempo de execução de uma fase). Removemos principalmente o conceito de "fase" do Azure Pipelines. Os trabalhos matriciais e multi-config são o único lugar onde "fase" ainda é distinta de "trabalho". Uma fase pode instanciar 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.PlanId | Um identificador baseado em cadeia de caracteres para uma única execução de pipeline. | Não |
System.PullRequest.IsFork | Se a solicitação pull for de uma bifurcação do repositório, essa variável será definida como True . Caso contrário, é definido como False . |
Sim |
System.PullRequest.PullRequestId | A ID da solicitação pull que causou essa compilação. Por exemplo: 17 . (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). |
Não |
System.PullRequest.PullRequestNumber | O número da solicitação pull que causou essa compilação. Essa variável é preenchida para solicitações pull do GitHub que têm um ID de solicitação pull e um número de solicitação pull diferentes. Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. | Não |
System.PullRequest.targetBranchName | O nome da ramificação de destino para uma solicitação pull. Essa variável pode ser usada em um pipeline para executar condicionalmente tarefas ou etapas com base na ramificação de destino da solicitação pull. Por exemplo, talvez você queira acionar um conjunto diferente de testes ou ferramentas de análise de código, dependendo da ramificação na qual as alterações estão sendo mescladas. | Não |
System.PullRequest.SourceBranch | A ramificação que está sendo revisada em uma solicitação pull. Por exemplo: refs/heads/users/raisa/new-feature para Azure Repos. (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. |
Não |
System.PullRequest.SourceRepositoryURI | A URL para o repositório que contém a solicitação pull. Por exemplo: https://dev.azure.com/ouraccount/_git/OurProject . |
Não |
System.PullRequest.TargetBranch | A ramificação que é o destino de uma solicitação pull. Por exemplo: refs/heads/main quando seu repositório está no Azure Repos e main quando seu repositório está no GitHub. Essa variável será inicializada somente se a compilação for executada devido a um Git PR afetado por uma política de ramificação. Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. |
Não |
System.StageAttempt | Defina como 1 na primeira vez que este estágio é tentado e aumenta sempre que o estágio é repetido. | Não |
System.StageDisplayName | O nome legível por humanos dado a um palco. | 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. | Não |
System.TeamFoundationCollectionUri | O URI da coleção TFS ou da organização do Azure DevOps. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Sim |
System.TeamProject | O nome do projeto que contém essa compilação. | Sim |
System.TeamProjectId | A ID do projeto ao qual esta compilação pertence. | Sim |
System.TimelineId | Um identificador baseado em cadeia de caracteres para os detalhes de execução e logs de uma única execução de pipeline. | Não |
TF_BUILD | Defina como True se o script estiver sendo executado por uma tarefa de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Verifica variáveis (DevOps Server 2022)
Variável | Description |
---|---|
Checks.StageAttempt | Defina como 1 na primeira vez que este estágio é tentado e aumenta sempre que o estágio é repetido. Essa variável só pode ser usada dentro de uma aprovação ou verificação de um ambiente. Por exemplo, você pode usar $(Checks.StageAttempt) dentro de uma verificação Invoke REST API. |
Variáveis de agente (DevOps Server 2020)
Nota
Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de compilação. Não é possível usá-los para personalizar o número de compilação ou para aplicar um rótulo ou tag de controle de versão.
Variável | Description |
---|---|
Agent.BuildDirectory | O caminho local no agente onde todas as pastas para um determinado pipeline de compilação são criadas. Esta 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 | O ID do agente. |
Agent.JobName | O nome do trabalho em execução. Isso geralmente será "Job" ou "__default", mas em cenários multi-config, será a configuração. |
Agent.JobStatus | O status da compilação.
AGENT_JOBSTATUS . O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores. |
Agent.MachineName | O nome da máquina na 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á definido por você. Veja agentes. |
Agent.OS | O sistema operacional do host do agente. Os valores válidos são:
|
Agent.OSArchitecture | A arquitetura do processador do sistema operacional do host do agente. Os valores válidos são:
|
Agent.TempDirectory | Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa .NET Core CLI para armazenar itens temporários, como resultados de teste, antes de serem publicados. Por exemplo: /home/vsts/work/_temp para o Ubuntu. |
Agent.ToolsDirectory | O diretório usado por tarefas como Node Tool Installer e Use Python Version para alternar entre várias versões de uma ferramenta. Essas tarefas adicionam ferramentas desse diretório para PATH que as etapas de compilação 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 . Nota: Não é garantido que este diretório seja gravável por tarefas de pipeline (por exemplo, quando mapeado em um contêiner) |
Variáveis de compilação (DevOps Server 2020)
Quando você usa uma variável em um modelo que não está marcado como disponível em modelos, a variável não será renderizada. A variável não será renderizada porque seu valor não está acessível dentro do escopo do modelo.
Variável | Description | Disponível em modelos? |
---|---|---|
Build.ArtifactStagingDirectory | 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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.BuildId | A ID do registro para a compilação concluída. | Não |
Build.BuildNumber | O nome da compilação concluída, 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. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.BuildUri | O URI para a compilação. 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 compilação, mas não como parte do número de compilação 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 compilação não são configurados para limpar esse diretório. Você pode definir sua compilação para limpá-la 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.ContainerId | A ID do contêiner para seu 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 compilação. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falhará. |
Sim |
Build.DefinitionVersion | A versão do pipeline de compilação. | Sim |
Build.QueuedBy | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.QueuedById | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.Reason | O evento que fez com que a compilação fosse executada.
|
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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.LocalPath | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s . Por padrão, os novos pipelines de compilação 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 pode diferir do valor da variável Build.SourcesDirectory):
|
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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Name | O nome do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Provider | O tipo de repositório de acionamento.
|
Não |
Build.Repository.Tfvc.Workspace | Definido se seu repositório é Team Foundation Version Control. O nome do espaço de trabalho TFVC usado pelo agente de compilação. Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8 , o nome do espaço de trabalho 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Uri | A URL do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.RequestedFor | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Sim |
Build.RequestedForEmail | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.RequestedForId | Consulte "Como são definidas as variáveis de identidade?". | Sim |
Build.SourceBranch | A ramificação do repositório de acionamento para o qual a compilação foi enfileirada. Alguns exemplos:
/ ) são substituídos por caracteres _ de sublinhado ). Nota: No TFVC, se você estiver executando uma compilação de check-in fechado ou construindo manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de compilação. |
Sim |
Build.SourceBranchName | O nome da ramificação no repositório de acionamento para o qual a compilação foi enfileirada.
|
Sim |
Build.SourcesDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s . Por padrão, os novos pipelines de compilação 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, que é $(Pipeline.Workspace)/s , mesmo que o repositório self (primário) faça check-out para um caminho personalizado diferente de seu caminho $(Pipeline.Workspace)/s/<RepoName> padrão de multi-checkout (nesse aspeto, 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.SourceVersion | A última alteração de controle de versão do repositório de acionamento incluído nesta compilação.
|
Sim |
Build.SourceVersionMessage | O comentário do commit ou changeset para o repositório de acionamento. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for mais curto. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. Além disso, essa variável só está disponível no nível de etapa e não está disponível nos níveis de trabalho ou estágio (ou seja, a mensagem não é extraída até que o trabalho tenha começado e feito check-out do código). Nota: Esta variável está disponível no TFS 2015.4. Nota: A variável Build.SourceVersionMessage não funciona com pipelines de compilação clássicos em repositórios Bitbucket quando Batch muda enquanto uma compilação está em andamento está habilitada. |
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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.Repository.Git.SubmoduleCheckout | O valor selecionado para os submódulos Checkout na guia repositório. Com vários repositórios com check-out, esse valor rastreia a configuração do repositório de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.SourceTfvcShelveset | Definido se seu repositório é Team Foundation Version Control. Se você estiver executando uma compilação fechada ou uma compilação de prateleira, isso será definido com o nome do conjunto de prateleiras que você está construindo. Nota: Essa variável produz um valor que é inválido para uso de compilação em um formato de número de compilação. |
Não |
Build.TriggeredBy.BuildId | Se a compilação foi acionada por outra compilação, essa variável é definida como BuildID da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.TriggeredBy.DefinitionId | Se a compilação foi acionada por outra compilação, essa variável é definida como DefinitionID da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.TriggeredBy.DefinitionName | Se a compilação foi acionada por outra compilação, essa variável é definida como o nome do pipeline de compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.TriggeredBy.BuildNumber | Se a compilação foi acionada por outra compilação, essa variável é definida como o número da compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Build.TriggeredBy.ProjectID | Se a compilação foi acionada por outra compilação, essa variável é definida como ID do projeto que contém a compilação de acionamento. Em pipelines clássicos, essa variável é acionada por um gatilho de conclusão de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Common.TestResultsDirectory | O caminho local no agente onde 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Variáveis de pipeline (DevOps Server 2020)
Variável | Description |
---|---|
Pipeline.Workspace | Diretório de espaço de trabalho para um pipeline específico. Esta 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 como escopo um trabalho de Implantação específico e serão resolvidas somente no momento da execução do trabalho.
Variável | Description |
---|---|
Environment.Name | Nome do ambiente de destino 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 de destino no trabalho de implantação. Por exemplo, 10 . |
Environment.ResourceName | Nome do recurso específico dentro do ambiente de destino 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 de destino no trabalho de implantação para executar as etapas de implantação. Por exemplo, 4 . |
Variáveis de sistema (DevOps Server 2020)
Quando você usa uma variável em um modelo que não está marcado como disponível em modelos, a variável não será renderizada. A variável não será renderizada porque seu valor não está acessível dentro do escopo do modelo.
Variável | Description | Disponí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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Sim |
System.CollectionId | O GUID da coleção TFS ou da organização do Azure DevOps | Sim |
System.CollectionUri | Uma cadeia de caracteres Team Foundation Server coleção URI. | Sim |
System.DefaultWorkingDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s Por padrão, os novos pipelines de compilação 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Não |
System.DefinitionId | A ID do pipeline de compilação. | Sim |
System.HostType | Defina como build se o pipeline for uma compilação. 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 (Agent e Agentless). |
Sim |
System.JobAttempt | Defina como 1 na primeira vez que este trabalho é tentado e aumenta sempre que o trabalho é repetido. | Não |
System.JobDisplayName | O nome legível por humanos 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 que esta fase é tentada e aumenta sempre que o trabalho é repetido. Nota: "Fase" é um conceito principalmente redundante, que representa o tempo de design para um trabalho (enquanto o trabalho era a versão de tempo de execução de uma fase). Removemos principalmente o conceito de "fase" do Azure Pipelines. Trabalhos matriciais e multi-configuração são o único lugar onde "fase" ainda é distinta de "trabalho". Uma fase pode instanciar 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 | Defina como 1 na primeira vez que este estágio é tentado e aumenta sempre que o trabalho é repetido. | Não |
System.StageDisplayName | O nome legível por humanos dado a um palco. | 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 pull for de uma bifurcação do repositório, essa variável será definida como True . Caso contrário, é definido como False . |
Sim |
System.PullRequest.PullRequestId | A ID da solicitação pull que causou essa compilação. Por exemplo: 17 . (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). |
Não |
System.PullRequest.PullRequestNumber | O número da solicitação pull que causou essa compilação. Essa variável é preenchida para solicitações pull do GitHub, que têm um ID de solicitação pull e um número de solicitação pull diferentes. Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. | Não |
System.PullRequest.targetBranchName | O nome da ramificação de destino para uma solicitação pull. Essa variável pode ser usada em um pipeline para executar condicionalmente tarefas ou etapas com base na ramificação de destino da solicitação pull. Por exemplo, talvez você queira acionar um conjunto diferente de testes ou ferramentas de análise de código, dependendo da ramificação na qual as alterações estão sendo mescladas. | Não |
System.PullRequest.SourceBranch | A ramificação que está sendo revisada em uma solicitação pull. Por exemplo: refs/heads/users/raisa/new-feature . (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. |
Não |
System.PullRequest.SourceCommitId | A confirmação que está sendo revisada em uma solicitação pull. (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial). Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. | |
System.PullRequest.SourceRepositoryURI | A URL para o repositório que contém a solicitação pull. Por exemplo: https://dev.azure.com/ouraccount/_git/OurProject . |
Não |
System.PullRequest.TargetBranch | A ramificação que é o destino de uma solicitação pull. Por exemplo: refs/heads/main quando seu repositório está no Azure Repos e main quando seu repositório está no GitHub. Essa variável será inicializada somente se a compilação for executada devido a um Git PR afetado por uma política de ramificação. Essa variável só estará disponível em um pipeline YAML se a RP for afetada por uma política de ramificação. |
Não |
System.TeamFoundationCollectionUri | O URI da coleção da fundação da equipe. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Sim |
System.TeamProject | O nome do projeto que contém essa compilação. | Sim |
System.TeamProjectId | A ID do projeto ao qual esta compilação pertence. | Sim |
TF_BUILD | Defina como True se o script estiver sendo executado por uma tarefa de compilação. 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 compilação, mas não como parte do número de compilação ou como uma marca de controle de versão. |
Não |
Variáveis de agente (DevOps Server 2019)
Nota
Você pode usar variáveis de agente como variáveis de ambiente em seus scripts e como parâmetros em suas tarefas de compilação. Não é possível usá-los para personalizar o número de compilação ou para aplicar um rótulo ou tag de controle de versão.
Variável | Description |
---|---|
Agent.BuildDirectory | O caminho local no agente onde todas as pastas para um determinado pipeline de compilação 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 | O ID do agente. |
Agent.JobName | O nome do trabalho em execução. Isso geralmente será "Job" ou "__default", mas em cenários multi-config, será a configuração. |
Agent.JobStatus | O status da compilação.
AGENT_JOBSTATUS . O mais antigo agent.jobstatus está disponível para compatibilidade com versões anteriores. |
Agent.MachineName | O nome da máquina na 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á definido por você. Veja agentes. |
Agent.OS | O sistema operacional do host do agente. Os valores válidos são:
|
Agent.OSArchitecture | A arquitetura do processador do sistema operacional do host do agente. Os valores válidos são:
|
Agent.TempDirectory | Uma pasta temporária que é limpa após cada trabalho de pipeline. Esse diretório é usado por tarefas como a tarefa .NET Core CLI para armazenar itens temporários, como resultados de teste, antes de serem publicados. |
Agent.ToolsDirectory | O diretório usado por tarefas como Node Tool Installer e Use Python Version para alternar entre várias versões de uma ferramenta. Essas tarefas adicionam ferramentas desse diretório para PATH que as etapas de compilação 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 . Não é garantido que esse diretório seja gravável por tarefas de pipeline (por exemplo, quando mapeado em um contêiner). |
Variáveis de compilação (DevOps Server 2019)
Variável | Description |
---|---|
Build.ArtifactStagingDirectory | 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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.BuildId | A ID do registro para a compilação concluída. |
Build.BuildNumber | O nome da compilação concluída. Você pode especificar o formato de número de compilação 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. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.BuildUri | O URI para a compilação. 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 compilação, mas não como parte do número de compilação ou como uma tag 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 compilação não são configurados para limpar esse diretório. Você pode definir sua compilação para limpá-la 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.DefinitionName | O nome do pipeline de compilação. Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falhará. |
Build.DefinitionVersion | A versão do pipeline de compilação. |
Build.QueuedBy | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Build.QueuedById | Consulte "Como são definidas as variáveis de identidade?". |
Build.Reason | O evento que fez com que a compilação fosse executada.
|
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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.Repository.LocalPath | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s Por padrão, os novos pipelines de compilação 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 compilação, mas não como parte do número de compilação ou como uma tag 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.Repository.Provider | O tipo de repositório selecionado.
|
Build.Repository.Tfvc.Workspace | Definido se seu repositório é Team Foundation Version Control. O nome do espaço de trabalho TFVC usado pelo agente de compilação. Por exemplo, se o Agent.BuildDirectory for c:\agent_work\12 e o Agent.Id for 8 , o nome do espaço de trabalho 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 compilação, mas não como parte do número de compilação ou como uma tag 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.RequestedFor | Consulte "Como são definidas as variáveis de identidade?". Nota: Este valor pode conter espaço em branco ou outros caracteres de rótulo inválidos. Nesses casos, o formato do rótulo falha. |
Build.RequestedForEmail | Consulte "Como são definidas as variáveis de identidade?". |
Build.RequestedForId | Consulte "Como são definidas as variáveis de identidade?". |
Build.SourceBranch | A ramificação para a qual a compilação estava na fila. Alguns exemplos:
/ ) são substituídos por caracteres de sublinhado (_ ). Nota: No TFVC, se você estiver executando uma compilação de check-in fechado ou construindo manualmente um conjunto de prateleiras, não poderá usar essa variável no formato de número de compilação. |
Build.SourceBranchName | O nome da ramificação para a qual a compilação foi enfileirada.
|
Build.SourcesDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s .Por padrão, os novos pipelines de compilação 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. Essa variável é sinônimo de Build.Repository.LocalPath. |
Build.SourceVersion | A última alteração de controle de versão incluída nesta compilação.
|
Build.SourceVersionMessage | O comentário da confirmação ou conjunto de alterações. Truncamos a mensagem para a primeira linha ou 200 caracteres, o que for mais curto. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. Nota: Esta variável está disponível no TFS 2015.4. Nota: A variável Build.SourceVersionMessage não funciona com pipelines de compilação clássicos em repositórios Bitbucket quando Batch muda enquanto uma compilação está em andamento está habilitada. |
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 compilação com as tarefas Copiar arquivos e Publicar artefatos de compilação . Nota: 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 sozinho. Consulte Artefatos 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.Repository.Git.SubmoduleCheckout | O valor selecionado para os submódulos 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.SourceTfvcShelveset | Definido se seu repositório é Team Foundation Version Control. Se você estiver executando uma compilação fechada ou uma compilação de prateleira, isso será definido com o nome do conjunto de prateleiras que você está construindo. Nota: Essa variável produz um valor que é inválido para uso de compilação em um formato de número de compilação. |
Build.TriggeredBy.BuildId | Se a compilação foi acionada por outra compilação, essa variável é definida como BuildID da compilação de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.TriggeredBy.DefinitionId | Se a compilação foi acionada por outra compilação, essa variável é definida como DefinitionID da compilação de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.TriggeredBy.DefinitionName | Se a compilação foi acionada por outra compilação, essa variável é definida como o nome do pipeline de compilação de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.TriggeredBy.BuildNumber | Se a compilação foi acionada por outra compilação, essa variável é definida como o número da compilação de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Build.TriggeredBy.ProjectID | Se a compilação foi acionada por outra compilação, essa variável é definida como ID do projeto que contém a compilação de acionamento. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Common.TestResultsDirectory | O caminho local no agente onde 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Variáveis de sistema (DevOps Server 2019)
Exemplo de script do PowerShell: acessar a API REST
Variável | Description |
---|---|
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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
System.CollectionId | O GUID da coleção TFS ou da organização do Azure DevOps |
System.DefaultWorkingDirectory | O caminho local no agente onde seus arquivos de código-fonte são baixados. Por exemplo: c:\agent_work\1\s Por padrão, os novos pipelines de compilação 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
System.DefinitionId | A ID do pipeline de compilação. |
System.HostType | Defina como build se o pipeline for uma compilação. Para uma versão, os valores são deployment para um trabalho de grupo de implantação e release para um trabalho de agente. |
System.PullRequest.IsFork | Se a solicitação pull for de uma bifurcação do repositório, essa variável será definida como True . Caso contrário, é definido como False . |
System.PullRequest.PullRequestId | A ID da solicitação pull que causou essa compilação. Por exemplo: 17 . (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial.) |
System.PullRequest.PullRequestNumber | O número da solicitação pull que causou essa compilação. Essa variável é preenchida para solicitações pull do GitHub, que têm um ID de solicitação pull e um número de solicitação pull diferentes. |
System.PullRequest.SourceBranch | A ramificação que está sendo revisada em uma solicitação pull. Por exemplo: refs/heads/users/raisa/new-feature . (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial.) |
System.PullRequest.SourceCommitId | A confirmação que está sendo revisada em uma solicitação pull. (Esta variável é inicializada somente se a compilação foi executada devido a um Git PR afetado por uma política de filial.) |
System.PullRequest.SourceRepositoryURI | A URL para o repositório que contém a solicitação pull. Por exemplo: https://dev.azure.com/ouraccount/_git/OurProject . (Esta variável é inicializada somente se a compilação foi executada devido a um Azure Repos Git PR afetado por uma política de filial. Ele não é inicializado para PRs do GitHub.) |
System.PullRequest.TargetBranch | A ramificação que é o destino de uma solicitação pull. Por exemplo: refs/heads/main . Essa variável será inicializada somente se a compilação for executada devido a um Git PR afetado por uma política de ramificação. |
System.TeamFoundationCollectionUri | O URI da coleção da fundação da equipe. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
System.TeamProject | O nome do projeto que contém essa compilação. |
System.TeamProjectId | A ID do projeto ao qual esta compilação pertence. |
TF_BUILD | Defina como True se o script estiver sendo executado por uma tarefa de compilação. 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 compilação, mas não como parte do número de compilação ou como uma tag de controle de versão. |
Como são definidas as variáveis de identidade?
O valor depende do que causou a compilação e são específicos para repositórios do Azure Repos.
Se a compilação for acionada... | 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... |
---|---|---|
No Git ou pelos gatilhos de integração contínua (CI) | A identidade do sistema, por exemplo: [DefaultCollection]\Project Collection Service Accounts |
A pessoa que empurrou ou fez check-in das alterações. |
No Git ou por uma compilação de política de ramificação. | A identidade do sistema, por exemplo: [DefaultCollection]\Project Collection Service Accounts |
A pessoa que fez check-in das alterações. |
Na CVFT por um gatilho de check-in fechado | A pessoa que fez check-in das alterações. | A pessoa que fez check-in das 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 de compilação de fila | O utilizador | O utilizador |
Peça ao Copilot para gerar um estágio com uma condição baseada em valores variáveis
Use Copilot para gerar um estágio com uma condição determinada pelo valor de uma variável.
Este prompt de exemplo define um estágio que é executado quando Agent.JobStatus
indica que o estágio anterior foi executado com êxito:
Crie um novo estágio do Azure DevOps que só seja executado quando
Agent.JobStatus
estiverSucceeded
ouSucceededWithIssues
.
Você pode personalizar o prompt para usar valores que atendam às suas necessidades. Por exemplo, você pode pedir ajuda para criar um estágio que só é executado quando um pipeline falha.
Nota
O GitHub Copilot é alimentado por IA, então surpresas e erros são possíveis. Certifique-se de verificar qualquer código gerado ou sugestões. Para obter mais informações sobre o uso geral do GitHub Copilot, impacto no produto, supervisão humana e privacidade, consulte Perguntas frequentes do GitHub Copilot.