Condividi tramite


Usare variabili predefinite

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Le variabili offrono un modo conveniente di ottenere bit di chiave dei dati in varie parti della pipeline. Si tratta di un elenco di variabili predefinite disponibili per l'uso. Potrebbero esserci alcune altre variabili predefinite, ma sono principalmente per uso interno.

Queste variabili vengono impostate automaticamente dal sistema e di sola lettura. Le eccezioni sono Build.Clean e System.Debug.

Nelle pipeline YAML è possibile fare riferimento a variabili predefinite come variabili di ambiente. Ad esempio, la variabile Build.ArtifactStagingDirectory diventa la variabile BUILD_ARTIFACTSTAGINGDIRECTORY.

Per le pipeline classiche, è possibile usare le variabili di versione nelle attività di distribuzione per condividere le informazioni comuni, ad esempio Nome ambiente, Gruppo di risorse e così via.

Altre informazioni sull'uso delle variabili.

Suggerimento

È possibile chiedere Copilot per assistenza con le variabili. Per altre informazioni, vedere Ask Copilot per generare una fase con una condizione basata sui valori delle variabili.

Build.Clean

Si tratta di una variabile deprecata che modifica il modo in cui l'agente di compilazione pulisce l'origine. Per informazioni su come pulire l'origine, vedere Pulire il repository locale nell'agente.

System.AccessToken

System.AccessToken è una variabile speciale che contiene il token di sicurezza usato dalla compilazione in esecuzione.

In YAML è necessario eseguire il mapping System.AccessToken esplicito nella pipeline usando una variabile. È possibile eseguire questa operazione a livello di passaggio o attività. Ad esempio, è possibile usare System.AccessToken per eseguire l'autenticazione con un registro contenitori.

steps:
- task: Docker@2
  inputs:
    command: login
    containerRegistry: '<docker connection>'
  env:
    SYSTEM_ACCESSTOKEN: $(System.AccessToken)

È possibile configurare l'ambito predefinito per System.AccessToken l'uso dell'ambito di autorizzazione del processo di compilazione.

System.Debug

Per i log più dettagliati per eseguire il debug dei problemi della pipeline, definirlo System.Debug e impostarlo su true.

  1. Modificare la pipeline.

  2. Seleziona Variabili.

  3. Aggiungere una nuova variabile con il nome System.Debug e il valore true.

    Impostare Debug di sistema su true

  4. Salvare la nuova variabile.

Impostazione System.Debug per true configurare i log dettagliati per tutte le esecuzioni. È anche possibile configurare i log dettagliati per una singola esecuzione con la casella di controllo Abilita diagnostica di sistema.

È anche possibile impostare su System.Debugtrue come variabile in una pipeline o in un modello.

variables:
  system.debug: 'true'

Quando System.Debug è impostato su true, una variabile aggiuntiva denominata Agent.Diagnostic è impostata su true. Quando Agent.Diagnostic è true, l'agente raccoglie più log che possono essere usati per la risoluzione dei problemi di rete per gli agenti self-hosted. Per altre informazioni, vedere Diagnostica di rete per gli agenti self-hosted.

Nota

La Agent.Diagnostic variabile è disponibile con Agent v2.200.0 e versioni successive.

Per altre informazioni, vedere Esaminare i log per diagnosticare i problemi della pipeline.

Variabili dell'agente (DevOps Services)

Nota

È possibile usare le variabili agente come variabili di ambiente negli script e come parametri nelle attività di compilazione. Non è possibile usarli per personalizzare il numero di build o per applicare un'etichetta o un tag del controllo della versione.

Variabile Descrizione
Agent.BuildDirectory Percorso locale nell'agente in cui vengono create tutte le cartelle per una determinata pipeline di compilazione. Questa variabile ha lo stesso valore di Pipeline.Workspace. Ad esempio: /home/vsts/work/1.
Agent.ContainerMapping Mapping dai nomi delle risorse del contenitore in YAML agli ID Docker in fase di esecuzione.

L'esempio segue la tabella.
Agent.HomeDirectory Directory in cui è installato l'agente. Contiene il software dell'agente. Ad esempio: c:\agent.
Agent.Id ID dell'agente.
Agent.JobName Nome del processo in esecuzione. Questo in genere sarà "Job"; o "__default", ma negli scenari con più configurazioni sarà la configurazione.
Agent.JobStatus Stato della compilazione.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parzialmente riuscito)
  • Skipped (ultimo processo)
È necessario fare riferimento alla variabile di ambiente come AGENT_JOBSTATUS. La versione precedente agent.jobstatus è disponibile per la compatibilità con le versioni precedenti.
Agent.MachineName Nome del computer in cui è installato l'agente.
Agent.Name Nome dell'agente registrato con il pool.

Se si usa un agente self-hosted, questo nome viene specificato dall'utente. Vedere agenti.
Agent.OS Sistema operativo dell'host dell'agente. I valori validi sono:
  • Windows_NT
  • Darwin
  • Linux
Se si esegue in un contenitore, l'host e il contenitore dell'agente potrebbero eseguire sistemi operativi diversi.
Agent.OSArchitecture Architettura del processore del sistema operativo dell'host dell'agente. I valori validi sono:
  • X86
  • X64
  • ARM
Agent.TempDirectory Cartella temporanea pulita dopo ogni processo della pipeline. Questa directory viene usata da attività come l'attività dell'interfaccia della riga di comando di .NET Core per contenere elementi temporanei come i risultati dei test prima della pubblicazione.

Ad esempio: /home/vsts/work/_temp per Ubuntu.
Agent.ToolsDirectory Directory usata da attività come Il programma di installazione dello strumento node e Usa versione Python per passare da più versioni di uno strumento.

Queste attività aggiungono strumenti da questa directory a in PATH modo che i passaggi di compilazione successivi possano usarli.

Informazioni sulla gestione di questa directory in un agente self-hosted.
Agent.WorkFolder Directory di lavoro per questo agente.

Ad esempio: c:\agent_work.

Nota: questa directory non è necessariamente scrivibile dalle attività della pipeline( ad esempio, quando viene eseguito il mapping in un contenitore)

Esempio di Agent.ContainerMapping:

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

Variabili di compilazione (DevOps Services)

Quando si usa una variabile in un modello che non è contrassegnata come disponibile nei modelli, la variabile non verrà sottoposta a rendering. Il rendering della variabile non verrà eseguito perché il relativo valore non è accessibile all'interno dell'ambito del modello.

Variabile Descrizione Disponibile nei modelli?
Build.ArtifactStagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BuildId ID del record per la compilazione completata. No
Build.BuildNumber Nome della compilazione completata, noto anche come numero di esecuzione. È possibile specificare gli elementi inclusi in questo valore.

Un uso tipico di questa variabile consiste nel renderlo parte del formato dell'etichetta, specificato nella scheda del repository.

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BuildUri URI per la compilazione. Ad esempio: vstfs:///Build/Build/1430.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BinariesDirectory Percorso locale dell'agente che è possibile usare come cartella di output per i file binari compilati.

Per impostazione predefinita, le nuove pipeline di compilazione non sono configurate per pulire questa directory. È possibile definire la compilazione per pulirla nella scheda Repository.

Ad esempio: c:\agent_work\1\b.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.ContainerId ID del contenitore per l'artefatto. Quando si carica un artefatto nella pipeline, viene aggiunto a un contenitore specifico per quel particolare artefatto. No
Build.CronSchedule.DisplayName Oggetto displayName della pianificazione cron che ha attivato l'esecuzione della pipeline. Questa variabile viene impostata solo se l'esecuzione della pipeline viene attivata da un trigger pianificato YAML. Per altre informazioni, vedere la definizione schedules.cron - Variabile Build.CronSchedule.DisplayName
Build.DefinitionName Nome della pipeline di compilazione

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.DefinitionVersion Versione della pipeline di compilazione.
Build.QueuedBy Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.QueuedById Vedere "How are the identity variables set?".
Build.Reason Evento che ha causato l'esecuzione della compilazione.
  • Manual: un utente ha accodato manualmente la compilazione.
  • IndividualCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC.
  • BatchedCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC e le modifiche batch sono state selezionate.
  • Schedule: trigger pianificato .
  • ValidateShelveset: un utente ha accodato manualmente la compilazione di un set di scaffali TFVC specifico.
  • CheckInShelveset: trigger di archiviazione controllato.
  • PullRequest: la compilazione è stata attivata da un criterio di ramo Git che richiede una compilazione.
  • BuildCompletion: la compilazione è stata attivata da un'altra compilazione
  • ResourceTrigger: la compilazione è stata attivata da un trigger di risorsa o è stata attivata da un'altra compilazione.
Vedere Creare trigger di pipeline, Migliorare la qualità del codice con i criteri dei rami.
Build.Repository.Clean Valore selezionato per Pulisci nelle impostazioni del repository di origine.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.LocalPath Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s.

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Nota importante: se si estrae un solo repository Git, questo percorso è il percorso esatto del codice.

Se si estrae più repository, il comportamento è il seguente (e potrebbe essere diverso dal valore della variabile Build.SourcesDirectory):
  • Se il passaggio di estrazione per il repository self (primario) non dispone di un percorso di estrazione personalizzato definito oppure il percorso di estrazione è il percorso $(Pipeline.Workspace)/s/&<RepoName> predefinito di estrazione multipla per il repository automatico, il valore di questa variabile ripristina il valore predefinito, ovvero $(Pipeline.Workspace)/s.
  • Se il passaggio di estrazione per il repository self (primario) dispone di un percorso di estrazione personalizzato definito (e non è il percorso predefinito per l'estrazione multipla), questa variabile contiene il percorso esatto del repository self.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.ID Identificatore univoco del repository.

Questa operazione non verrà modificata, anche se il nome del repository non verrà modificato.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Name Nome del repository di attivazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Provider Tipo del repository di attivazione.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Tfvc.Workspace Definito se il repository è controllo della versione di Team Foundation. Nome dell'area di lavoro TFVC usata dall'agente di compilazione.

Ad esempio, se Agent.BuildDirectory è c:\agent_work\12 e il Agent.Id è 8, il nome dell'area di lavoro potrebbe essere: ws_12_8

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Uri URL del repository di attivazione. Ad esempio:
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.RequestedFor Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.RequestedForEmail Vedere "How are the identity variables set?".
Build.RequestedForId Vedere "How are the identity variables set?".
Build.SourceBranch Il ramo del repository di attivazione per cui è stata accodata la compilazione. Alcuni esempi:
  • Ramo repository Git: refs/heads/main
  • Richiesta pull del repository Git: refs/pull/1/merge
  • Ramo del repository TFVC: $/teamproject/main
  • Check-in controllato del repository TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Compilazione degli scaffali del repository TFVC: myshelveset;username@live.com
  • Quando la pipeline viene attivata da un tag: refs/tags/your-tag-name
Quando si usa questa variabile nel formato del numero di compilazione, i caratteri barra (/) vengono sostituiti con caratteri _di sottolineatura .

Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un insieme di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourceBranchName Nome del ramo nel repository di attivazione per cui la compilazione è stata accodata.
  • Ramo repository Git, richiesta pull o tag: l'ultimo segmento di percorso nel riferimento. Ad esempio, in refs/heads/main questo valore è main. In refs/heads/feature/tools questo valore è tools. In refs/tags/your-tag-name questo valore è your-tag-name.
  • Ramo del repository TFVC: ultimo segmento di percorso nel percorso del server radice per l'area di lavoro. Ad esempio, in $/teamproject/main questo valore è main.
  • Il repository TFVC gated check-in o la build degli scaffali è il nome del set di scaffali. Ad esempio, Gated_2016-06-06_05.20.51.4369;username@live.com o myshelveset;username@live.com.
Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un insieme di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourcesDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s.

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati.

Nota importante: se si estrae un solo repository Git, questo percorso è il percorso esatto del codice. Se si estrae più repository, viene ripristinato il valore predefinito, ovvero $(Pipeline.Workspace)/s, anche se il repository self (primario) viene estratto in un percorso personalizzato diverso dal relativo percorso $(Pipeline.Workspace)/s/<RepoName> predefinito multi-checkout (in questo caso, la variabile è diversa dal comportamento della variabile Build.Repository.LocalPath).

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.SourceVersion Modifica del controllo della versione più recente del repository di attivazione incluso in questa build.
  • Git: ID commit .
  • TFVC: l'insieme di modifiche.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.SourceVersionMessage Commento del commit o del set di modifiche per il repository di attivazione. Il messaggio viene troncato alla prima riga o a 200 caratteri, a meno che sia più breve.

Build.SourceVersionMessage Corrisponde al messaggio al Build.SourceVersion commit. Il Build.SourceVersion commit per una compilazione pull è il commit di merge (non il commit nel ramo di origine).

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Inoltre, questa variabile è disponibile solo a livello di passaggio e non è disponibile nei livelli di processo o di fase( ovvero, il messaggio non viene estratto fino all'avvio del processo e il codice viene estratto).

Nota: questa variabile è disponibile in TFS 2015.4.

Nota: la variabile Build.SourceVersionMessage non funziona con le pipeline di compilazione classiche nei repository Bitbucket quando batch cambia mentre è in corso una compilazione.
No
Build.StagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Git.SubmoduleCheckout Valore selezionato per i moduli secondari Checkout nella scheda repository. Con più repository estratto, questo valore tiene traccia dell'impostazione del repository di attivazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.SourceTfvcShelveset Definito se il repository è controllo della versione di Team Foundation.

Se si esegue una costruzione controllata o una compilazione di scaffali, questo è impostato sul nome del set di scaffali che si sta costruendo.

Nota: questa variabile restituisce un valore non valido per l'uso della compilazione in un formato di numero di build.
No
Build.TriggeredBy.BuildId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su BuildID della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.DefinitionId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su DefinitionID della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.DefinitionName Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul nome della pipeline di compilazione che attiva. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.BuildNumber Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul numero della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.ProjectID Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su ID del progetto che contiene la compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Common.TestResultsDirectory Percorso locale dell'agente in cui vengono creati i risultati del test. Ad esempio: c:\agent_work\1\TestResults.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No

Variabili della pipeline (DevOps Services)

Variabile Descrizione
Pipeline.Workspace Directory dell'area di lavoro per una determinata pipeline. Questa variabile ha lo stesso valore di Agent.BuildDirectory. Ad esempio: /home/vsts/work/1.

Suggerimento

Se si usano pipeline di versione classiche, è possibile usare le versioni classiche e le variabili degli artefatti per archiviare e accedere ai dati in tutta la pipeline.

Variabili del processo di distribuzione (DevOps Services)

Queste variabili hanno come ambito un processo di distribuzione specifico e verranno risolte solo in fase di esecuzione del processo.

Variabile Descrizione
Environment.Name Nome dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione e registrare la cronologia di distribuzione. Ad esempio: smarthotel-dev.
Environment.Id ID dell'ambiente di destinazione nel processo di distribuzione. Ad esempio: 10.
Environment.ResourceName Nome della risorsa specifica all'interno dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione e registrare la cronologia di distribuzione. Ad esempio, bookings che è uno spazio dei nomi Kubernetes aggiunto come risorsa all'ambiente smarthotel-dev.
Environment.ResourceId ID della risorsa specifica all'interno dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione. Ad esempio: 4.
Strategy.Name Nome della strategia di distribuzione: canary, runOnceo rolling.
Strategy.CycleName Nome del ciclo corrente in una distribuzione. Le opzioni sono PreIteration, Iterationo PostIteration.

Variabili di sistema (DevOps Services)

Quando si usa una variabile in un modello che non è contrassegnata come disponibile nei modelli, la variabile non verrà sottoposta a rendering. Il rendering della variabile non verrà eseguito perché il relativo valore non è accessibile all'interno dell'ambito del modello.

Variabile Descrizione Disponibile nei modelli?
System.AccessToken Usare il token OAuth per accedere all'API REST.

Usare System.AccessToken dagli script YAML.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.CollectionId GUID della raccolta TFS o dell'organizzazione Azure DevOps.
System.CollectionUri URI della raccolta TFS o dell'organizzazione Azure DevOps. Ad esempio: https://dev.azure.com/fabrikamfiber/.
System.DefaultWorkingDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.DefinitionId ID della pipeline di compilazione.
System.HostType Impostare su build se la pipeline è una compilazione. Per una versione, i valori sono deployment per un processo del gruppo di distribuzione, gates durante la valutazione dei controlli e release per altri processi (Agent e Senza agente).
System.JobAttempt Impostare su 1 la prima volta che si tenta di eseguire il processo e incrementa ogni volta che il processo viene ritentato. No
System.JobDisplayName Nome leggibile assegnato a un processo. No
System.JobId Identificatore univoco per un singolo tentativo di un singolo processo. Il valore è univoco per la pipeline corrente. No
System.JobName Nome del processo, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.OidcRequestUri Generare un idToken oggetto per l'autenticazione con Entra ID usando OpenID Connect (OIDC). Altre informazioni.
System.PhaseAttempt Impostare su 1 la prima volta che viene tentata questa fase e incrementa ogni volta che il processo viene ritentato.

Nota: "Phase" è un concetto principalmente ridondante, che rappresenta il tempo di progettazione per un processo (mentre il processo era la versione di runtime di una fase). Il concetto di "fase" è stato rimosso principalmente da Azure Pipelines. I processi matrice e multi-configurazione sono l'unica posizione in cui "phase" è ancora distinto da "job". Una fase può creare un'istanza di più processi, che differiscono solo per gli input.
No
System.PhaseDisplayName Nome leggibile assegnato a una fase. No
System.PhaseName Identificatore basato su stringa per un processo, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.PlanId Identificatore basato su stringa per una singola esecuzione della pipeline. No
System.PullRequest.IsFork Se la richiesta pull proviene da un fork del repository, questa variabile viene impostata su True.

In caso contrario, è impostato su False.
System.PullRequest.PullRequestId ID della richiesta pull che ha causato la compilazione. Ad esempio: 17. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. No
System.PullRequest.PullRequestNumber Numero della richiesta pull che ha causato la compilazione. Questa variabile viene popolata per le richieste pull da GitHub che hanno un ID richiesta pull e un numero di richiesta pull diversi. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.PullRequest.targetBranchName Nome del ramo di destinazione per una richiesta pull. Questa variabile può essere usata in una pipeline per eseguire in modo condizionale attività o passaggi in base al ramo di destinazione della richiesta pull. Ad esempio, è possibile attivare un set diverso di test o strumenti di analisi del codice a seconda del ramo in cui vengono unite le modifiche. No
System.PullRequest.SourceBranch Ramo da rivedere in una richiesta pull. Ad esempio: refs/heads/users/raisa/new-feature per Azure Repos. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.PullRequest.SourceCommitId Commit da rivedere in una richiesta pull. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo.
System.PullRequest.SourceRepositoryURI URL del repository che contiene la richiesta pull. Ad esempio: https://dev.azure.com/ouraccount/_git/OurProject. No
System.PullRequest.TargetBranch Ramo che rappresenta la destinazione di una richiesta pull. Ad esempio, refs/heads/main quando il repository si trova in Azure Repos e main quando il repository si trova in GitHub. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di una richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.StageAttempt Impostare su 1 la prima volta che questa fase viene tentata e incrementa ogni volta che viene ritentata la fase. No
System.StageDisplayName Nome leggibile assegnato a una fase. No
System.StageName Identificatore basato su stringa per una fase, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.TeamFoundationCollectionUri URI della raccolta TFS o dell'organizzazione Azure DevOps. Ad esempio: https://dev.azure.com/fabrikamfiber/.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.TeamProject Nome del progetto che contiene la compilazione.
System.TeamProjectId ID del progetto a cui appartiene la compilazione.
System.TimelineId Identificatore basato su stringa per i dettagli di esecuzione e i log di una singola esecuzione della pipeline. No
TF_BUILD Impostare su True se lo script viene eseguito da un'attività di compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No

Controlla le variabili (DevOps Services)

Variabile Descrizione
Checks.StageAttempt Impostare su 1 la prima volta che questa fase viene tentata e incrementa ogni volta che viene ritentata la fase.

Questa variabile può essere usata solo all'interno di un'approvazione o di un controllo per un ambiente. Ad esempio, è possibile usare $(Checks.StageAttempt) all'interno di un controllo dell'API REST Invoke.

Aggiungere il tentativo di fase come parametro.

Variabili dell'agente (DevOps Server 2022)

Nota

È possibile usare le variabili agente come variabili di ambiente negli script e come parametri nelle attività di compilazione. Non è possibile usarli per personalizzare il numero di build o per applicare un'etichetta o un tag del controllo della versione.

Variabile Descrizione
Agent.BuildDirectory Percorso locale nell'agente in cui vengono create tutte le cartelle per una determinata pipeline di compilazione. Questa variabile ha lo stesso valore di Pipeline.Workspace. Ad esempio: /home/vsts/work/1.
Agent.ContainerMapping Mapping dai nomi delle risorse del contenitore in YAML agli ID Docker in fase di esecuzione. L'esempio segue la tabella.
Agent.HomeDirectory Directory in cui è installato l'agente. Contiene il software dell'agente. Ad esempio: c:\agent.
Agent.Id ID dell'agente.
Agent.JobName Nome del processo in esecuzione. In genere si tratta di "Processo" o "__default", ma in scenari con più configurazioni sarà la configurazione.
Agent.JobStatus Stato della compilazione.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parzialmente riuscito)
  • Skipped (ultimo processo)
È necessario fare riferimento alla variabile di ambiente come AGENT_JOBSTATUS. La versione precedente agent.jobstatus è disponibile per la compatibilità con le versioni precedenti.
Agent.MachineName Nome del computer in cui è installato l'agente.
Agent.Name Nome dell'agente registrato con il pool.

Se si usa un agente self-hosted, questo nome viene specificato dall'utente. Vedere agenti.
Agent.OS Sistema operativo dell'host dell'agente. I valori validi sono:
  • Windows_NT
  • Darwin
  • Linux
Se si esegue in un contenitore, l'host e il contenitore dell'agente potrebbero eseguire sistemi operativi diversi.
Agent.OSArchitecture Architettura del processore del sistema operativo dell'host dell'agente. I valori validi sono:
  • X86
  • X64
  • ARM
Agent.TempDirectory Cartella temporanea pulita dopo ogni processo della pipeline. Questa directory viene usata da attività come l'attività dell'interfaccia della riga di comando di .NET Core per contenere elementi temporanei come i risultati dei test prima della pubblicazione.

Ad esempio: /home/vsts/work/_temp per Ubuntu.
Agent.ToolsDirectory Directory usata da attività come Il programma di installazione dello strumento node e Usa versione Python per passare da più versioni di uno strumento.

Queste attività aggiungono strumenti da questa directory a in PATH modo che i passaggi di compilazione successivi possano usarli.

Informazioni sulla gestione di questa directory in un agente self-hosted.
Agent.WorkFolder Directory di lavoro per questo agente. Ad esempio: c:\agent_work.

Nota: questa directory non è necessariamente scrivibile dalle attività della pipeline, ad esempio quando viene eseguito il mapping in un contenitore.

Esempio di Agent.ContainerMapping:

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

Variabili di compilazione (DevOps Server 2022)

Quando si usa una variabile in un modello che non è contrassegnata come disponibile nei modelli, la variabile non verrà sottoposta a rendering. Il rendering della variabile non verrà eseguito perché il relativo valore non è accessibile all'interno dell'ambito del modello.

Variabile Descrizione Disponibile nei modelli?
Build.ArtifactStagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BuildId ID del record per la compilazione completata. No
Build.BuildNumber Nome della compilazione completata, noto anche come numero di esecuzione. È possibile specificare gli elementi inclusi in questo valore.

Un uso tipico di questa variabile consiste nel renderlo parte del formato dell'etichetta, specificato nella scheda del repository.

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BuildUri URI per la compilazione. Ad esempio: vstfs:///Build/Build/1430.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BinariesDirectory Percorso locale dell'agente che è possibile usare come cartella di output per i file binari compilati.

Per impostazione predefinita, le nuove pipeline di compilazione non sono configurate per pulire questa directory. È possibile definire la compilazione per pulirla nella scheda Repository.

Ad esempio: c:\agent_work\1\b.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.ContainerId ID del contenitore per l'artefatto. Quando si carica un artefatto nella pipeline, viene aggiunto a un contenitore specifico per quel particolare artefatto. No
Build.CronSchedule.DisplayName Oggetto displayName della pianificazione cron che ha attivato l'esecuzione della pipeline. Questa variabile viene impostata solo se l'esecuzione della pipeline viene attivata da un trigger pianificato YAML. Per altre informazioni, vedere la definizione schedules.cron - Variabile Build.CronSchedule.DisplayName. Questa variabile è disponibile in Azure DevOps Server 2022.1 e versioni successive.
Build.DefinitionName Nome della pipeline di compilazione

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.DefinitionVersion Versione della pipeline di compilazione.
Build.QueuedBy Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.QueuedById Vedere "How are the identity variables set?.
Build.Reason Evento che ha causato l'esecuzione della compilazione.
  • Manual: un utente ha accodato manualmente la compilazione.
  • IndividualCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC.
  • BatchedCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC e le modifiche batch sono state selezionate.
  • Schedule: trigger pianificato .
  • ValidateShelveset: un utente ha accodato manualmente la compilazione di un set di scaffali TFVC specifico.
  • CheckInShelveset: trigger di archiviazione controllato.
  • PullRequest: la compilazione è stata attivata da un criterio di ramo Git che richiede una compilazione.
  • BuildCompletion: la compilazione è stata attivata da un'altra compilazione
  • ResourceTrigger: la compilazione è stata attivata da un trigger di risorsa o è stata attivata da un'altra compilazione.
Vedere Creare trigger di pipeline, Migliorare la qualità del codice con i criteri dei rami.
Build.Repository.Clean Valore selezionato per Pulisci nelle impostazioni del repository di origine.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.LocalPath Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s.

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Nota importante: se si estrae un solo repository Git, questo percorso è il percorso esatto del codice. Se si estrae più repository, il comportamento è il seguente (e potrebbe essere diverso dal valore della variabile Build.SourcesDirectory):
  • Se il passaggio di estrazione per il repository self (primario) non dispone di un percorso di estrazione personalizzato definito oppure il percorso di estrazione è il percorso $(Pipeline.Workspace)/s/<RepoName> predefinito di estrazione multipla per il repository automatico, il valore di questa variabile ripristina il valore predefinito, ovvero $(Pipeline.Workspace)/s.
  • Se il passaggio di estrazione per il repository self (primario) dispone di un percorso di estrazione personalizzato definito (e non è il percorso predefinito per l'estrazione multipla), questa variabile contiene il percorso esatto del repository self.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.ID Identificatore univoco del repository.

Questa operazione non verrà modificata, anche se il nome del repository non verrà modificato.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Name Nome del repository di attivazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Provider Tipo del repository di attivazione.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Tfvc.Workspace Definito se il repository è controllo della versione di Team Foundation. Nome dell'area di lavoro TFVC usata dall'agente di compilazione.

Ad esempio, se Agent.BuildDirectory è c:\agent_work\12 e il Agent.Id è 8, il nome dell'area di lavoro potrebbe essere: ws_12_8.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Uri URL del repository di attivazione. Ad esempio:Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione. No
Build.RequestedFor Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.RequestedForEmail Vedere "How are the identity variables set?".
Build.RequestedForId Vedere "How are the identity variables set?".
Build.SourceBranch Il ramo del repository di attivazione per cui è stata accodata la compilazione. Alcuni esempi:
  • Ramo repository Git: refs/heads/main
  • Richiesta pull del repository Git: refs/pull/1/merge
  • Ramo del repository TFVC: $/teamproject/main
  • Check-in controllato del repository TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Compilazione degli scaffali del repository TFVC: myshelveset;username@live.com
  • Quando la pipeline viene attivata da un tag: refs/tags/your-tag-name
Quando si usa questa variabile nel formato del numero di compilazione, i caratteri barra (/) vengono sostituiti con caratteri _di sottolineatura .

Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un insieme di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourceBranchName Nome del ramo nel repository di attivazione per cui la compilazione è stata accodata.
  • Ramo repository Git, richiesta pull o tag: l'ultimo segmento di percorso nel riferimento. Ad esempio, in refs/heads/main questo valore è main. In refs/heads/feature/tools questo valore è tools. In refs/tags/your-tag-name questo valore è your-tag-name.
  • Ramo del repository TFVC: ultimo segmento di percorso nel percorso del server radice per l'area di lavoro. Ad esempio, in $/teamproject/main questo valore è main.
  • Il repository TFVC gated check-in o la build degli scaffali è il nome del set di scaffali. Ad esempio, Gated_2016-06-06_05.20.51.4369;username@live.com o myshelveset;username@live.com.
Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un insieme di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourcesDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s.

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati.

Nota importante: se si estrae un solo repository Git, questo percorso è il percorso esatto del codice. Se si estrae più repository, viene ripristinato il valore predefinito, ovvero $(Pipeline.Workspace)/s, anche se il repository self (primario) viene estratto in un percorso personalizzato diverso dal relativo percorso $(Pipeline.Workspace)/s/<RepoName> predefinito multi-checkout (in questo caso, la variabile è diversa dal comportamento della variabile Build.Repository.LocalPath).

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.SourceVersion Modifica del controllo della versione più recente del repository di attivazione incluso in questa build.
  • Git: ID commit .
  • TFVC: l'insieme di modifiche.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.SourceVersionMessage Commento del commit o del set di modifiche per il repository di attivazione. Il messaggio viene troncato alla prima riga o a 200 caratteri, a meno che sia più breve.

Build.SourceVersionMessage Corrisponde al messaggio al Build.SourceVersion commit. Il Build.SourceVersion commit per una compilazione pull è il commit di merge (non il commit nel ramo di origine).

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Inoltre, questa variabile è disponibile solo a livello di passaggio e non è disponibile nei livelli di processo o di fase( ovvero, il messaggio non viene estratto fino all'avvio del processo e il codice viene estratto).

Nota: questa variabile è disponibile in TFS 2015.4.

Nota: la variabile Build.SourceVersionMessage non funziona con le pipeline di compilazione classiche nei repository Bitbucket quando batch cambia mentre è in corso una compilazione.
No
Build.StagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Git.SubmoduleCheckout Valore selezionato per i moduli secondari Checkout nella scheda repository. Con più repository estratto, questo valore tiene traccia dell'impostazione del repository di attivazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.SourceTfvcShelveset Definito se il repository è controllo della versione di Team Foundation.

Se si esegue una costruzione controllata o una compilazione di scaffali, questo è impostato sul nome del set di scaffali che si sta costruendo.

Nota: questa variabile restituisce un valore non valido per l'uso della compilazione in un formato di numero di build.
No
Build.TriggeredBy.BuildId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su BuildID della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.DefinitionId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su DefinitionID della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.DefinitionName Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul nome della pipeline di compilazione che attiva. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.BuildNumber Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul numero della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Build.TriggeredBy.ProjectID Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su ID del progetto che contiene la compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Se si attiva una pipeline YAML usando resources, è consigliabile usare invece le variabili di risorse.
No
Common.TestResultsDirectory Percorso locale dell'agente in cui vengono creati i risultati del test. Ad esempio: c:\agent_work\1\TestResults.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No

Variabili della pipeline (DevOps Server 2022)

Variabile Descrizione
Pipeline.Workspace Directory dell'area di lavoro per una determinata pipeline. Questa variabile ha lo stesso valore di Agent.BuildDirectory. Ad esempio: /home/vsts/work/1.

Suggerimento

Se si usano pipeline di versione classiche, è possibile usare le versioni classiche e le variabili degli artefatti per archiviare e accedere ai dati in tutta la pipeline.

Variabili del processo di distribuzione (DevOps Server 2022)

Queste variabili hanno come ambito un processo di distribuzione specifico e verranno risolte solo in fase di esecuzione del processo.

Variabile Descrizione
Environment.Name Nome dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione e registrare la cronologia di distribuzione. Ad esempio: smarthotel-dev.
Environment.Id ID dell'ambiente di destinazione nel processo di distribuzione. Ad esempio: 10.
Environment.ResourceName Nome della risorsa specifica all'interno dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione e registrare la cronologia di distribuzione. Ad esempio, bookings che è uno spazio dei nomi Kubernetes aggiunto come risorsa all'ambiente smarthotel-dev.
Environment.ResourceId ID della risorsa specifica all'interno dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione. Ad esempio: 4.
Strategy.Name Nome della strategia di distribuzione: canary, runOnceo rolling.
Strategy.CycleName Nome del ciclo corrente in una distribuzione. Le opzioni sono PreIteration, Iterationo PostIteration.

Variabili di sistema (DevOps Server 2022)

Quando si usa una variabile in un modello che non è contrassegnata come disponibile nei modelli, la variabile non verrà sottoposta a rendering. Il rendering della variabile non verrà eseguito perché il relativo valore non è accessibile all'interno dell'ambito del modello.

Variabile Descrizione Disponibile nei modelli?
System.AccessToken Usare il token OAuth per accedere all'API REST.

Usare System.AccessToken dagli script YAML.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.CollectionId GUID della raccolta TFS o dell'organizzazione Azure DevOps.
System.CollectionUri URI della raccolta TFS o dell'organizzazione Azure DevOps. Ad esempio: https://dev.azure.com/fabrikamfiber/.
System.DefaultWorkingDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.DefinitionId ID della pipeline di compilazione.
System.HostType Impostare su build se la pipeline è una compilazione. Per una versione, i valori sono deployment per un processo del gruppo di distribuzione, gates durante la valutazione dei controlli e release per altri processi (Agent e Senza agente).
System.JobAttempt Impostare su 1 la prima volta che si tenta di eseguire il processo e incrementa ogni volta che il processo viene ritentato. No
System.JobDisplayName Nome leggibile assegnato a un processo. No
System.JobId Identificatore univoco per un singolo tentativo di un singolo processo. Il valore è univoco per la pipeline corrente. No
System.JobName Nome del processo, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.PhaseAttempt Impostare su 1 la prima volta che viene tentata questa fase e incrementa ogni volta che il processo viene ritentato.

Nota: "Phase" è un concetto principalmente ridondante, che rappresenta il tempo di progettazione per un processo (mentre il processo era la versione di runtime di una fase). Il concetto di "fase" è stato rimosso principalmente da Azure Pipelines. I processi matrice e multi-configurazione sono l'unica posizione in cui "phase" è ancora distinto da "job". Una fase può creare un'istanza di più processi, che differiscono solo per gli input.
No
System.PhaseDisplayName Nome leggibile assegnato a una fase. No
System.PhaseName Identificatore basato su stringa per un processo, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.PlanId Identificatore basato su stringa per una singola esecuzione della pipeline. No
System.PullRequest.IsFork Se la richiesta pull proviene da un fork del repository, questa variabile viene impostata su True. In caso contrario, è impostato su False.
System.PullRequest.PullRequestId ID della richiesta pull che ha causato la compilazione. Ad esempio: 17. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. No
System.PullRequest.PullRequestNumber Numero della richiesta pull che ha causato la compilazione. Questa variabile viene popolata per le richieste pull da GitHub che hanno un ID richiesta pull e un numero di richiesta pull diversi. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.PullRequest.targetBranchName Nome del ramo di destinazione per una richiesta pull. Questa variabile può essere usata in una pipeline per eseguire in modo condizionale attività o passaggi in base al ramo di destinazione della richiesta pull. Ad esempio, è possibile attivare un set diverso di test o strumenti di analisi del codice a seconda del ramo in cui vengono unite le modifiche. No
System.PullRequest.SourceBranch Ramo da rivedere in una richiesta pull. Ad esempio: refs/heads/users/raisa/new-feature per Azure Repos. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.PullRequest.SourceRepositoryURI URL del repository che contiene la richiesta pull. Ad esempio: https://dev.azure.com/ouraccount/_git/OurProject. No
System.PullRequest.TargetBranch Ramo che rappresenta la destinazione di una richiesta pull. Ad esempio, refs/heads/main quando il repository si trova in Azure Repos e main quando il repository si trova in GitHub. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di una richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.StageAttempt Impostare su 1 la prima volta che questa fase viene tentata e incrementa ogni volta che viene ritentata la fase. No
System.StageDisplayName Nome leggibile assegnato a una fase. No
System.StageName Identificatore basato su stringa per una fase, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.TeamFoundationCollectionUri URI della raccolta TFS o dell'organizzazione Azure DevOps. Ad esempio: https://dev.azure.com/fabrikamfiber/.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.TeamProject Nome del progetto che contiene la compilazione.
System.TeamProjectId ID del progetto a cui appartiene la compilazione.
System.TimelineId Identificatore basato su stringa per i dettagli di esecuzione e i log di una singola esecuzione della pipeline. No
TF_BUILD Impostare su True se lo script viene eseguito da un'attività di compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No

Controlla le variabili (DevOps Server 2022)

Variabile Descrizione
Checks.StageAttempt Impostare su 1 la prima volta che questa fase viene tentata e incrementa ogni volta che viene ritentata la fase.
Questa variabile può essere usata solo all'interno di un'approvazione o di un controllo per un ambiente. Ad esempio, è possibile usare $(Checks.StageAttempt) all'interno di un controllo dell'API REST Invoke.
Aggiungere il tentativo di fase come parametro.

Variabili dell'agente (DevOps Server 2020)

Nota

È possibile usare le variabili agente come variabili di ambiente negli script e come parametri nelle attività di compilazione. Non è possibile usarli per personalizzare il numero di build o per applicare un'etichetta o un tag del controllo della versione.

Variabile Descrizione
Agent.BuildDirectory Percorso locale nell'agente in cui vengono create tutte le cartelle per una determinata pipeline di compilazione. Questa variabile ha lo stesso valore di Pipeline.Workspace. Ad esempio: /home/vsts/work/1.
Agent.HomeDirectory Directory in cui è installato l'agente. Contiene il software dell'agente. Ad esempio: c:\agent.
Agent.Id ID dell'agente.
Agent.JobName Nome del processo in esecuzione. In genere si tratta di "Processo" o "__default", ma in scenari con più configurazioni sarà la configurazione.
Agent.JobStatus Stato della compilazione.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parzialmente riuscito)
  • Skipped (ultimo processo)
È necessario fare riferimento alla variabile di ambiente come AGENT_JOBSTATUS. La versione precedente agent.jobstatus è disponibile per la compatibilità con le versioni precedenti.
Agent.MachineName Nome del computer in cui è installato l'agente.
Agent.Name Nome dell'agente registrato con il pool.

Se si usa un agente self-hosted, questo nome viene impostato dall'utente. Vedere agenti.
Agent.OS Sistema operativo dell'host dell'agente. I valori validi sono:
  • Windows_NT
  • Darwin
  • Linux
Se si esegue in un contenitore, l'host e il contenitore dell'agente potrebbero eseguire sistemi operativi diversi.
Agent.OSArchitecture Architettura del processore del sistema operativo dell'host dell'agente. I valori validi sono:
  • X86
  • X64
  • ARM processor
Agent.TempDirectory Cartella temporanea pulita dopo ogni processo della pipeline. Questa directory viene usata da attività come l'attività dell'interfaccia della riga di comando di .NET Core per contenere elementi temporanei come i risultati dei test prima della pubblicazione.
Ad esempio: /home/vsts/work/_temp per Ubuntu.
Agent.ToolsDirectory Directory usata da attività come Il programma di installazione dello strumento node e Usa versione Python per passare da più versioni di uno strumento.

Queste attività aggiungono strumenti da questa directory a in PATH modo che i passaggi di compilazione successivi possano usarli.

Informazioni sulla gestione di questa directory in un agente self-hosted.
Agent.WorkFolder Directory di lavoro per questo agente. Ad esempio: c:\agent_work.

Nota: questa directory non è necessariamente scrivibile dalle attività della pipeline( ad esempio, quando viene eseguito il mapping in un contenitore)

Variabili di compilazione (DevOps Server 2020)

Quando si usa una variabile in un modello che non è contrassegnata come disponibile nei modelli, la variabile non verrà sottoposta a rendering. Il rendering della variabile non verrà eseguito perché il relativo valore non è accessibile all'interno dell'ambito del modello.

Variabile Descrizione Disponibile nei modelli?
Build.ArtifactStagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BuildId ID del record per la compilazione completata. No
Build.BuildNumber Nome della compilazione completata, noto anche come numero di esecuzione. È possibile specificare gli elementi inclusi in questo valore.

Un uso tipico di questa variabile consiste nel renderlo parte del formato dell'etichetta, specificato nella scheda del repository.

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BuildUri URI per la compilazione. Ad esempio: vstfs:///Build/Build/1430.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.BinariesDirectory Percorso locale dell'agente che è possibile usare come cartella di output per i file binari compilati.

Per impostazione predefinita, le nuove pipeline di compilazione non sono configurate per pulire questa directory. È possibile definire la compilazione per pulirla nella scheda Repository.

Ad esempio: c:\agent_work\1\b.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.ContainerId ID del contenitore per l'artefatto. Quando si carica un artefatto nella pipeline, viene aggiunto a un contenitore specifico per quel particolare artefatto. No
Build.DefinitionName Nome della pipeline di compilazione

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta avrà esito negativo.
Build.DefinitionVersion Versione della pipeline di compilazione.
Build.QueuedBy Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.QueuedById Vedere "How are the identity variables set?".
Build.Reason Evento che ha causato l'esecuzione della compilazione.
  • Manual: un utente ha accodato manualmente la compilazione.
  • IndividualCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC.
  • BatchedCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC e le modifiche batch sono state selezionate.
  • Schedule: trigger pianificato .
  • ValidateShelveset: un utente ha accodato manualmente la compilazione di un set di scaffali TFVC specifico.
  • CheckInShelveset: trigger di archiviazione controllato.
  • PullRequest: la compilazione è stata attivata da un criterio di ramo Git che richiede una compilazione.
  • BuildCompletion: la compilazione è stata attivata da un'altra compilazione
  • ResourceTrigger: la compilazione è stata attivata da un trigger di risorsa o è stata attivata da un'altra compilazione.
Vedere Creare trigger di pipeline, Migliorare la qualità del codice con i criteri dei rami.
Build.Repository.Clean Valore selezionato per Pulisci nelle impostazioni del repository di origine.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.LocalPath Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s.

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Nota importante: se si estrae un solo repository Git, questo percorso sarà il percorso esatto del codice.

Se si estrae più repository, il comportamento è il seguente (e potrebbe essere diverso dal valore della variabile Build.SourcesDirectory):
  • Se il passaggio di estrazione per il repository self (primario) non dispone di un percorso di estrazione personalizzato definito oppure il percorso di estrazione è il percorso $(Pipeline.Workspace)/s/&lt;RepoName&gt; predefinito di estrazione multipla per il repository automatico, il valore di questa variabile verrà ripristinato al valore predefinito, ovvero $(Pipeline.Workspace)/s.
  • Se il passaggio di estrazione per il repository self (primario) ha un percorso di estrazione personalizzato definito (e non è il percorso predefinito per l'estrazione multipla), questa variabile conterrà il percorso esatto del repository self.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.ID Identificatore univoco del repository.

Questa operazione non verrà modificata, anche se il nome del repository non verrà modificato.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Name Nome del repository di attivazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Provider Tipo del repository di attivazione.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Tfvc.Workspace Definito se il repository è controllo della versione di Team Foundation. Nome dell'area di lavoro TFVC usata dall'agente di compilazione.

Ad esempio, se Agent.BuildDirectory è c:\agent_work\12 e il Agent.Id è 8, il nome dell'area di lavoro potrebbe essere: ws_12_8.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Uri URL del repository di attivazione. Ad esempio:
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.RequestedFor Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.RequestedForEmail Vedere "How are the identity variables set?".
Build.RequestedForId Vedere "How are the identity variables set?".
Build.SourceBranch Il ramo del repository di attivazione per cui è stata accodata la compilazione. Alcuni esempi:
  • Ramo repository Git: refs/heads/main
  • Richiesta pull del repository Git: refs/pull/1/merge
  • Ramo del repository TFVC: $/teamproject/main
  • Check-in controllato del repository TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Compilazione degli scaffali del repository TFVC: myshelveset;username@live.com
  • Quando la pipeline viene attivata da un tag: refs/tags/your-tag-name
Quando si usa questa variabile nel formato del numero di compilazione, i caratteri barra (/) vengono sostituiti con caratteri _di sottolineatura .

Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un set di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourceBranchName Nome del ramo nel repository di attivazione per cui la compilazione è stata accodata.
  • Ramo repository Git, richiesta pull o tag: l'ultimo segmento di percorso nel riferimento. Ad esempio, in refs/heads/main questo valore è main. In refs/heads/feature/tools questo valore è tools. In refs/tags/your-tag-name questo valore è your-tag-name.
  • Ramo del repository TFVC: ultimo segmento di percorso nel percorso del server radice per l'area di lavoro. Ad esempio, in $/teamproject/main questo valore è main.
  • Il repository TFVC gated check-in o la build degli scaffali è il nome del set di scaffali. Ad esempio, Gated_2016-06-06_05.20.51.4369;username@live.com o myshelveset;username@live.com.
Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un insieme di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourcesDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s.

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati.

Nota importante: se si estrae un solo repository Git, questo percorso è il percorso esatto del codice. Se si estrae più repository, viene ripristinato il valore predefinito, ovvero $(Pipeline.Workspace)/s, anche se il repository self (primario) viene estratto in un percorso personalizzato diverso dal relativo percorso $(Pipeline.Workspace)/s/<RepoName> predefinito multi-checkout (in questo caso, la variabile è diversa dal comportamento della variabile Build.Repository.LocalPath).

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.SourceVersion Modifica del controllo della versione più recente del repository di attivazione incluso in questa build.
  • Git: ID commit .
  • TFVC: l'insieme di modifiche.
Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.SourceVersionMessage Commento del commit o del set di modifiche per il repository di attivazione. Il messaggio viene troncato alla prima riga o a 200 caratteri, a meno che sia più breve.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Inoltre, questa variabile è disponibile solo a livello di passaggio e non è disponibile nei livelli di processo o di fase( ovvero, il messaggio non viene estratto fino all'avvio del processo e non è stato estratto il codice).

Nota: questa variabile è disponibile in TFS 2015.4.

Nota: la variabile Build.SourceVersionMessage non funziona con le pipeline di compilazione classiche nei repository Bitbucket quando batch cambia mentre è in corso una compilazione.
No
Build.StagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.Repository.Git.SubmoduleCheckout Valore selezionato per i moduli secondari Checkout nella scheda repository. Con più repository estratto, questo valore tiene traccia dell'impostazione del repository di attivazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.SourceTfvcShelveset Definito se il repository è controllo della versione di Team Foundation.

Se si esegue una costruzione controllata o una compilazione di scaffali, questo è impostato sul nome del set di scaffali che si sta costruendo.

Nota: questa variabile restituisce un valore non valido per l'uso della compilazione in un formato di numero di build.
No
Build.TriggeredBy.BuildId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su BuildID della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.TriggeredBy.DefinitionId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su DefinitionID della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.TriggeredBy.DefinitionName Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul nome della pipeline di compilazione che attiva. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.TriggeredBy.BuildNumber Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul numero della compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Build.TriggeredBy.ProjectID Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su ID del progetto che contiene la compilazione di attivazione. Nelle pipeline classiche questa variabile viene attivata da un trigger di completamento della compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
Common.TestResultsDirectory Percorso locale dell'agente in cui vengono creati i risultati del test. Ad esempio: c:\agent_work\1\TestResults.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No

Variabili della pipeline (DevOps Server 2020)

Variabile Descrizione
Pipeline.Workspace Directory dell'area di lavoro per una determinata pipeline. Questa variabile ha lo stesso valore di Agent.BuildDirectory. Ad esempio: /home/vsts/work/1.

Variabili del processo di distribuzione (DevOps Server 2020)

Queste variabili hanno come ambito un processo di distribuzione specifico e verranno risolte solo in fase di esecuzione del processo.

Variabile Descrizione
Environment.Name Nome dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione e registrare la cronologia di distribuzione. Ad esempio: smarthotel-dev.
Environment.Id ID dell'ambiente di destinazione nel processo di distribuzione. Ad esempio: 10.
Environment.ResourceName Nome della risorsa specifica all'interno dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione e registrare la cronologia di distribuzione. Ad esempio, bookings che è uno spazio dei nomi Kubernetes aggiunto come risorsa all'ambiente smarthotel-dev.
Environment.ResourceId ID della risorsa specifica all'interno dell'ambiente di destinazione nel processo di distribuzione per eseguire i passaggi di distribuzione. Ad esempio: 4.

Variabili di sistema (DevOps Server 2020)

Quando si usa una variabile in un modello che non è contrassegnata come disponibile nei modelli, la variabile non verrà sottoposta a rendering. Il rendering della variabile non verrà eseguito perché il relativo valore non è accessibile all'interno dell'ambito del modello.

Variabile Descrizione Disponibile nei modelli?
System.AccessToken Usare il token OAuth per accedere all'API REST.

Usare System.AccessToken dagli script YAML.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.CollectionId GUID della raccolta TFS o dell'organizzazione Di Azure DevOps
System.CollectionUri Stringa Team Foundation Server URI della raccolta.
System.DefaultWorkingDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No
System.DefinitionId ID della pipeline di compilazione.
System.HostType Impostare su build se la pipeline è una compilazione. Per una versione, i valori sono deployment per un processo del gruppo di distribuzione, gates durante la valutazione dei controlli e release per altri processi (Agent e Senza agente).
System.JobAttempt Impostare su 1 la prima volta che si tenta di eseguire il processo e incrementa ogni volta che il processo viene ritentato. No
System.JobDisplayName Nome leggibile assegnato a un processo. No
System.JobId Identificatore univoco per un singolo tentativo di un singolo processo. Il valore è univoco per la pipeline corrente. No
System.JobName Nome del processo, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.PhaseAttempt Impostare su 1 la prima volta che viene tentata questa fase e incrementa ogni volta che il processo viene ritentato.

Nota: "Phase" è un concetto principalmente ridondante, che rappresenta il tempo di progettazione per un processo (mentre il processo era la versione di runtime di una fase). Il concetto di "fase" è stato rimosso principalmente da Azure Pipelines. I processi matrice e multi-configurazione sono l'unica posizione in cui "phase" è ancora distinto da "job". Una fase può creare un'istanza di più processi, che differiscono solo per gli input.
No
System.PhaseDisplayName Nome leggibile assegnato a una fase. No
System.PhaseName Identificatore basato su stringa per un processo, in genere usato per esprimere le dipendenze e accedere alle variabili di output. No
System.StageAttempt Impostare su 1 la prima volta che viene tentata questa fase e incrementa ogni volta che il processo viene ritentato. No
System.StageDisplayName Nome leggibile assegnato a una fase. No
System.StageName Identificatore basato su stringa per una fase, in genere usato per esprimere le dipendenze e accedere alle variabili di output.
System.PullRequest.IsFork Se la richiesta pull proviene da un fork del repository, questa variabile viene impostata su True. In caso contrario, è impostato su False.
System.PullRequest.PullRequestId ID della richiesta pull che ha causato la compilazione. Ad esempio: 17. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. No
System.PullRequest.PullRequestNumber Numero della richiesta pull che ha causato la compilazione. Questa variabile viene popolata per le richieste pull da GitHub che hanno un ID di richiesta pull e un numero di richiesta pull diversi. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.PullRequest.targetBranchName Nome del ramo di destinazione per una richiesta pull. Questa variabile può essere usata in una pipeline per eseguire in modo condizionale attività o passaggi in base al ramo di destinazione della richiesta pull. Ad esempio, è possibile attivare un set diverso di test o strumenti di analisi del codice a seconda del ramo in cui vengono unite le modifiche. No
System.PullRequest.SourceBranch Ramo da rivedere in una richiesta pull. Ad esempio: refs/heads/users/raisa/new-feature. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.PullRequest.SourceCommitId Commit da rivedere in una richiesta pull. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo.
System.PullRequest.SourceRepositoryURI URL del repository che contiene la richiesta pull. Ad esempio: https://dev.azure.com/ouraccount/_git/OurProject. No
System.PullRequest.TargetBranch Ramo che rappresenta la destinazione di una richiesta pull. Ad esempio, refs/heads/main quando il repository si trova in Azure Repos e main quando il repository si trova in GitHub. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di una richiesta pull Git interessata da un criterio di ramo. Questa variabile è disponibile solo in una pipeline YAML se la richiesta pull è interessata da un criterio di ramo. No
System.TeamFoundationCollectionUri URI della raccolta di team foundation. Ad esempio: https://dev.azure.com/fabrikamfiber/.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.TeamProject Nome del progetto che contiene la compilazione.
System.TeamProjectId ID del progetto a cui appartiene la compilazione.
TF_BUILD Impostare su True se lo script viene eseguito da un'attività di compilazione.

Questa variabile è con ambito agente e può essere usata come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
No

Variabili dell'agente (DevOps Server 2019)

Nota

È possibile usare le variabili agente come variabili di ambiente negli script e come parametri nelle attività di compilazione. Non è possibile usarli per personalizzare il numero di build o per applicare un'etichetta o un tag del controllo della versione.

Variabile Descrizione
Agent.BuildDirectory Percorso locale nell'agente in cui vengono create tutte le cartelle per una determinata pipeline di compilazione. Ad esempio: c:\agent_work\1.
Agent.HomeDirectory Directory in cui è installato l'agente. Contiene il software dell'agente. Ad esempio: c:\agent.
Agent.Id ID dell'agente.
Agent.JobName Nome del processo in esecuzione. In genere si tratta di "Processo" o "__default", ma in scenari con più configurazioni sarà la configurazione.
Agent.JobStatus Stato della compilazione.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (parzialmente riuscito)
  • Skipped (ultimo processo)
È necessario fare riferimento alla variabile di ambiente come AGENT_JOBSTATUS. La versione precedente agent.jobstatus è disponibile per la compatibilità con le versioni precedenti.
Agent.MachineName Nome del computer in cui è installato l'agente.
Agent.Name Nome dell'agente registrato con il pool.

Se si usa un agente self-hosted, questo nome viene impostato automaticamente. Vedere agenti.
Agent.OS Sistema operativo dell'host dell'agente. I valori validi sono:
  • Windows_NT
  • Darwin
  • Linux
Se si esegue in un contenitore, l'host e il contenitore dell'agente potrebbero eseguire sistemi operativi diversi.
Agent.OSArchitecture Architettura del processore del sistema operativo dell'host dell'agente. I valori validi sono:
  • X86
  • X64
  • ARM processor
Agent.TempDirectory Cartella temporanea pulita dopo ogni processo della pipeline. Questa directory viene usata da attività come l'attività dell'interfaccia della riga di comando di .NET Core per contenere elementi temporanei come i risultati dei test prima della pubblicazione.
Agent.ToolsDirectory Directory usata da attività come Il programma di installazione dello strumento node e Usa versione Python per passare da più versioni di uno strumento.

Queste attività aggiungono strumenti da questa directory a in PATH modo che i passaggi di compilazione successivi possano usarli.

Informazioni sulla gestione di questa directory in un agente self-hosted.
Agent.WorkFolder Directory di lavoro per questo agente. Ad esempio: c:\agent_work.

Questa directory non è necessariamente scrivibile dalle attività della pipeline, ad esempio quando viene eseguito il mapping in un contenitore.

Variabili di compilazione (DevOps Server 2019)

Variabile Descrizione
Build.ArtifactStagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.BuildId ID del record per la compilazione completata.
Build.BuildNumber Nome della compilazione completata. È possibile specificare il formato del numero di build che genera questo valore nelle opzioni della pipeline.

Un uso tipico di questa variabile consiste nel renderlo parte del formato dell'etichetta, specificato nella scheda del repository.

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.BuildUri URI per la compilazione. Ad esempio: vstfs:///Build/Build/1430.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.BinariesDirectory Percorso locale dell'agente che è possibile usare come cartella di output per i file binari compilati.

Per impostazione predefinita, le nuove pipeline di compilazione non sono configurate per pulire questa directory. È possibile definire la compilazione per pulirla nella scheda Repository.

Ad esempio: c:\agent_work\1\b.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.DefinitionName Nome della pipeline di compilazione

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta avrà esito negativo.
Build.DefinitionVersion Versione della pipeline di compilazione.
Build.QueuedBy Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.QueuedById Vedere "How are the identity variables set?".
Build.Reason Evento che ha causato l'esecuzione della compilazione.
  • Manual: un utente ha accodato manualmente la compilazione.
  • IndividualCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC.
  • BatchedCI: integrazione continua (CI) attivata da un push Git o da un'archiviazione TFVC e le modifiche batch sono state selezionate.
  • Schedule: trigger pianificato .
  • ValidateShelveset: un utente ha accodato manualmente la compilazione di un set di scaffali TFVC specifico.
  • CheckInShelveset: trigger di archiviazione controllato.
  • PullRequest: la compilazione è stata attivata da un criterio di ramo Git che richiede una compilazione.
  • BuildCompletion: la compilazione è stata attivata da un'altra compilazione.
Vedere Creare trigger di pipeline, Migliorare la qualità del codice con i criteri dei rami.
Build.Repository.Clean Valore selezionato per Pulisci nelle impostazioni del repository di origine.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.Repository.LocalPath Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Questa variabile è sinonimo di Build.SourcesDirectory.
Build.Repository.Name Nome del repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.Repository.Provider Tipo di repository selezionato.
Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.Repository.Tfvc.Workspace Definito se il repository è controllo della versione di Team Foundation. Nome dell'area di lavoro TFVC usata dall'agente di compilazione.

Ad esempio, se Agent.BuildDirectory è c:\agent_work\12 e il Agent.Id è 8, il nome dell'area di lavoro potrebbe essere: ws_12_8.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.Repository.Uri URL del repository. Ad esempio:
Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.RequestedFor Vedere "How are the identity variables set?".

Nota: questo valore può contenere spazi vuoti o altri caratteri di etichetta non validi. In questi casi, il formato dell'etichetta ha esito negativo.
Build.RequestedForEmail Vedere "How are the identity variables set?".
Build.RequestedForId Vedere "How are the identity variables set?".
Build.SourceBranch Il ramo per cui è stata accodata la compilazione. Alcuni esempi:
  • Ramo repository Git: refs/heads/main
  • Richiesta pull del repository Git: refs/pull/1/merge
  • Ramo del repository TFVC: $/teamproject/main
  • Check-in controllato del repository TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Compilazione degli scaffali del repository TFVC: myshelveset;username@live.com
Quando si usa questa variabile nel formato del numero di compilazione, i caratteri barra (/) vengono sostituiti con caratteri di sottolineatura (_).

Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un insieme di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourceBranchName Nome del ramo per cui è stata accodata la compilazione.
  • Ramo repository Git, richiesta pull o tag: l'ultimo segmento di percorso nel riferimento. Ad esempio, in refs/heads/main questo valore è main. In refs/heads/feature/tools questo valore è tools. In refs/tags/your-tag-name questo valore è your-tag-name.
  • Ramo del repository TFVC: ultimo segmento di percorso nel percorso del server radice per l'area di lavoro. Ad esempio, in $/teamproject/main questo valore è main.
  • Il repository TFVC gated check-in o la build degli scaffali è il nome del set di scaffali. Ad esempio, Gated_2016-06-06_05.20.51.4369;username@live.com o myshelveset;username@live.com.
Nota: in TFVC, se si esegue una compilazione di archiviazione controllata o si compila manualmente un insieme di scaffali, non è possibile usare questa variabile nel formato del numero di compilazione.
Build.SourcesDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s.

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Questa variabile è sinonimo di Build.Repository.LocalPath.
Build.SourceVersion Modifica del controllo della versione più recente inclusa in questa build.
  • Git: ID commit .
  • TFVC: l'insieme di modifiche.
Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.SourceVersionMessage Commento del commit o del set di modifiche. Il messaggio viene troncato alla prima riga o a 200 caratteri, a meno che sia più breve.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Nota: questa variabile è disponibile in TFS 2015.4.

Nota: la variabile Build.SourceVersionMessage non funziona con le pipeline di compilazione classiche nei repository Bitbucket quando batch cambia mentre è in corso una compilazione.
Build.StagingDirectory Percorso locale nell'agente in cui vengono copiati tutti gli artefatti prima di essere inseriti nella destinazione. Ad esempio: c:\agent_work\1\a.

Un modo tipico per usare questa cartella consiste nel pubblicare gli artefatti di compilazione con le attività Copia file e Pubblica artefatti di compilazione .

Nota: Build.ArtifactStagingDirectory e Build.StagingDirectory sono intercambiabili. Questa directory viene ripulita prima di ogni nuova compilazione, quindi non è necessario pulirla manualmente.

Vedere Artefatti in Azure Pipelines.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.Repository.Git.SubmoduleCheckout Valore selezionato per i moduli secondari Checkout nella scheda repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.SourceTfvcShelveset Definito se il repository è controllo della versione di Team Foundation.

Se si esegue una costruzione controllata o una compilazione di scaffali, questo è impostato sul nome del set di scaffali che si sta costruendo.

Nota: questa variabile restituisce un valore non valido per l'uso della compilazione in un formato di numero di build.
Build.TriggeredBy.BuildId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su BuildID della compilazione di attivazione.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.TriggeredBy.DefinitionId Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su DefinitionID della compilazione di attivazione.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.TriggeredBy.DefinitionName Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul nome della pipeline di compilazione che attiva.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.TriggeredBy.BuildNumber Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata sul numero della compilazione di attivazione.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Build.TriggeredBy.ProjectID Se la compilazione è stata attivata da un'altra compilazione, questa variabile viene impostata su ID del progetto che contiene la compilazione di attivazione.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
Common.TestResultsDirectory Percorso locale dell'agente in cui vengono creati i risultati del test. Ad esempio: c:\agent_work\1\TestResults.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Variabili di sistema (DevOps Server 2019)

Esempio di script di PowerShell: accedere all'API REST

Variabile Descrizione
System.AccessToken Usare il token OAuth per accedere all'API REST.

Usare System.AccessToken dagli script YAML.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.CollectionId GUID della raccolta TFS o dell'organizzazione Di Azure DevOps
System.DefaultWorkingDirectory Percorso locale nell'agente in cui vengono scaricati i file di codice sorgente. Ad esempio: c:\agent_work\1\s

Per impostazione predefinita, le nuove pipeline di compilazione aggiornano solo i file modificati. È possibile modificare la modalità di download dei file nella scheda Repository.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.DefinitionId ID della pipeline di compilazione.
System.HostType Impostare su build se la pipeline è una compilazione. Per una versione, i valori sono deployment relativi a un processo del gruppo di distribuzione e release a un processo di Agent.
System.PullRequest.IsFork Se la richiesta pull proviene da un fork del repository, questa variabile viene impostata su True. In caso contrario, è impostato su False.
System.PullRequest.PullRequestId ID della richiesta pull che ha causato la compilazione. Ad esempio: 17. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo.
System.PullRequest.PullRequestNumber Numero della richiesta pull che ha causato la compilazione. Questa variabile viene popolata per le richieste pull da GitHub, che hanno un ID di richiesta pull e un numero di richiesta pull diversi.
System.PullRequest.SourceBranch Ramo da rivedere in una richiesta pull. Ad esempio: refs/heads/users/raisa/new-feature. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo.
System.PullRequest.SourceCommitId Commit da rivedere in una richiesta pull. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git interessata da un criterio di ramo.
System.PullRequest.SourceRepositoryURI URL del repository che contiene la richiesta pull. Ad esempio: https://dev.azure.com/ouraccount/_git/OurProject. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di un Richiesta pull Git di Azure Repos interessata da un criterio di ramo. Non viene inizializzato per le richieste pull di GitHub.
System.PullRequest.TargetBranch Ramo che rappresenta la destinazione di una richiesta pull. Ad esempio: refs/heads/main. Questa variabile viene inizializzata solo se la compilazione è stata eseguita a causa di una richiesta pull Git interessata da un criterio di ramo.
System.TeamFoundationCollectionUri URI della raccolta di team foundation. Ad esempio: https://dev.azure.com/fabrikamfiber/.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.
System.TeamProject Nome del progetto che contiene la compilazione.
System.TeamProjectId ID del progetto a cui appartiene la compilazione.
TF_BUILD Impostare su True se lo script viene eseguito da un'attività di compilazione.

Questa variabile è con ambito agente. Può essere usato come variabile di ambiente in uno script e come parametro in un'attività di compilazione, ma non come parte del numero di build o come tag di controllo della versione.

Come vengono impostate le variabili identity?

Il valore dipende da ciò che ha causato la compilazione e sono specifici per i repository Repos di Azure.

Se la compilazione viene attivata... I valori Build.QueuedBy e Build.QueuedById sono quindi basati su... I valori Build.RequestedFor e Build.RequestedForId sono quindi basati su...
In Git o dai trigger di integrazione continua (CI) Identità del sistema, ad esempio: [DefaultCollection]\Project Collection Service Accounts Persona che ha eseguito il push o l'archiviazione delle modifiche.
In Git o da una compilazione dei criteri di ramo. Identità del sistema, ad esempio: [DefaultCollection]\Project Collection Service Accounts Persona che ha archiviato le modifiche.
In TFVC da un trigger di archiviazione controllato Persona che ha archiviato le modifiche. Persona che ha archiviato le modifiche.
In Git o TFVC in base ai trigger pianificati Identità del sistema, ad esempio: [DefaultCollection]\Project Collection Service Accounts Identità del sistema, ad esempio: [DefaultCollection]\Project Collection Service Accounts
Poiché è stato fatto clic sul pulsante Compilazione coda Te Te

Chiedere a Copilot di generare una fase con una condizione in base ai valori delle variabili

Usare Copilot per generare una fase con una condizione determinata dal valore di una variabile.

Questo prompt di esempio definisce una fase eseguita quando Agent.JobStatus indica che la fase precedente è stata eseguita correttamente:

Creare una nuova fase di Azure DevOps che viene eseguita solo quando Agent.JobStatus è Succeeded o SucceededWithIssues.

È possibile personalizzare la richiesta di usare i valori che soddisfano i requisiti. Ad esempio, è possibile richiedere assistenza per la creazione di una fase che viene eseguita solo quando una pipeline ha esito negativo.

Nota

GitHub Copilot è basato sull'intelligenza artificiale, quindi sono possibili sorprese ed errori. Assicurarsi di verificare il codice o i suggerimenti generati. Per altre informazioni sull'uso generale di GitHub Copilot, impatto sui prodotti, supervisione umana e privacy, vedere Domande frequenti su GitHub Copilot.