Używanie wstępnie zdefiniowanych zmiennych
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Zmienne to wygodny sposób uzyskiwania znaczących elementów informacji dot. różnych części potoku. Jest to lista wstępnie zdefiniowanych zmiennych, z których możesz skorzystać. Może istnieć kilka innych wstępnie zdefiniowanych zmiennych, ale są one głównie przeznaczone do użytku wewnętrznego.
Te zmienne są automatycznie ustawiane przez system i tylko do odczytu. (Wyjątki to Build.Clean i System.Debug).
W potokach YAML można odwoływać się do wstępnie zdefiniowanych zmiennych jako zmiennych środowiskowych. Na przykład zmienna Build.ArtifactStagingDirectory
staje się zmienną BUILD_ARTIFACTSTAGINGDIRECTORY
.
W przypadku potoków klasycznych można używać zmiennych wydania w zadaniach wdrażania w celu udostępniania typowych informacji (na przykład nazwy środowiska, grupy zasobów itp.).
Dowiedz się więcej o pracy ze zmiennymi.
Napiwek
Możesz poprosić Copilot o pomoc dotyczącą zmiennych. Aby dowiedzieć się więcej, zobacz Ask Copilot to generate a stage with a condition with a condition based on variable values.
Build.Clean
Jest to przestarzała zmienna, która modyfikuje sposób czyszczenia źródła przez agenta kompilacji. Aby dowiedzieć się, jak wyczyścić źródło, zobacz Czyszczenie repozytorium lokalnego na agencie.
System.AccessToken
System.AccessToken
to specjalna zmienna, która przenosi token zabezpieczający używany przez uruchomioną kompilację.
W języku YAML należy jawnie mapować System.AccessToken
potok przy użyciu zmiennej. Można to zrobić na poziomie kroku lub zadania. Na przykład można użyć System.AccessToken
do uwierzytelniania w rejestrze kontenerów.
steps:
- task: Docker@2
inputs:
command: login
containerRegistry: '<docker connection>'
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
Domyślny zakres można skonfigurować przy System.AccessToken
użyciu zakresu autoryzacji zadania kompilacji.
System.Debug
Aby uzyskać bardziej szczegółowe dzienniki w celu debugowania problemów z potokiem, zdefiniuj System.Debug
je i ustaw na true
wartość .
Edytuj potok.
Wybierz pozycję Zmienne.
Dodaj nową zmienną o nazwie
System.Debug
i wartościtrue
.Zapisz nową zmienną.
Ustawienie System.Debug
umożliwiające true
skonfigurowanie pełnych dzienników dla wszystkich przebiegów. Można również skonfigurować pełne dzienniki dla pojedynczego przebiegu przy użyciu pola wyboru Włącz diagnostykę systemu.
Można również ustawić System.Debug
true
jako zmienną w potoku lub szablonie.
variables:
system.debug: 'true'
Gdy System.Debug
jest ustawiona true
wartość , dla dodatkowej zmiennej o nazwie Agent.Diagnostic
ustawiono wartość true
. Gdy Agent.Diagnostic
wartość to true
, agent zbiera więcej dzienników, których można użyć do rozwiązywania problemów z siecią dla własnych agentów. Aby uzyskać więcej informacji, zobacz Diagnostyka sieci dla własnych agentów.
Uwaga
Zmienna Agent.Diagnostic
jest dostępna w wersji 2.200.0 i nowszej.
Aby uzyskać więcej informacji, zobacz Przeglądanie dzienników w celu diagnozowania problemów z potokiem.
Zmienne agenta (DevOps Services)
Uwaga
Zmienne agenta można używać jako zmiennych środowiskowych w skryptach i jako parametrów w zadaniach kompilacji. Nie można ich używać do dostosowywania numeru kompilacji ani stosowania etykiety lub tagu kontroli wersji.
Zmienna | opis |
---|---|
Agent.BuildDirectory | Ścieżka lokalna agenta, w którym są tworzone wszystkie foldery dla danego potoku kompilacji. Ta zmienna ma taką samą wartość jak Pipeline.Workspace . Na przykład: /home/vsts/work/1 . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Agent.ContainerMapping | Mapowanie nazw zasobów kontenera w języku YAML na ich identyfikatory platformy Docker w czasie wykonywania. Przykład jest następujący w tabeli. |
Agent.HomeDirectory | Katalog, w którym jest zainstalowany agent. Ta zmienna zawiera oprogramowanie agenta. Na przykład: c:\agent . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Agent.Id | Identyfikator agenta. |
Agent.JobName | Nazwa uruchomionego zadania. Ta nazwa jest zwykle Job ; lub __default , ale w scenariuszach obejmujących wiele konfiguracji jest to konfiguracja. |
Agent.JobStatus | Stan kompilacji.
AGENT_JOBSTATUS . Starsze agent.jobstatus są dostępne w celu zapewnienia zgodności z poprzednimi wersjami. |
Agent.MachineName | Nazwa maszyny, na której zainstalowano agenta. |
Agent.Name | Nazwa agenta zarejestrowanego w puli. Jeśli używasz własnego agenta, określ nazwę. Zobacz agentów. |
Agent.OS | System operacyjny hosta agenta. Prawidłowe wartości to:
|
Agent.OSArchitecture | Architektura procesora systemu operacyjnego hosta agenta. Prawidłowe wartości to:
|
Agent.TempDirectory | Folder tymczasowy, który jest czyszczony po każdym zadaniu potoku. Ten katalog jest używany przez zadania, takie jak zadanie interfejsu wiersza polecenia platformy .NET Core do przechowywania tymczasowych elementów, takich jak wyniki testów przed ich opublikowaniem. Na przykład: /home/vsts/work/_temp dla systemu Ubuntu. |
Agent.ToolsDirectory | Katalog używany przez zadania, takie jak Instalator narzędzi node i Używanie wersji języka Python do przełączania się między wieloma wersjami narzędzia. Te zadania dodają narzędzia z tego katalogu do programu , aby PATH kolejne kroki kompilacji mogły ich używać.Dowiedz się więcej o zarządzaniu tym katalogiem na własnym agencie. |
Agent.WorkFolder | Katalog roboczy dla tego agenta. Na przykład: c:\agent_work .Uwaga: ten katalog nie ma gwarancji, że można zapisywać według zadań potoku (na przykład w przypadku mapowania na kontener). Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Przykład elementu Agent.ContainerMapping:
{
"one_container": {
"id": "bdbb357d73a0bd3550a1a5b778b62a4c88ed2051c7802a0659f1ff6e76910190"
},
"another_container": {
"id": "82652975109ec494876a8ccbb875459c945982952e0a72ad74c91216707162bb"
}
}
Zmienne kompilacji (DevOps Services)
Jeśli używasz zmiennej w szablonie, który nie jest oznaczony jako dostępny w szablonach, zmienna nie jest renderowana. Zmienna nie jest renderowana, ponieważ jej wartość nie jest dostępna w zakresie szablonu.
Zmienna | opis | Dostępne w szablonach? |
---|---|---|
Build.ArtifactStagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a .Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BuildId | Identyfikator rekordu dla ukończonej kompilacji. | Nie. |
Build.BuildNumber | Nazwa ukończonej kompilacji, znana również jako numer uruchomienia. Możesz określić , co znajduje się w tej wartości. Typowym zastosowaniem tej zmiennej jest uczynienie jej częścią formatu etykiety określonego na karcie repozytorium. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BuildUri | Identyfikator URI kompilacji. Na przykład: vstfs:///Build/Build/1430 .Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BinariesDirectory | Ścieżka lokalna agenta, którego można użyć jako folderu wyjściowego dla skompilowanych plików binarnych. W przypadku własnych agentów nowe potoki kompilacji nie są skonfigurowane do domyślnego czyszczenia tego katalogu. Możesz zdefiniować kompilację, aby wyczyścić ją na karcie Repozytorium. Na przykład: c:\agent_work\1\b . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.ContainerId | Identyfikator kontenera dla artefaktu. Po przekazaniu artefaktu w potoku jest dodawany do kontenera specyficznego dla tego konkretnego artefaktu. | Nie. |
Build.CronSchedule.DisplayName | Harmonogram displayName cron, który wyzwolił uruchomienie potoku. Ta zmienna jest ustawiana tylko wtedy, gdy zaplanowany wyzwalacz YAML wyzwala uruchomienie potoku. Aby uzyskać więcej informacji, zobacz schedules.cron definition - Build.CronSchedule.DisplayName variable |
Tak |
Build.DefinitionName | Nazwa potoku kompilacji. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.DefinitionVersion | Wersja potoku kompilacji. | Tak |
Build.QueuedBy | Zobacz Jak są ustawiane zmienne tożsamości?. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.QueuedById | Zobacz Jak są ustawiane zmienne tożsamości?. | Tak |
Build.Reason | Zdarzenie, które spowodowało uruchomienie kompilacji.
|
Tak |
Build.Repository.Clean | Wartość wybrana dla Clean w ustawieniach repozytorium źródłowego . Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.LocalPath | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s .W przypadku własnych agentów nowe potoki kompilacji aktualizują tylko zmienione pliki domyślnie. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ważna uwaga: jeśli wyewidencjonujesz tylko jedno repozytorium Git, ta ścieżka jest dokładną ścieżką do kodu. Jeśli wyewidencjonujesz wiele repozytoriów, zachowanie jest następujące (i może się różnić od wartości zmiennej Build.SourcesDirectory):
|
Nie. |
Build.Repository.ID | Unikatowy identyfikator repozytorium. Ta wartość nie zmienia się, nawet jeśli nazwa repozytorium nie zostanie zmieniona. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Name | Nazwa repozytorium wyzwalającego. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Provider | Typ repozytorium wyzwalającego.
|
Nie. |
Build.Repository.Tfvc.Workspace | Zdefiniowano, jeśli repozytorium jest Kontrola wersji serwera Team Foundation. Nazwa obszaru roboczego tfVC używanego przez agenta kompilacji. Jeśli na przykład element Agent.BuildDirectory to c:\agent_work\12 , a Agent.Id to 8 , może to być nazwa obszaru roboczego: ws_12_8 Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Uri | Adres URL repozytorium wyzwalającego. Na przykład: Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.RequestedFor | Zobacz Jak są ustawiane zmienne tożsamości?. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.RequestedForEmail | Zobacz Jak są ustawiane zmienne tożsamości?. | Tak |
Build.RequestedForId | Zobacz Jak są ustawiane zmienne tożsamości?. | Tak |
Build.SourceBranch | Gałąź wyzwalającego repozytorium, dla którego została utworzona kompilacja, została utworzona w kolejce. Kilka przykładów:
/ ) są zastępowane znakami podkreślenia (_ ).Uwaga: W programie TFVC, jeśli uruchamiasz kompilację zaewidencjonowania bramkowego lub ręcznie kompilujesz zestaw półek, nie możesz użyć tej zmiennej w formacie numeru kompilacji. |
Tak |
Build.SourceBranchName | Nazwa gałęzi w repozytorium wyzwalającym, dla którego została utworzona kompilacja, została w kolejce.
|
Tak |
Build.SourcesDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s .W przypadku własnych agentów nowe potoki kompilacji aktualizują tylko zmienione pliki. Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. Ważna uwaga: jeśli wyewidencjonujesz tylko jedno repozytorium Git, ta ścieżka jest dokładną ścieżką do kodu. Jeśli wyewidencjonujesz wiele repozytoriów, zostanie przywrócona jego wartość domyślna, czyli $(Pipeline.Workspace)/s , nawet jeśli repozytorium samodzielne (podstawowe) zostanie wyewidencjonowane do niestandardowej ścieżki innej niż domyślna ścieżka $(Pipeline.Workspace)/s/<RepoName> wielokrotnego wyewidencjonowania (w tym względzie zmienna różni się od zachowania zmiennej Build.Repository.LocalPath).Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.SourceVersion | Najnowsza zmiana kontroli wersji repozytorium wyzwalającego uwzględnionego w tej kompilacji.
|
Tak |
Build.SourceVersionMessage | Komentarz zatwierdzenia lub zestawu zmian dla repozytorium wyzwalającego. Obcinamy komunikat do pierwszego wiersza lub 200 znaków, w zależności od tego, co jest krótsze. Odpowiada Build.SourceVersionMessage komunikatowi w Build.SourceVersion zatwierdzeniu. Zatwierdzenie Build.SourceVersion kompilacji żądania ściągnięcia to zatwierdzenie scalania (a nie zatwierdzenie w gałęzi źródłowej).Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Ponadto ta zmienna jest dostępna tylko na poziomie kroku i nie jest dostępna na poziomach zadania lub etapu. Oznacza to, że komunikat nie jest wyodrębniany do momentu uruchomienia zadania i wyewidencjonowania kodu. Uwaga: zmienna Build.SourceVersionMessage nie działa z klasycznymi potokami kompilacji w repozytoriach Bitbucket, gdy zmiany w usłudze Batch, gdy kompilacja jest w toku jest włączona. |
Nie. |
Build.StagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Git.SubmoduleCheckout | Wartość wybrana dla modułów podrzędnych wyewidencjonowania na karcie repozytorium . Po wyewidencjonowaniu wielu repozytoriów ta wartość śledzi ustawienie wyzwalającego repozytorium. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.SourceTfvcShelveset | Zdefiniowano, jeśli repozytorium jest Kontrola wersji serwera Team Foundation. Jeśli korzystasz z bramowanej kompilacji lub kompilacji zestawu półek, ta zmienna jest ustawiona na nazwę zestawu na półce , tworzysz. Uwaga: ta zmienna zwraca nieprawidłową wartość do użycia w kompilacji w formacie numeru kompilacji. |
Nie. |
Build.TriggeredBy.BuildId | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na wartość BuildID kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.DefinitionId | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na Wartość DefinitionID kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.DefinitionName | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na nazwę potoku kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.BuildNumber | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na liczbę kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.ProjectID | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na identyfikator projektu zawierającego kompilację wyzwalającą. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Common.TestResultsDirectory | Ścieżka lokalna agenta, w którym są tworzone wyniki testu. Na przykład: c:\agent_work\1\TestResults . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Zmienne potoku
Zmienna | opis |
---|---|
Pipeline.Workspace | Katalog obszaru roboczego dla określonego potoku. Ta zmienna ma taką samą wartość jak Agent.BuildDirectory . Na przykład /home/vsts/work/1 . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Napiwek
Jeśli używasz klasycznych potoków wydania, możesz użyć klasycznych wydań i zmiennych artefaktów do przechowywania i uzyskiwania dostępu do danych w całym potoku.
Zmienne zadania wdrożenia
Te zmienne są ograniczone do określonego zadania wdrożenia i są rozpoznawane tylko w czasie wykonywania zadania.
Zmienna | opis |
---|---|
Environment.Name | Nazwa środowiska docelowego w zadaniu wdrażania, aby uruchomić kroki wdrażania i zarejestrować historię wdrożenia. Na przykład smarthotel-dev . |
Environment.Id | Identyfikator środowiska docelowego w zadaniu wdrażania. Na przykład 10 . |
Environment.ResourceName | Nazwa określonego zasobu w środowisku docelowym w zadaniu wdrażania, aby uruchomić kroki wdrażania i zarejestrować historię wdrożenia. Na przykład bookings to przestrzeń nazw Kubernetes dodawana jako zasób do środowiska smarthotel-dev . |
Environment.ResourceId | Identyfikator określonego zasobu w środowisku docelowym w zadaniu wdrażania, aby uruchomić kroki wdrażania. Na przykład 4 . |
Strategy.Name | Nazwa strategii wdrażania: canary , runOnce lub rolling . |
Strategy.CycleName | Bieżąca nazwa cyklu we wdrożeniu. Opcje to PreIteration , Iteration lub PostIteration . |
Zmienne systemowe
Jeśli używasz zmiennej w szablonie, który nie jest oznaczony jako dostępny w szablonach, zmienna nie jest renderowana. Zmienna nie jest renderowana, ponieważ jej wartość nie jest dostępna w zakresie szablonu.
Zmienna | opis | Dostępne w szablonach? |
---|---|---|
System.AccessToken |
Użyj tokenu OAuth, aby uzyskać dostęp do interfejsu API REST. Użyj elementu System.AccessToken ze skryptów YAML. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.CollectionId | Identyfikator GUID organizacji lub kolekcji usługi Azure DevOps. | Tak |
System.CollectionUri | Identyfikator URI organizacji lub kolekcji usługi Azure DevOps. Na przykład: https://dev.azure.com/fabrikamfiber/ . |
Tak |
System.DefaultWorkingDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.W przypadku własnych agentów nowe potoki kompilacji aktualizują tylko zmienione pliki domyślnie. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.DefinitionId | Identyfikator potoku kompilacji. | Tak |
System.HostType | Ustaw wartość na build , jeśli potok jest kompilacją. W przypadku wydania wartości są przeznaczone deployment dla zadania grupy wdrożenia, gates podczas oceny bram i release dla innych zadań (agenta i bez agenta). |
Tak |
System.JobAttempt | Ustaw wartość 1 przy pierwszej próbie wykonania tego zadania i zwiększa się za każdym razem, gdy zadanie jest ponawiane. | Nie. |
System.JobDisplayName | Czytelna dla człowieka nazwa nadana pracy. | Nie. |
System.JobId | Unikatowy identyfikator pojedynczej próby pojedynczego zadania. Wartość jest unikatowa dla bieżącego potoku. | Nie. |
System.JobName | Nazwa zadania, zwykle używana do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.OidcRequestUri | Wygeneruj element idToken na potrzeby uwierzytelniania przy użyciu identyfikatora Entra przy użyciu protokołu OpenID Connect (OIDC).
Dowiedz się więcej. |
Tak |
System.PhaseAttempt | Ustaw wartość 1 przy pierwszej próbie wykonania tej fazy i zwiększa się za każdym razem, gdy zadanie jest ponawiane. Uwaga: "Faza" jest głównie nadmiarową koncepcją, która reprezentuje czas projektowania zadania (natomiast zadanie było wersją środowiska uruchomieniowego fazy). Koncepcja fazy jest głównie usuwana z usługi Azure Pipelines. Zadania macierzy i wielokonfiguracji są jedynym miejscem, w którym faza jest nadal różna od zadania. Jedna faza może utworzyć wystąpienie wielu zadań, które różnią się tylko swoimi danymi wejściowymi. |
Nie. |
System.PhaseDisplayName | Nazwa czytelna dla człowieka nadana fazie. | Nie. |
System.PhaseName | Identyfikator oparty na ciągach dla zadania, zwykle używany do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.PlanId | Identyfikator oparty na ciągu dla pojedynczego przebiegu potoku. | Nie. |
System.PullRequest.IsFork | Jeśli żądanie ściągnięcia pochodzi z rozwidlenia repozytorium, ta zmienna ma wartość True .W przeciwnym razie ustawiono wartość False . |
Tak |
System.PullRequest.PullRequestId | Identyfikator żądania ściągnięcia, który spowodował tę kompilację. Na przykład: 17 . (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). |
Nie. |
System.PullRequest.PullRequestNumber | Liczba żądań ściągnięcia, które spowodowało tę kompilację. Ta zmienna jest wypełniana dla żądań ściągnięcia z usługi GitHub, które mają inny identyfikator żądania ściągnięcia i numer żądania ściągnięcia. Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. | Nie. |
System.PullRequest.targetBranchName | Nazwa gałęzi docelowej dla żądania ściągnięcia. Ta zmienna może służyć w potoku do warunkowego wykonywania zadań lub kroków na podstawie gałęzi docelowej żądania ściągnięcia. Na przykład możesz chcieć wyzwolić inny zestaw testów lub narzędzi do analizy kodu w zależności od gałęzi, w której zmiany są scalane. | Nie. |
System.PullRequest.SourceBranch | Gałąź, która jest przeglądana w żądaniu ściągnięcia. Na przykład: refs/heads/users/raisa/new-feature dla usługi Azure Repos. (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. |
Nie. |
System.PullRequest.SourceCommitId | Zatwierdzenie, które jest przeglądane w żądaniu ściągnięcia. (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. | |
System.PullRequest.SourceRepositoryURI | Adres URL repozytorium, który zawiera żądanie ściągnięcia. Na przykład: https://dev.azure.com/ouraccount/_git/OurProject . |
Nie. |
System.PullRequest.TargetBranch | Gałąź, która jest elementem docelowym żądania ściągnięcia. Na przykład: refs/heads/main gdy repozytorium znajduje się w usłudze Azure Repos i main gdy repozytorium znajduje się w usłudze GitHub. Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powodu żądania ściągnięcia usługi Git objętego zasadami gałęzi. Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. |
Nie. |
System.StageAttempt | Ustaw wartość 1 przy pierwszej próbie tego etapu i zwiększa się za każdym razem, gdy etap zostanie ponowiony. | Nie. |
System.StageDisplayName | Czytelna dla człowieka nazwa nadana etapowi. | Nie. |
System.StageName | Identyfikator oparty na ciągach dla etapu, zwykle używany do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.TeamFoundationCollectionUri | Identyfikator URI organizacji lub kolekcji usługi Azure DevOps. Na przykład: https://dev.azure.com/fabrikamfiber/ .Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.TeamProject | Nazwa projektu, który zawiera tę kompilację. | Tak |
System.TeamProjectId | Identyfikator projektu, do którego należy ta kompilacja. | Tak |
System.TimelineId | Identyfikator oparty na ciągu dla szczegółów wykonywania i dzienników pojedynczego przebiegu potoku. | Nie. |
TF_BUILD | Ustaw wartość na True , jeśli zadanie kompilacji uruchamia skrypt.Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Sprawdza zmienne (DevOps Services)
Zmienna | opis |
---|---|
Checks.StageAttempt | Ustaw wartość 1 przy pierwszej próbie tego etapu i zwiększa się za każdym razem, gdy etap zostanie ponowiony. Tej zmiennej można używać tylko w ramach zatwierdzenia lub sprawdzania środowiska. Na przykład można użyć $(Checks.StageAttempt) w ramach sprawdzania wywołania interfejsu API REST. |
Zmienne agenta (DevOps Server 2022)
Uwaga
Zmienne agenta można używać jako zmiennych środowiskowych w skryptach i jako parametrów w zadaniach kompilacji. Nie można ich używać do dostosowywania numeru kompilacji ani stosowania etykiety lub tagu kontroli wersji.
Zmienna | opis |
---|---|
Agent.BuildDirectory | Ścieżka lokalna agenta, w którym są tworzone wszystkie foldery dla danego potoku kompilacji. Ta zmienna ma taką samą wartość jak Pipeline.Workspace . Na przykład: /home/vsts/work/1 . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Agent.ContainerMapping | Mapowanie nazw zasobów kontenera w języku YAML na ich identyfikatory platformy Docker w czasie wykonywania. Przykład jest następujący w tabeli. |
Agent.HomeDirectory | Katalog, w którym agent jest instalowany i zawiera oprogramowanie agenta. Na przykład: c:\agent . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Agent.Id | Identyfikator agenta. |
Agent.JobName | Nazwa uruchomionego zadania. Nazwa jest zwykle Job lub __default , ale w scenariuszach obejmujących wiele konfiguracji jest to konfiguracja. |
Agent.JobStatus | Stan kompilacji.
AGENT_JOBSTATUS . Starsze agent.jobstatus są dostępne w celu zapewnienia zgodności z poprzednimi wersjami. |
Agent.MachineName | Nazwa maszyny, na której zainstalowano agenta. |
Agent.Name | Nazwa agenta zarejestrowanego w puli. Jeśli używasz własnego agenta, ta wartość to określona nazwa. Zobacz agentów. |
Agent.OS | System operacyjny hosta agenta. Prawidłowe wartości to:
|
Agent.OSArchitecture | Architektura procesora systemu operacyjnego hosta agenta. Prawidłowe wartości to:
|
Agent.TempDirectory | Folder tymczasowy, który jest czyszczony po każdym zadaniu potoku. Ten katalog jest używany przez zadania, takie jak zadanie interfejsu wiersza polecenia platformy .NET Core do przechowywania tymczasowych elementów, takich jak wyniki testów przed ich opublikowaniem. Na przykład: /home/vsts/work/_temp dla systemu Ubuntu. |
Agent.ToolsDirectory | Katalog używany przez zadania, takie jak Instalator narzędzi node i Używanie wersji języka Python do przełączania się między wieloma wersjami narzędzia. Te zadania dodają narzędzia z tego katalogu do programu , aby PATH kolejne kroki kompilacji mogły ich używać.Dowiedz się więcej o zarządzaniu tym katalogiem na własnym agencie. |
Agent.WorkFolder | Katalog roboczy dla tego agenta. Na przykład: c:\agent_work .Uwaga: ten katalog nie ma gwarancji, że można zapisywać według zadań potoku (na przykład w przypadku mapowania na kontener). Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Przykład elementu Agent.ContainerMapping:
{
"one_container": {
"id": "bdbb357d73a0bd3550a1a5b778b62a4c88ed2051c7802a0659f1ff6e76910190"
},
"another_container": {
"id": "82652975109ec494876a8ccbb875459c945982952e0a72ad74c91216707162bb"
}
}
Zmienne kompilacji (DevOps Server 2022)
Jeśli używasz zmiennej w szablonie, który nie jest oznaczony jako dostępny w szablonach, zmienna nie jest renderowana. Zmienna nie jest renderowana, ponieważ jej wartość nie jest dostępna w zakresie szablonu.
Zmienna | opis | Dostępne w szablonach? |
---|---|---|
Build.ArtifactStagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BuildId | Identyfikator rekordu dla ukończonej kompilacji. | Nie. |
Build.BuildNumber | Nazwa ukończonej kompilacji, znana również jako numer uruchomienia. Możesz określić , co znajduje się w tej wartości. Typowym zastosowaniem tej zmiennej jest uczynienie jej częścią formatu etykiety określonego na karcie repozytorium. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BuildUri | Identyfikator URI kompilacji. Na przykład: vstfs:///Build/Build/1430 . Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BinariesDirectory | Ścieżka lokalna agenta, którego można użyć jako folderu wyjściowego dla skompilowanych plików binarnych. Na przykład: c:\agent_work\1\b . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Domyślnie nowe potoki kompilacji nie są skonfigurowane do czyszczenia tego katalogu. Możesz zdefiniować kompilację, aby wyczyścić ją na karcie Repozytorium. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.ContainerId | Identyfikator kontenera dla artefaktu. Po przekazaniu artefaktu w potoku jest dodawany do kontenera specyficznego dla tego konkretnego artefaktu. | Nie. |
Build.CronSchedule.DisplayName | Harmonogram displayName cron, który wyzwolił uruchomienie potoku. Ta zmienna jest ustawiana tylko wtedy, gdy zaplanowany wyzwalacz YAML wyzwala uruchomienie potoku. Aby uzyskać więcej informacji, zobacz schedules.cron definition - Build.CronSchedule.DisplayName variable. Ta zmienna jest dostępna w usłudze Azure DevOps Server 2022.1 i nowszych wersjach. |
Tak |
Build.DefinitionName | Nazwa potoku kompilacji. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.DefinitionVersion | Wersja potoku kompilacji. | Tak |
Build.QueuedBy | Zobacz Jak są ustawiane zmienne tożsamości?. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.QueuedById | Zobacz Jak są ustawiane zmienne tożsamości?. | Tak |
Build.Reason | Zdarzenie, które spowodowało uruchomienie kompilacji.
|
Tak |
Build.Repository.Clean | Wartość wybrana dla Clean w ustawieniach repozytorium źródłowego . Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.LocalPath | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s . Domyślnie nowe potoki kompilacji aktualizują tylko zmienione pliki. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ważna uwaga: jeśli wyewidencjonujesz tylko jedno repozytorium Git, ta ścieżka jest dokładną ścieżką do kodu. Jeśli wyewidencjonujesz wiele repozytoriów, zachowanie jest następujące (i może się różnić od wartości zmiennej Build.SourcesDirectory):
|
Nie. |
Build.Repository.ID | Unikatowy identyfikator repozytorium. Ta wartość nie zmienia się, nawet jeśli nazwa repozytorium nie zostanie zmieniona. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Name | Nazwa repozytorium wyzwalającego. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Provider | Typ repozytorium wyzwalającego.
|
Nie. |
Build.Repository.Tfvc.Workspace | Zdefiniowano, jeśli repozytorium jest Kontrola wersji serwera Team Foundation. Nazwa obszaru roboczego tfVC używanego przez agenta kompilacji. Jeśli na przykład parametr Agent.BuildDirectory to c:\agent_work\12 , a Agent.Id to 8 , nazwą obszaru roboczego może być: ws_12_8 .Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Uri | Adres URL repozytorium wyzwalającego. Na przykład:Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. | Nie. |
Build.RequestedFor | Zobacz "Jak są ustawione zmienne tożsamości?". Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.RequestedForEmail | Zobacz "Jak są ustawione zmienne tożsamości?". | Tak |
Build.RequestedForId | Zobacz "Jak są ustawione zmienne tożsamości?". | Tak |
Build.SourceBranch | Gałąź wyzwalającego repozytorium, dla którego została utworzona kompilacja, została utworzona w kolejce. Kilka przykładów:
/ ) są zastępowane znakami _ podkreślenia ).Uwaga: W programie TFVC, jeśli uruchamiasz kompilację zaewidencjonowania bramkowego lub ręcznie kompilujesz zestaw półek, nie możesz użyć tej zmiennej w formacie numeru kompilacji. |
Tak |
Build.SourceBranchName | Nazwa gałęzi w repozytorium wyzwalającym, dla którego została utworzona kompilacja, została w kolejce.
|
Tak |
Build.SourcesDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Domyślnie nowe potoki kompilacji aktualizują tylko zmienione pliki. Ważna uwaga: jeśli wyewidencjonujesz tylko jedno repozytorium Git, ta ścieżka jest dokładną ścieżką do kodu. Jeśli wyewidencjonujesz wiele repozytoriów, zostanie przywrócona jego wartość domyślna, czyli $(Pipeline.Workspace)/s , nawet jeśli repozytorium samodzielne (podstawowe) zostanie wyewidencjonowane do niestandardowej ścieżki innej niż domyślna ścieżka $(Pipeline.Workspace)/s/<RepoName> wielokrotnego wyewidencjonowania (w tym względzie zmienna różni się od zachowania zmiennej Build.Repository.LocalPath).Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.SourceVersion | Najnowsza zmiana kontroli wersji repozytorium wyzwalającego uwzględnionego w tej kompilacji.
|
Tak |
Build.SourceVersionMessage | Komentarz zatwierdzenia lub zestawu zmian dla repozytorium wyzwalającego. Obcinamy komunikat do pierwszego wiersza lub 200 znaków, w zależności od tego, co jest krótsze. Odpowiada Build.SourceVersionMessage komunikatowi w Build.SourceVersion zatwierdzeniu. Zatwierdzenie Build.SourceVersion kompilacji żądania ściągnięcia to zatwierdzenie scalania (a nie zatwierdzenie w gałęzi źródłowej). Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Ponadto ta zmienna jest dostępna tylko na poziomie kroku. Nie jest on dostępny na poziomach zadania lub etapu. Oznacza to, że komunikat nie jest wyodrębniany do momentu uruchomienia zadania i wyewidencjonowania kodu. >Uwaga: zmienna Build.SourceVersionMessage nie działa z klasycznymi potokami kompilacji w repozytoriach Bitbucket, gdy zmiany usługi Batch, gdy kompilacja jest w toku, jest włączona. |
Nie. |
Build.StagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Git.SubmoduleCheckout | Wartość wybrana dla modułów podrzędnych wyewidencjonowania na karcie repozytorium . Po wyewidencjonowaniu wielu repozytoriów ta wartość śledzi ustawienie wyzwalającego repozytorium. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.SourceTfvcShelveset | Zdefiniowano, jeśli repozytorium jest Kontrola wersji serwera Team Foundation. Jeśli korzystasz z bramowanej kompilacji lub kompilacji zestawu półek, ta zmienna jest ustawiona na nazwę zestawu na półce , tworzysz. Uwaga: ta zmienna zwraca nieprawidłową wartość do użycia w kompilacji w formacie numeru kompilacji. |
Nie. |
Build.TriggeredBy.BuildId | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na wartość BuildID kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.DefinitionId | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na Wartość DefinitionID kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.DefinitionName | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na nazwę potoku kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.BuildNumber | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na liczbę kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Build.TriggeredBy.ProjectID | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na identyfikator projektu zawierającego kompilację wyzwalającą. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Jeśli wyzwalasz potok YAML przy użyciu metody resources , należy zamiast tego użyć zmiennych zasobów. |
Nie. |
Common.TestResultsDirectory | Ścieżka lokalna agenta, w którym są tworzone wyniki testu. Na przykład: c:\agent_work\1\TestResults . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Zmienne potoku (DevOps Server 2022)
Zmienna | opis |
---|---|
Pipeline.Workspace | Katalog obszaru roboczego dla określonego potoku. Ta zmienna ma taką samą wartość jak Agent.BuildDirectory . Na przykład /home/vsts/work/1 . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Napiwek
Jeśli używasz klasycznych potoków wydania, możesz użyć klasycznych wydań i zmiennych artefaktów do przechowywania i uzyskiwania dostępu do danych w całym potoku.
Zmienne zadania wdrożenia (DevOps Server 2022)
Te zmienne są ograniczone do określonego zadania wdrożenia i są rozpoznawane tylko w czasie wykonywania zadania.
Zmienna | opis |
---|---|
Environment.Name | Nazwa środowiska docelowego w zadaniu wdrażania, aby uruchomić kroki wdrażania i zarejestrować historię wdrożenia. Na przykład smarthotel-dev . |
Environment.Id | Identyfikator środowiska docelowego w zadaniu wdrażania. Na przykład 10 . |
Environment.ResourceName | Nazwa określonego zasobu w środowisku docelowym w zadaniu wdrażania, aby uruchomić kroki wdrażania i zarejestrować historię wdrożenia. Na przykład bookings to przestrzeń nazw Kubernetes dodawana jako zasób do środowiska smarthotel-dev . |
Environment.ResourceId | Identyfikator określonego zasobu w środowisku docelowym w zadaniu wdrażania, aby uruchomić kroki wdrażania. Na przykład 4 . |
Strategy.Name | Nazwa strategii wdrażania: canary , runOnce lub rolling . |
Strategy.CycleName | Bieżąca nazwa cyklu we wdrożeniu. Opcje to PreIteration , Iteration lub PostIteration . |
Zmienne systemowe (DevOps Server 2022)
Jeśli używasz zmiennej w szablonie, który nie jest oznaczony jako dostępny w szablonach, zmienna nie jest renderowana. Zmienna nie jest renderowana, ponieważ jej wartość nie jest dostępna w zakresie szablonu.
Zmienna | opis | Dostępne w szablonach? |
---|---|---|
System.AccessToken |
Użyj tokenu OAuth, aby uzyskać dostęp do interfejsu API REST. Użyj elementu System.AccessToken ze skryptów YAML. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.CollectionId | Identyfikator GUID organizacji lub kolekcji usługi Azure DevOps. | Tak |
System.CollectionUri | Identyfikator URI organizacji lub kolekcji usługi Azure DevOps. Na przykład: https://dev.azure.com/fabrikamfiber/ . |
Tak |
System.DefaultWorkingDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.W przypadku własnych agentów nowe potoki kompilacji aktualizują tylko zmienione pliki domyślnie. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.DefinitionId | Identyfikator potoku kompilacji. | Tak |
System.HostType | Ustaw wartość na build , jeśli potok jest kompilacją. W przypadku wydania wartości są przeznaczone deployment dla zadania grupy wdrożenia, gates podczas oceny bram i release dla innych zadań (agenta i bez agenta). |
Tak |
System.JobAttempt | Ustaw wartość 1 przy pierwszej próbie wykonania tego zadania i zwiększa się za każdym razem, gdy zadanie jest ponawiane. | Nie. |
System.JobDisplayName | Czytelna dla człowieka nazwa nadana pracy. | Nie. |
System.JobId | Unikatowy identyfikator pojedynczej próby pojedynczego zadania. Wartość jest unikatowa dla bieżącego potoku. | Nie. |
System.JobName | Nazwa zadania, zwykle używana do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.PhaseAttempt | Ustaw wartość 1 przy pierwszej próbie wykonania tej fazy i zwiększa się za każdym razem, gdy zadanie jest ponawiane. Uwaga: faza jest głównie nadmiarową koncepcją, która reprezentuje czas projektowania zadania (podczas gdy zadanie było wersją środowiska uruchomieniowego fazy). Koncepcja fazy jest głównie usuwana z usługi Azure Pipelines. Zadania macierzy i wielokonfiguracji są jedynym miejscem, w którym faza jest nadal różna od zadania. Jedna faza może utworzyć wystąpienie wielu zadań, które różnią się tylko swoimi danymi wejściowymi. |
Nie. |
System.PhaseDisplayName | Nazwa czytelna dla człowieka nadana fazie. | Nie. |
System.PhaseName | Identyfikator oparty na ciągach dla zadania, zwykle używany do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.PlanId | Identyfikator oparty na ciągu dla pojedynczego przebiegu potoku. | Nie. |
System.PullRequest.IsFork | Jeśli żądanie ściągnięcia pochodzi z rozwidlenia repozytorium, ta zmienna ma wartość True . W przeciwnym razie ustawiono wartość False . |
Tak |
System.PullRequest.PullRequestId | Identyfikator żądania ściągnięcia, który spowodował tę kompilację. Na przykład: 17 . (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). |
Nie. |
System.PullRequest.PullRequestNumber | Liczba żądań ściągnięcia, które spowodowało tę kompilację. Ta zmienna jest wypełniana dla żądań ściągnięcia z usługi GitHub, które mają inny identyfikator żądania ściągnięcia i numer żądania ściągnięcia. Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. | Nie. |
System.PullRequest.targetBranchName | Nazwa gałęzi docelowej dla żądania ściągnięcia. Ta zmienna może służyć w potoku do warunkowego wykonywania zadań lub kroków na podstawie gałęzi docelowej żądania ściągnięcia. Na przykład możesz chcieć wyzwolić inny zestaw testów lub narzędzi do analizy kodu w zależności od gałęzi, w której zmiany są scalane. | Nie. |
System.PullRequest.SourceBranch | Gałąź, która jest przeglądana w żądaniu ściągnięcia. Na przykład: refs/heads/users/raisa/new-feature dla usługi Azure Repos. (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. |
Nie. |
System.PullRequest.SourceRepositoryURI | Adres URL repozytorium, który zawiera żądanie ściągnięcia. Na przykład: https://dev.azure.com/ouraccount/_git/OurProject . |
Nie. |
System.PullRequest.TargetBranch | Gałąź, która jest elementem docelowym żądania ściągnięcia. Na przykład: refs/heads/main gdy repozytorium znajduje się w usłudze Azure Repos i main gdy repozytorium znajduje się w usłudze GitHub. Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powodu żądania ściągnięcia usługi Git objętego zasadami gałęzi. Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. |
Nie. |
System.StageAttempt | Ustaw wartość 1 przy pierwszej próbie tego etapu i zwiększa się za każdym razem, gdy etap zostanie ponowiony. | Nie. |
System.StageDisplayName | Czytelna dla człowieka nazwa nadana etapowi. | Nie. |
System.StageName | Identyfikator oparty na ciągach dla etapu, zwykle używany do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.TeamFoundationCollectionUri | Identyfikator URI organizacji lub kolekcji usługi Azure DevOps. Na przykład: https://dev.azure.com/fabrikamfiber/ . Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.TeamProject | Nazwa projektu, który zawiera tę kompilację. | Tak |
System.TeamProjectId | Identyfikator projektu, do którego należy ta kompilacja. | Tak |
System.TimelineId | Identyfikator oparty na ciągu dla szczegółów wykonywania i dzienników pojedynczego przebiegu potoku. | Nie. |
TF_BUILD | Ustaw wartość na True , jeśli zadanie kompilacji uruchamia skrypt. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Sprawdza zmienne (DevOps Server 2022)
Zmienna | opis |
---|---|
Checks.StageAttempt | Ustaw wartość 1 przy pierwszej próbie tego etapu i zwiększa się za każdym razem, gdy etap zostanie ponowiony. Tej zmiennej można używać tylko w ramach zatwierdzenia lub sprawdzania środowiska. Na przykład można użyć $(Checks.StageAttempt) w ramach sprawdzania wywołania interfejsu API REST. |
Zmienne agenta (DevOps Server 2020)
Uwaga
Zmienne agenta można używać jako zmiennych środowiskowych w skryptach i jako parametrów w zadaniach kompilacji. Nie można ich używać do dostosowywania numeru kompilacji ani stosowania etykiety lub tagu kontroli wersji.
Zmienna | opis |
---|---|
Agent.BuildDirectory | Ścieżka lokalna agenta, w którym są tworzone wszystkie foldery dla danego potoku kompilacji. Ta zmienna ma taką samą wartość jak Pipeline.Workspace . Na przykład: /home/vsts/work/1 . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Agent.HomeDirectory | Katalog, w którym agent jest instalowany i zawiera oprogramowanie agenta. Na przykład: c:\agent . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Agent.Id | Identyfikator agenta. |
Agent.JobName | Nazwa uruchomionego zadania. Nazwa jest zwykle Job lub _default , ale w scenariuszach obejmujących wiele konfiguracji jest konfiguracją. |
Agent.JobStatus | Stan kompilacji.
AGENT_JOBSTATUS . Starsze agent.jobstatus są dostępne w celu zapewnienia zgodności z poprzednimi wersjami. |
Agent.MachineName | Nazwa maszyny, na której zainstalowano agenta. |
Agent.Name | Nazwa agenta zarejestrowanego w puli. Jeśli używasz własnego agenta, ta nazwa zostanie ustawiona przez Ciebie. Zobacz agentów. |
Agent.OS | System operacyjny hosta agenta. Prawidłowe wartości to:
|
Agent.OSArchitecture | Architektura procesora systemu operacyjnego hosta agenta. Prawidłowe wartości to:
|
Agent.TempDirectory | Folder tymczasowy, który jest czyszczony po każdym zadaniu potoku. Ten katalog jest używany przez zadania, takie jak zadanie interfejsu wiersza polecenia platformy .NET Core do przechowywania tymczasowych elementów, takich jak wyniki testów przed ich opublikowaniem. Na przykład: /home/vsts/work/_temp dla systemu Ubuntu. |
Agent.ToolsDirectory | Katalog używany przez zadania, takie jak Instalator narzędzi node i Używanie wersji języka Python do przełączania się między wieloma wersjami narzędzia. Te zadania dodają narzędzia z tego katalogu do programu , aby PATH kolejne kroki kompilacji mogły ich używać. Dowiedz się więcej o zarządzaniu tym katalogiem na własnym agencie. |
Agent.WorkFolder | Katalog roboczy dla tego agenta. Na przykład: c:\agent_work . Uwaga: ten katalog nie ma gwarancji, że można zapisywać według zadań potoku (na przykład w przypadku mapowania na kontener). Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Zmienne kompilacji (DevOps Server 2020)
Jeśli używasz zmiennej w szablonie, który nie jest oznaczony jako dostępny w szablonach. Zmienna nie jest renderowana, ponieważ jej wartość nie jest dostępna w zakresie szablonu.
Zmienna | opis | Dostępne w szablonach? |
---|---|---|
Build.ArtifactStagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BuildId | Identyfikator rekordu dla ukończonej kompilacji. | Nie. |
Build.BuildNumber | Nazwa ukończonej kompilacji, znana również jako numer uruchomienia. Możesz określić , co znajduje się w tej wartości. Typowym zastosowaniem tej zmiennej jest uczynienie jej częścią formatu etykiety określonego na karcie repozytorium. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BuildUri | Identyfikator URI kompilacji. Na przykład: vstfs:///Build/Build/1430 . Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.BinariesDirectory | Ścieżka lokalna agenta, którego można użyć jako folderu wyjściowego dla skompilowanych plików binarnych. Na przykład: c:\agent_work\1\b . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Domyślnie nowe potoki kompilacji nie są skonfigurowane do czyszczenia tego katalogu. Możesz zdefiniować kompilację, aby wyczyścić ją na karcie Repozytorium. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.ContainerId | Identyfikator kontenera dla artefaktu. Po przekazaniu artefaktu w potoku jest dodawany do kontenera specyficznego dla tego konkretnego artefaktu. | Nie. |
Build.DefinitionName | Nazwa potoku kompilacji. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.DefinitionVersion | Wersja potoku kompilacji. | Tak |
Build.QueuedBy | Zobacz Jak są ustawiane zmienne tożsamości?. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.QueuedById | Zobacz Jak są ustawiane zmienne tożsamości?. | Tak |
Build.Reason | Zdarzenie, które spowodowało uruchomienie kompilacji.
|
Tak |
Build.Repository.Clean | Wartość wybrana dla Clean w ustawieniach repozytorium źródłowego . Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.LocalPath | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s . Domyślnie nowe potoki kompilacji aktualizują tylko zmienione pliki. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ważna uwaga: jeśli wyewidencjonujesz tylko jedno repozytorium Git, ta ścieżka jest dokładną ścieżką do kodu. Jeśli wyewidencjonujesz wiele repozytoriów, zachowanie jest następujące (i może się różnić od wartości zmiennej Build.SourcesDirectory):
|
Nie. |
Build.Repository.ID | Unikatowy identyfikator repozytorium. Wartość nie zmienia się, nawet jeśli nazwa repozytorium nie zostanie zmieniona. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Name | Nazwa repozytorium wyzwalającego. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Provider | Typ repozytorium wyzwalającego.
|
Nie. |
Build.Repository.Tfvc.Workspace | Zdefiniowano, jeśli repozytorium jest Kontrola wersji serwera Team Foundation. Nazwa obszaru roboczego tfVC używanego przez agenta kompilacji. Jeśli na przykład parametr Agent.BuildDirectory to c:\agent_work\12 , a Agent.Id to 8 , nazwą obszaru roboczego może być: ws_12_8 . Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Uri | Adres URL repozytorium wyzwalającego. Na przykład: Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.RequestedFor | Zobacz Jak są ustawiane zmienne tożsamości?. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Tak |
Build.RequestedForEmail | Zobacz Jak są ustawiane zmienne tożsamości?. | Tak |
Build.RequestedForId | Zobacz Jak są ustawiane zmienne tożsamości?. | Tak |
Build.SourceBranch | Gałąź wyzwalającego repozytorium, dla którego została utworzona kompilacja, została utworzona w kolejce. Kilka przykładów:
/ ) są zastępowane znakami _ podkreślenia ). Uwaga: W programie TFVC, jeśli uruchamiasz kompilację zaewidencjonowania bramkowego lub ręcznie kompilujesz zestaw półek, nie możesz użyć tej zmiennej w formacie numeru kompilacji. |
Tak |
Build.SourceBranchName | Nazwa gałęzi w repozytorium wyzwalającym, dla którego została utworzona kompilacja, została w kolejce.
|
Tak |
Build.SourcesDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Domyślnie nowe potoki kompilacji aktualizują tylko zmienione pliki. Ważna uwaga: jeśli wyewidencjonujesz tylko jedno repozytorium Git, ta ścieżka jest dokładną ścieżką do kodu. Jeśli wyewidencjonujesz wiele repozytoriów, zostanie przywrócona jego wartość domyślna, czyli $(Pipeline.Workspace)/s , nawet jeśli repozytorium samodzielne (podstawowe) zostanie wyewidencjonowane do niestandardowej ścieżki innej niż domyślna ścieżka $(Pipeline.Workspace)/s/<RepoName> wielokrotnego wyewidencjonowania (w tym względzie zmienna różni się od zachowania zmiennej Build.Repository.LocalPath). Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.SourceVersion | Najnowsza zmiana kontroli wersji repozytorium wyzwalającego uwzględnionego w tej kompilacji.
|
Tak |
Build.SourceVersionMessage | Komentarz zatwierdzenia lub zestawu zmian dla repozytorium wyzwalającego. Obcinamy komunikat do pierwszego wiersza lub 200 znaków, w zależności od tego, co jest krótsze. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. Ponadto ta zmienna jest dostępna tylko na poziomie kroku. Nie jest on dostępny na poziomach zadania lub etapu. Oznacza to, że komunikat nie jest wyodrębniany do momentu uruchomienia zadania i wyewidencjonowania kodu. Uwaga: zmienna Build.SourceVersionMessage nie działa z klasycznymi potokami kompilacji w repozytoriach Bitbucket, gdy zmiany w usłudze Batch, gdy kompilacja jest w toku jest włączona. |
Nie. |
Build.StagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a . Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.Repository.Git.SubmoduleCheckout | Wartość wybrana dla modułów podrzędnych wyewidencjonowania na karcie repozytorium . Po wyewidencjonowaniu wielu repozytoriów ta wartość śledzi ustawienie wyzwalającego repozytorium. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.SourceTfvcShelveset | Zdefiniowano, jeśli repozytorium to Team Foundation Version Control (TFVC). Jeśli korzystasz z bramowanej kompilacji lub kompilacji zestawu półek, ta zmienna jest ustawiona na nazwę zestawu na półce , tworzysz. Uwaga: ta zmienna zwraca nieprawidłową wartość do użycia w kompilacji w formacie numeru kompilacji. |
Nie. |
Build.TriggeredBy.BuildId | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na wartość BuildID kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.TriggeredBy.DefinitionId | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na Wartość DefinitionID kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.TriggeredBy.DefinitionName | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na nazwę potoku kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.TriggeredBy.BuildNumber | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na liczbę kompilacji wyzwalającej. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Build.TriggeredBy.ProjectID | Jeśli kolejne wyzwalacze kompilacji kompilacji, ta zmienna jest ustawiona na identyfikator projektu zawierającego kompilację wyzwalającą. W potokach klasycznych wyzwalacz uzupełniania kompilacji wyzwala tę zmienną. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Common.TestResultsDirectory | Ścieżka lokalna agenta, w którym są tworzone wyniki testu. Na przykład: c:\agent_work\1\TestResults . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Zmienne potoku (DevOps Server 2020)
Zmienna | opis |
---|---|
Pipeline.Workspace | Katalog obszaru roboczego dla określonego potoku. Ta zmienna ma taką samą wartość jak Agent.BuildDirectory . Na przykład /home/vsts/work/1 . Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta. |
Zmienne zadania wdrożenia (DevOps Server 2020)
Te zmienne są ograniczone do określonego zadania wdrożenia i są rozpoznawane tylko w czasie wykonywania zadania.
Zmienna | opis |
---|---|
Environment.Name | Nazwa środowiska docelowego w zadaniu wdrażania, aby uruchomić kroki wdrażania i zarejestrować historię wdrożenia. Na przykład smarthotel-dev . |
Environment.Id | Identyfikator środowiska docelowego w zadaniu wdrażania. Na przykład 10 . |
Environment.ResourceName | Nazwa określonego zasobu w środowisku docelowym w zadaniu wdrażania, aby uruchomić kroki wdrażania i zarejestrować historię wdrożenia. Na przykład bookings to przestrzeń nazw Kubernetes dodawana jako zasób do środowiska smarthotel-dev . |
Environment.ResourceId | Identyfikator określonego zasobu w środowisku docelowym w zadaniu wdrażania, aby uruchomić kroki wdrażania. Na przykład 4 . |
Zmienne systemowe (DevOps Server 2020)
Jeśli używasz zmiennej w szablonie, który nie jest oznaczony jako dostępny w szablonach. Zmienna nie jest renderowana, ponieważ jej wartość nie jest dostępna w zakresie szablonu.
Zmienna | opis | Dostępne w szablonach? |
---|---|---|
System.AccessToken |
Użyj tokenu OAuth, aby uzyskać dostęp do interfejsu API REST. Użyj elementu System.AccessToken ze skryptów YAML. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.CollectionId | Identyfikator GUID kolekcji TFS lub organizacji usługi Azure DevOps | Tak |
System.CollectionUri | Identyfikator URI kolekcji serwera Team Foundation Server. | Tak |
System.DefaultWorkingDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.W przypadku własnych agentów nowe potoki kompilacji aktualizują tylko zmienione pliki domyślnie. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
System.DefinitionId | Identyfikator potoku kompilacji. | Tak |
System.HostType | Ustaw wartość na build , jeśli potok jest kompilacją. W przypadku wydania wartości są przeznaczone deployment dla zadania grupy wdrożenia, gates podczas oceny bram i release dla innych zadań (agenta i bez agenta). |
Tak |
System.JobAttempt | Ustaw wartość 1 przy pierwszej próbie wykonania tego zadania i zwiększa się za każdym razem, gdy zadanie jest ponawiane. | Nie. |
System.JobDisplayName | Czytelna dla człowieka nazwa nadana pracy. | Nie. |
System.JobId | Unikatowy identyfikator pojedynczej próby pojedynczego zadania. Wartość jest unikatowa dla bieżącego potoku. | Nie. |
System.JobName | Nazwa zadania, zwykle używana do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.PhaseAttempt | Ustaw wartość 1 przy pierwszej próbie wykonania tej fazy i zwiększa się za każdym razem, gdy zadanie jest ponawiane. Uwaga: faza jest głównie nadmiarową koncepcją, która reprezentuje czas projektowania zadania (podczas gdy zadanie było wersją środowiska uruchomieniowego fazy). Koncepcja fazy jest głównie usuwana z usługi Azure Pipelines. Zadania macierzy i wielokonfiguracji są jedynym miejscem, w którym faza jest nadal różna od zadania. Jedna faza może utworzyć wystąpienie wielu zadań, które różnią się tylko swoimi danymi wejściowymi. |
Nie. |
System.PhaseDisplayName | Nazwa czytelna dla człowieka nadana fazie. | Nie. |
System.PhaseName | Identyfikator oparty na ciągach dla zadania, zwykle używany do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Nie. |
System.StageAttempt | Ustaw wartość 1 przy pierwszej próbie wykonania tego etapu i zwiększa się za każdym razem, gdy zadanie jest ponawiane. | Nie. |
System.StageDisplayName | Czytelna dla człowieka nazwa nadana etapowi. | Nie. |
System.StageName | Identyfikator oparty na ciągach dla etapu, zwykle używany do wyrażania zależności i uzyskiwania dostępu do zmiennych wyjściowych. | Tak |
System.PullRequest.IsFork | Jeśli żądanie ściągnięcia pochodzi z rozwidlenia repozytorium, ta zmienna ma wartość True . W przeciwnym razie jego wartość to False . |
Tak |
System.PullRequest.PullRequestId | Identyfikator żądania ściągnięcia, który spowodował tę kompilację. Na przykład: 17 . (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). |
Nie. |
System.PullRequest.PullRequestNumber | Liczba żądań ściągnięcia, które spowodowało tę kompilację. Ta zmienna jest wypełniana dla żądań ściągnięcia z usługi GitHub, które mają inny identyfikator żądania ściągnięcia i numer żądania ściągnięcia. Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. | Nie. |
System.PullRequest.targetBranchName | Nazwa gałęzi docelowej dla żądania ściągnięcia. Ta zmienna może służyć w potoku do warunkowego wykonywania zadań lub kroków na podstawie gałęzi docelowej żądania ściągnięcia. Na przykład możesz chcieć wyzwolić inny zestaw testów lub narzędzi do analizy kodu w zależności od gałęzi, w której zmiany są scalane. | Nie. |
System.PullRequest.SourceBranch | Gałąź, która jest przeglądana w żądaniu ściągnięcia. Na przykład: refs/heads/users/raisa/new-feature . (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. |
Nie. |
System.PullRequest.SourceCommitId | Zatwierdzenie, które jest przeglądane w żądaniu ściągnięcia. (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. | |
System.PullRequest.SourceRepositoryURI | Adres URL repozytorium, który zawiera żądanie ściągnięcia. Na przykład: https://dev.azure.com/ouraccount/_git/OurProject . |
Nie. |
System.PullRequest.TargetBranch | Gałąź, która jest elementem docelowym żądania ściągnięcia. Na przykład: refs/heads/main gdy repozytorium znajduje się w usłudze Azure Repos i main gdy repozytorium znajduje się w usłudze GitHub. Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powodu żądania ściągnięcia usługi Git objętego zasadami gałęzi. Ta zmienna jest dostępna tylko w potoku YAML, jeśli zasady gałęzi wpływają na żądanie ściągnięcia. |
Nie. |
System.TeamFoundationCollectionUri | Identyfikator URI kolekcji team foundation. Na przykład: https://dev.azure.com/fabrikamfiber/ . Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Tak |
System.TeamProject | Nazwa projektu, który zawiera tę kompilację. | Tak |
System.TeamProjectId | Identyfikator projektu, do którego należy ta kompilacja. | Tak |
TF_BUILD | Ustaw wartość na True , jeśli zadanie kompilacji uruchamia skrypt. Ta zmienna jest w zakresie agenta i może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
Nie. |
Zmienne agenta (DevOps Server 2019)
Uwaga
Zmienne agenta można używać jako zmiennych środowiskowych w skryptach i jako parametrów w zadaniach kompilacji. Nie można ich użyć do dostosowania numeru kompilacji lub zastosowania etykiety lub tagu kontroli wersji.
Zmienna | opis |
---|---|
Agent.BuildDirectory | Ścieżka lokalna agenta, w którym są tworzone wszystkie foldery dla danego potoku kompilacji. Na przykład: c:\agent_work\1 . |
Agent.HomeDirectory | Katalog, w którym jest zainstalowany agent. Zawiera oprogramowanie agenta. Na przykład: c:\agent . |
Agent.Id | Identyfikator agenta. |
Agent.JobName | Nazwa uruchomionego zadania. Zwykle będzie to "Zadanie" lub "__default", ale w scenariuszach obejmujących wiele konfiguracji będzie konfiguracją. |
Agent.JobStatus | Stan kompilacji.
AGENT_JOBSTATUS . Starsze agent.jobstatus są dostępne w celu zapewnienia zgodności z poprzednimi wersjami. |
Agent.MachineName | Nazwa maszyny, na której zainstalowano agenta. |
Agent.Name | Nazwa agenta zarejestrowanego w puli. Jeśli używasz własnego agenta, ta nazwa zostanie ustawiona przez Ciebie. Zobacz agentów. |
Agent.OS | System operacyjny hosta agenta. Prawidłowe wartości to:
|
Agent.OSArchitecture | Architektura procesora systemu operacyjnego hosta agenta. Prawidłowe wartości to:
|
Agent.TempDirectory | Folder tymczasowy, który jest czyszczony po każdym zadaniu potoku. Ten katalog jest używany przez zadania, takie jak zadanie interfejsu wiersza polecenia platformy .NET Core do przechowywania tymczasowych elementów, takich jak wyniki testów przed ich opublikowaniem. |
Agent.ToolsDirectory | Katalog używany przez zadania, takie jak Instalator narzędzi node i Używanie wersji języka Python do przełączania się między wieloma wersjami narzędzia. Te zadania dodają narzędzia z tego katalogu do programu , aby PATH kolejne kroki kompilacji mogły ich używać. Dowiedz się więcej o zarządzaniu tym katalogiem na własnym agencie. |
Agent.WorkFolder | Katalog roboczy dla tego agenta. Na przykład: c:\agent_work . Ten katalog nie ma gwarancji, że można zapisywać według zadań potoku (na przykład w przypadku mapowania na kontener). |
Zmienne kompilacji (DevOps Server 2019)
Zmienna | opis |
---|---|
Build.ArtifactStagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a . Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.BuildId | Identyfikator rekordu dla ukończonej kompilacji. |
Build.BuildNumber | Nazwa ukończonej kompilacji. Możesz określić format numeru kompilacji, który generuje tę wartość w opcjach potoku. Typowym zastosowaniem tej zmiennej jest uczynienie jej częścią formatu etykiety określonego na karcie repozytorium. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.BuildUri | Identyfikator URI kompilacji. Na przykład: vstfs:///Build/Build/1430 . Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.BinariesDirectory | Ścieżka lokalna agenta, którego można użyć jako folderu wyjściowego dla skompilowanych plików binarnych. Domyślnie nowe potoki kompilacji nie są skonfigurowane do czyszczenia tego katalogu. Możesz zdefiniować kompilację, aby wyczyścić ją na karcie Repozytorium. Na przykład: c:\agent_work\1\b . Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.DefinitionName | Nazwa potoku kompilacji. Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety zakończy się niepowodzeniem. |
Build.DefinitionVersion | Wersja potoku kompilacji. |
Build.QueuedBy | Zobacz "Jak są ustawione zmienne tożsamości?". Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Build.QueuedById | Zobacz "Jak są ustawione zmienne tożsamości?". |
Build.Reason | Zdarzenie, które spowodowało uruchomienie kompilacji.
|
Build.Repository.Clean | Wartość wybrana dla opcji Wyczyść w ustawieniach repozytorium źródłowego. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.Repository.LocalPath | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s .Domyślnie nowe potoki kompilacji aktualizują tylko zmienione pliki. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. Ta zmienna jest synonimem Build.SourcesDirectory. |
Build.Repository.Name | Nazwa repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.Repository.Provider | Wybrany typ repozytorium.
|
Build.Repository.Tfvc.Workspace | Zdefiniowano, jeśli repozytorium jest Kontrola wersji serwera Team Foundation. Nazwa obszaru roboczego tfVC używanego przez agenta kompilacji. Jeśli na przykład parametr Agent.BuildDirectory to c:\agent_work\12 , a Agent.Id to 8 , nazwą obszaru roboczego może być: ws_12_8 . Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.Repository.Uri | Adres URL repozytorium. Na przykład: Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.RequestedFor | Zobacz "Jak są ustawione zmienne tożsamości?". Uwaga: ta wartość może zawierać białe znaki lub inne nieprawidłowe znaki etykiety. W takich przypadkach format etykiety kończy się niepowodzeniem. |
Build.RequestedForEmail | Zobacz "Jak są ustawione zmienne tożsamości?". |
Build.RequestedForId | Zobacz "Jak są ustawione zmienne tożsamości?". |
Build.SourceBranch | Gałąź, dla którego została utworzona kompilacja, została utworzona w kolejce. Kilka przykładów:
/ ) są zastępowane znakami podkreślenia (_ ). Uwaga: W programie TFVC, jeśli uruchamiasz kompilację zaewidencjonowania bramkowego lub ręcznie kompilujesz zestaw półek, nie możesz użyć tej zmiennej w formacie numeru kompilacji. |
Build.SourceBranchName | Nazwa gałęzi, dla którego została utworzona kompilacja, została utworzona w kolejce.
|
Build.SourcesDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s .Domyślnie nowe potoki kompilacji aktualizują tylko zmienione pliki. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. Ta zmienna jest synonimem Build.Repository.LocalPath. |
Build.SourceVersion | Najnowsza zmiana kontroli wersji uwzględniona w tej kompilacji.
|
Build.SourceVersionMessage | Komentarz zatwierdzenia lub zestawu zmian. Obcinamy komunikat do pierwszego wiersza lub 200 znaków, w zależności od tego, co jest krótsze. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. Uwaga: ta zmienna jest dostępna w programie TFS 2015.4. Uwaga: zmienna Build.SourceVersionMessage nie działa z klasycznymi potokami kompilacji w repozytoriach Bitbucket, gdy usługa Batch zmienia się, gdy kompilacja jest w toku . |
Build.StagingDirectory | Ścieżka lokalna agenta, do którego są kopiowane wszystkie artefakty przed wypchnięciem do ich miejsca docelowego. Na przykład: c:\agent_work\1\a . Typowym sposobem użycia tego folderu jest opublikowanie artefaktów kompilacji za pomocą zadań Kopiowanie plików i Publikowanie artefaktów kompilacji . Uwaga: Element Build.ArtifactStagingDirectory i Build.StagingDirectory są zamienne. Ten katalog jest czyszczony przed każdą nową kompilacją, więc nie trzeba go czyścić samodzielnie. Zobacz Artefakty w usłudze Azure Pipelines. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.Repository.Git.SubmoduleCheckout | Wartość wybrana dla modułów podrzędnych Wyewidencjonuj na karcie repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.SourceTfvcShelveset | Zdefiniowano, jeśli repozytorium jest Kontrola wersji serwera Team Foundation. Jeśli korzystasz z ogrodzonych kompilacji lub kompilacji na półce, jest to ustawione na nazwę zestawu półek, który tworzysz. Uwaga: ta zmienna zwraca nieprawidłową wartość do użycia w kompilacji w formacie numeru kompilacji. |
Build.TriggeredBy.BuildId | Jeśli kompilacja została wyzwolona przez inną kompilację, ta zmienna jest ustawiona na wartość BuildID kompilacji wyzwalającej. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.TriggeredBy.DefinitionId | Jeśli kompilacja została wyzwolona przez inną kompilację, ta zmienna jest ustawiona na wartość DefinitionID kompilacji wyzwalającej. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.TriggeredBy.DefinitionName | Jeśli kompilacja została wyzwolona przez inną kompilację, ta zmienna jest ustawiona na nazwę potoku kompilacji wyzwalającej. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.TriggeredBy.BuildNumber | Jeśli kompilacja została wyzwolona przez inną kompilację, ta zmienna jest ustawiona na liczbę kompilacji wyzwalającej. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Build.TriggeredBy.ProjectID | Jeśli kompilacja została wyzwolona przez inną kompilację, ta zmienna jest ustawiona na identyfikator projektu zawierającego kompilację wyzwalającą. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Common.TestResultsDirectory | Ścieżka lokalna agenta, w którym są tworzone wyniki testu. Na przykład: c:\agent_work\1\TestResults . Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Zmienne systemowe (DevOps Server 2019)
Przykładowy skrypt programu PowerShell: dostęp do interfejsu API REST
Zmienna | opis |
---|---|
System.AccessToken |
Użyj tokenu OAuth, aby uzyskać dostęp do interfejsu API REST. Użyj elementu System.AccessToken ze skryptów YAML. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
System.CollectionId | Identyfikator GUID kolekcji TFS lub organizacji usługi Azure DevOps |
System.DefaultWorkingDirectory | Ścieżka lokalna agenta, w którym są pobierane pliki kodu źródłowego. Na przykład: c:\agent_work\1\s Aby uzyskać więcej informacji na temat struktury katalogów agentów, zobacz Struktura katalogów agenta.W przypadku własnych agentów nowe potoki kompilacji aktualizują tylko zmienione pliki domyślnie. Możesz zmodyfikować sposób pobierania plików na karcie Repozytorium. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji. Nie można jej używać jako części numeru kompilacji ani jako tagu kontroli wersji. |
System.DefinitionId | Identyfikator potoku kompilacji. |
System.HostType | Ustaw wartość na build , jeśli potok jest kompilacją. W przypadku wydania wartości są przeznaczone deployment dla zadania grupy wdrożenia i release zadania agenta. |
System.PullRequest.IsFork | Jeśli żądanie ściągnięcia pochodzi z rozwidlenia repozytorium, ta zmienna ma wartość True . W przeciwnym razie jest ustawiona wartość False . |
System.PullRequest.PullRequestId | Identyfikator żądania ściągnięcia, który spowodował tę kompilację. Na przykład: 17 . (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). |
System.PullRequest.PullRequestNumber | Liczba żądań ściągnięcia, które spowodowało tę kompilację. Ta zmienna jest wypełniana dla żądań ściągnięcia z usługi GitHub, które mają inny identyfikator żądania ściągnięcia i numer żądania ściągnięcia. |
System.PullRequest.SourceBranch | Gałąź, która jest przeglądana w żądaniu ściągnięcia. Na przykład: refs/heads/users/raisa/new-feature . (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). |
System.PullRequest.SourceCommitId | Zatwierdzenie, które jest przeglądane w żądaniu ściągnięcia. (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia usługi Git, którego dotyczy zasady gałęzi). |
System.PullRequest.SourceRepositoryURI | Adres URL repozytorium, który zawiera żądanie ściągnięcia. Na przykład: https://dev.azure.com/ouraccount/_git/OurProject . (Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powoduŻądanie ściągnięcia git usługi Azure Repos, którego dotyczy zasada gałęzi. Nie jest on inicjowany dla żądania ściągnięcia w usłudze GitHub. |
System.PullRequest.TargetBranch | Gałąź, która jest elementem docelowym żądania ściągnięcia. Na przykład: refs/heads/main . Ta zmienna jest inicjowana tylko wtedy, gdy kompilacja została uruchomiona z powodu żądania ściągnięcia usługi Git objętego zasadami gałęzi. |
System.TeamFoundationCollectionUri | Identyfikator URI kolekcji team foundation. Na przykład: https://dev.azure.com/fabrikamfiber/ . Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
System.TeamProject | Nazwa projektu, który zawiera tę kompilację. |
System.TeamProjectId | Identyfikator projektu, do którego należy ta kompilacja. |
TF_BUILD | Ustaw wartość na True , jeśli skrypt jest uruchamiany przez zadanie kompilacji. Ta zmienna jest ograniczona do zakresu agenta. Może być używana jako zmienna środowiskowa w skry skrycie i jako parametr w zadaniu kompilacji, ale nie jako część numeru kompilacji lub jako tag kontroli wersji. |
Jak ustawiane są zmienne tożsamości?
Wartość zależy od przyczyn kompilacji i są specyficzne dla repozytoriów usługi Azure Repos.
Jeśli kompilacja zostanie wyzwolona... | Następnie wartości Build.QueuedBy i Build.QueuedById są oparte na... | Następnie wartości Build.RequestedFor i Build.RequestedForId są oparte na... |
---|---|---|
W usłudze Git lub przez wyzwalacze ciągłej integracji | Tożsamość systemu, na przykład: [DefaultCollection]\Project Collection Service Accounts |
Osoba, która wypchnęła lub zaewidencjonowała zmiany. |
W usłudze Git lub w kompilacji zasad gałęzi. | Tożsamość systemu, na przykład: [DefaultCollection]\Project Collection Service Accounts |
Osoba, która zaewidencjonował zmiany. |
Na serwerze TFVC przez wyzwalacz zaewidencjonowany | Osoba, która zaewidencjonował zmiany. | Osoba, która zaewidencjonował zmiany. |
W usłudze Git lub tfVC według zaplanowanych wyzwalaczy | Tożsamość systemu, na przykład: [DefaultCollection]\Project Collection Service Accounts |
Tożsamość systemu, na przykład: [DefaultCollection]\Project Collection Service Accounts |
Ponieważ kliknięliśmy przycisk Kompilacja kolejki | Ty | Ty |
Poproś copilota o wygenerowanie etapu z warunkiem na podstawie wartości zmiennych
Użyj copilot, aby wygenerować etap z warunkiem określonym przez wartość zmiennej.
Ten przykładowy monit definiuje etap, który jest uruchamiany, gdy Agent.JobStatus
wskazuje, że poprzedni etap został uruchomiony pomyślnie:
Utwórz nowy etap usługi Azure DevOps uruchamiany tylko wtedy, gdy
Agent.JobStatus
jestSucceeded
lubSucceededWithIssues
.
Możesz dostosować monit, aby użyć wartości spełniających wymagania. Możesz na przykład poprosić o pomoc w utworzeniu etapu, który jest uruchamiany tylko w przypadku awarii potoku.
Uwaga
Narzędzie GitHub Copilot jest obsługiwane przez sztuczną inteligencję, więc możliwe są niespodzianki i błędy. Upewnij się, że zweryfikowano wygenerowany kod lub sugestie. Aby uzyskać więcej informacji na temat ogólnego użycia narzędzia GitHub Copilot, wpływu produktu, nadzoru ludzkiego i prywatności, zobacz GitHub Copilot — często zadawane pytania.