Menggunakan variabel yang telah ditentukan sebelumnya

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

Catatan

Di Microsoft Team Foundation Server (TFS) 2018 dan versi sebelumnya, alur build dan rilis disebut definisi, eksekusi disebut build, koneksi layanan disebut titik akhir layanan, tahapan disebut lingkungan, dan pekerjaan disebut fase.

Variabel memberi Anda cara yang mudah untuk mendapatkan bit kunci data ke berbagai bagian alur. Ini adalah daftar variabel yang telah ditentukan sebelumnya yang tersedia untuk Anda gunakan. Mungkin ada beberapa variabel lain yang telah ditentukan sebelumnya, tetapi sebagian besar untuk penggunaan internal.

Variabel ini secara otomatis diatur oleh sistem dan baca-saja. (Pengecualiannya adalah Build.Clean dan System.Debug.)

Dalam alur YAML, Anda dapat mereferensikan variabel yang telah ditentukan sebelumnya sebagai variabel lingkungan. Misalnya, variabel Build.ArtifactStagingDirectory menjadi variabel BUILD_ARTIFACTSTAGINGDIRECTORY.

Untuk alur klasik, Anda dapat menggunakan variabel rilis dalam tugas penyebaran untuk berbagi informasi umum (misalnya — Nama Lingkungan, Grup Sumber Daya, dll).

Pelajari selengkapnya tentang bekerja dengan variabel.

Build.Clean

Ini adalah variabel yang tidak digunakan lagi yang memodifikasi cara agen build membersihkan sumber. Untuk mempelajari cara membersihkan sumber, lihat Membersihkan repositori lokal pada agen.

System.AccessToken

System.AccessToken adalah variabel khusus yang membawa token keamanan yang digunakan oleh build yang sedang berjalan.

Di YAML, Anda harus secara eksplisit memetakan System.AccessToken ke dalam alur menggunakan variabel. Anda dapat melakukan ini di tingkat langkah atau tugas:

steps:
  - bash: echo This script could use $SYSTEM_ACCESSTOKEN
    env:
      SYSTEM_ACCESSTOKEN: $(System.AccessToken)
  - powershell: | 
      Write-Host "This is a script that could use $env:SYSTEM_ACCESSTOKEN"
      Write-Host "$env:SYSTEM_ACCESSTOKEN = $(System.AccessToken)"
    env:
      SYSTEM_ACCESSTOKEN: $(System.AccessToken)

Anda dapat mengonfigurasi cakupan default untuk System.AccessToken menggunakan cakupan otorisasi pekerjaan build.

System.Debug

Untuk log yang lebih rinci untuk men-debug masalah alur, tentukan System.Debug dan atur ke true.

  1. Edit alur Anda.

  2. Pilih Variabel.

  3. Tambahkan variabel baru dengan nama System.Debug dan nilai true.

    Set System Debug to true

  4. Simpan variabel baru.

Variabel agen (Layanan DevOps)

Catatan

Anda dapat menggunakan variabel agen sebagai variabel lingkungan dalam skrip Anda dan sebagai parameter dalam tugas build Anda. Anda tidak dapat menggunakannya untuk menyesuaikan nomor build atau menerapkan label atau tag kontrol versi.

VariabelDeskripsi
Agent.BuildDirectory

Jalur lokal pada agen tempat semua folder untuk alur build tertentu dibuat. Variabel ini memiliki nilai yang sama dengan Pipeline.Workspace.

Misalnya: /home/vsts/work/1

Agent.ContainerMapping

Pemetaan dari nama sumber daya kontainer di YAML ke ID Docker mereka saat runtime.

Misalnya:

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

Agent.HomeDirectory Direktori tempat agen diinstal. Ini berisi perangkat lunak agen. Misalnya: c:\agent.
Agent.Id ID agen.
Agent.JobName Nama pekerjaan yang sedang berjalan. Ini biasanya akan menjadi "Pekerjaan" atau "__default", tetapi dalam skenario multi-konfigurasi, akan menjadi konfigurasi.
Agent.JobStatus Status build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (sebagian berhasil)

Variabel lingkungan harus dirujuk sebagai AGENT_JOBSTATUS. Yang lebih agent.jobstatus lama tersedia untuk kompatibilitas mundur.

Agent.MachineName Nama komputer tempat agen diinstal.
Agent.Name

Nama agen yang terdaftar di kumpulan.

Jika Anda menggunakan agen yang dihost sendiri, maka nama ini ditentukan oleh Anda. Lihat agen.

Agent.OS Sistem operasi host agen. Nilai yang valid adalah:
  • Windows_NT
  • Darwin
  • Linux
Jika Anda menjalankan dalam kontainer, host agen dan kontainer mungkin menjalankan sistem operasi yang berbeda.
Agent.OSArchitecture Arsitektur prosesor sistem operasi host agen. Nilai yang valid adalah:
  • X86
  • X64
  • ARM
Agent.TempDirectory

Folder sementara yang dibersihkan setelah setiap pekerjaan alur. Direktori ini digunakan oleh tugas-tugas seperti tugas .NET Core CLI untuk menyimpan item sementara seperti hasil pengujian sebelum diterbitkan.

Misalnya: /home/vsts/work/_temp untuk Ubuntu

Agent.ToolsDirectory Direktori yang digunakan oleh tugas-tugas seperti Alat Penginstal Simpul dan Menggunakan Versi Python untuk beralih di antara beberapa versi alat. Tugas-tugas ini akan menambahkan alat dari direktori ini ke PATH sehingga langkah-langkah build berikutnya dapat menggunakannya.

Pelajari tentang mengelola direktori ini pada agen yang dihost sendiri.
Agent.WorkFolder Direktori kerja untuk agen ini. Misalnya: c:\agent_work.

Catatan: Direktori ini tidak dijamin dapat ditulis oleh tugas alur (misalnya saat dipetakan ke dalam kontainer)

Variabel build (Layanan DevOps)


VariabelDeskripsiTersedia dalam templat?
Build.ArtifactStagingDirectory

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.BuildId ID rekaman untuk build yang telah selesai. Tidak
Build.BuildNumber Nama build yang telah selesai, juga dikenal sebagai nomor eksekusi. Anda dapat menentukan apa yang disertakan dalam nilai ini.

Penggunaan umum variabel ini adalah menjadikannya bagian dari format label, yang Anda tentukan pada tab repositori.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.



Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.BuildUri URI untuk build. Misalnya: vstfs:///Build/Build/1430.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.BinariesDirectory Jalur lokal pada agen yang dapat Anda gunakan sebagai folder output untuk biner yang dikompilasi.

Secara default, alur build baru tidak disiapkan untuk membersihkan direktori ini. Anda dapat menentukan build Anda untuk membersihkannya pada tab Repositori.

Misalnya: c:\agent_work\1\b.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.ContainerId ID kontainer untuk artefak Anda. Saat Anda mengunggah artefak di alur Anda, artefak ditambahkan ke kontainer yang khusus untuk artefak tertentu. Tidak
Build.DefinitionName Nama alur build.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Ya
Build.DefinitionVersion Versi alur build. Ya
Build.QueuedBy Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Ya
Build.QueuedById Lihat "Bagaimana variabel identitas diatur?". Ya
Build.Reason Peristiwa yang menyebabkan build berjalan.
  • Manual: Pengguna mengantre build secara manual.
  • IndividualCI: Integrasi berkelanjutan (CI) yang dipicu oleh pendorongan Git atau check-in TFVC.
  • BatchedCI: Integrasi berkelanjutan (CI) yang dipicu oleh pendorongan Git atau check-in TFVC, dan perubahan Batch dipilih.
  • Schedule: Pemicu terjadwal .
  • ValidateShelveset: Pengguna secara manual mengantrekan build rak TFVC tertentu.
  • CheckInShelveset: Pemicu check-in yang terjaga .
  • PullRequest: Build dipicu oleh kebijakan cabang Git yang memerlukan build.
  • ResourceTrigger: Build dipicu oleh pemicu sumber daya atau dipicu oleh build lain.
Lihat Membangun pemicu alur, Meningkatkan kualitas kode dengan kebijakan cabang.
Ya
Build.Repository.Clean Nilai yang Anda pilih untuk Bersihkan di pengaturan repositori sumber.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.LocalPath

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh di tab Repositori.

Catatan penting: Jika Anda hanya memeriksa satu repositori Git, jalur ini akan menjadi jalur yang tepat ke kode. Jika Anda memeriksa beberapa repositori, perilakunya adalah sebagai berikut (dan mungkin berbeda dari nilai variabel Build.SourcesDirectory):

  • Jika langkah checkout untuk repositori mandiri (utama) tidak memiliki jalur checkout kustom yang ditentukan, atau jalur checkout adalah jalur $(Pipeline.Workspace)/s/<RepoName> default multi-checkout untuk repositori mandiri, nilai variabel ini akan kembali ke nilai defaultnya, yaitu $(Pipeline.Workspace)/s.
  • Jika langkah checkout untuk repositori mandiri (utama) memang memiliki jalur checkout kustom yang ditentukan (dan itu bukan jalur default multi-checkout-nya), variabel ini akan berisi jalur yang tepat ke repositori mandiri.
Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.ID Pengidentifikasi unik repositori.

Ini tidak akan berubah, meskipun nama repositori tidak berubah.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.Name Nama repositori pemicu.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.Provider Jenis repositori pemicu. Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Tidak
Build.Repository.Tfvc.Workspace Ditentukan jika repositori Anda adalah Kontrol Versi Team Foundation. Nama ruang kerja TFVC yang digunakan oleh agen build.


Misalnya, jika Agent.BuildDirectory adalah c:\agent_work\12 dan Agent.Id adalah 8, nama ruang kerja dapat berupa: ws_12_8

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.Uri URL untuk repositori pemicu. Contohnya: Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Tidak
Build.RequestedFor Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Ya
Build.RequestedForEmail Lihat "Bagaimana variabel identitas diatur?". Ya
Build.RequestedForId Lihat "Bagaimana variabel identitas diatur?". Ya
Build.SourceBranch Cabang repositori pemicu build diantrekan. Beberapa contoh:
  • Cabang repositori Git: refs/heads/master
  • Permintaan pull repositori Git: refs/pull/1/merge
  • Cabang repositori TFVC: $/teamproject/main
  • Check-in terjaga dengan terjaganya repo TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Build shelveset repositori TFVC: myshelveset;username@live.com
  • Saat alur Anda dipicu oleh tag: refs/tags/your-tag-name
Saat Anda menggunakan variabel ini dalam format nomor build Anda, karakter/ garis miring () diganti dengan karakter _garis bawah ).

Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Ya
Build.SourceBranchName Nama cabang dalam repositori pemicu build diantrekan.
  • Cabang repositori Git atau permintaan pull: Segmen jalur terakhir di ref. Misalnya, dalam refs/heads/master nilai ini adalah master. Dalam refs/heads/feature/tools nilai ini adalah tools.
  • Cabang repositori TFVC: Segmen jalur terakhir di jalur server akar untuk ruang kerja. Misalnya, dalam $/teamproject/main nilai ini adalah main.
  • TFVC repo gated check-in atau shelveset build adalah nama shelveset. Misalnya, Gated_2016-06-06_05.20.51.4369;username@live.com atau myshelveset;username@live.com.
Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Ya
Build.SourcesDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah.

Catatan penting: Jika Anda hanya memeriksa satu repositori Git, jalur ini akan menjadi jalur yang tepat ke kode. Jika Anda memeriksa beberapa repositori, repositori akan kembali ke nilai defaultnya, yaitu $(Pipeline.Workspace)/s, bahkan jika repositori mandiri (utama) diperiksa ke jalur kustom yang berbeda dari jalur $(Pipeline.Workspace)/s/<RepoName> default multi-checkout -nya (dalam hal ini, variabel berbeda dari perilaku variabel Build.Repository.LocalPath).

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.SourceVersion Perubahan kontrol versi terbaru dari repositori pemicu yang disertakan dalam build ini. Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Ya
Build.SourceVersionMessage Komentar penerapan atau set perubahan untuk repositori pemicu. Kami memotong pesan ke baris pertama atau 200 karakter, mana pun yang lebih pendek.

Build.SourceVersionMessage sesuai dengan pesan pada Build.SourceVersion penerapan. Penerapan Build.SourceVersion untuk build PR adalah penerapan penggabungan (bukan penerapan pada cabang sumber).

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Selain itu, variabel ini hanya tersedia pada tingkat langkah dan tidak tersedia dalam tingkat pekerjaan maupun tahapan (yaitu pesan tidak diekstraksi sampai pekerjaan telah dimulai dan memeriksa kode).

Catatan: Variabel ini tersedia di TFS 2015.4.

Tidak
Build.StagingDirectory

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.Repository.Git.SubmoduleCheckout Nilai yang Anda pilih untuk submodul Checkout pada tab repositori. Dengan beberapa repositori yang dicek keluar, nilai ini melacak pengaturan repositori pemicu.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.SourceTfvcShelveset Ditentukan jika repositori Anda adalah Kontrol Versi Team Foundation.


Jika Anda menjalankan build terjaga atau build rak, ini diatur ke nama shelveset yang Anda bangun.

Catatan: Variabel ini menghasilkan nilai yang tidak valid untuk penggunaan build dalam format angka build.
Tidak
Build.TriggeredBy.BuildId Jika build dipicu oleh build lain, maka variabel ini diatur ke BuildID dari build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Jika Anda memicu alur YAML menggunakan resources, Anda harus menggunakan variabel sumber daya sebagai gantinya.
Tidak
Build.TriggeredBy.DefinitionId Jika build dipicu oleh build lain, maka variabel ini diatur ke DefinitionID dari build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Jika Anda memicu alur YAML menggunakan resources, Anda harus menggunakan variabel sumber daya sebagai gantinya.
Tidak
Build.TriggeredBy.DefinitionName Jika build dipicu oleh build lain, maka variabel ini diatur ke nama alur build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Jika Anda memicu alur YAML menggunakan resources, Anda harus menggunakan variabel sumber daya sebagai gantinya.
Tidak
Build.TriggeredBy.BuildNumber Jika build dipicu oleh build lain, maka variabel ini diatur ke jumlah build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Jika Anda memicu alur YAML menggunakan resources, Anda harus menggunakan variabel sumber daya sebagai gantinya.
Tidak
Build.TriggeredBy.ProjectID Jika build dipicu oleh build lain, maka variabel ini diatur ke ID proyek yang berisi build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Jika Anda memicu alur YAML menggunakan resources, Anda harus menggunakan variabel sumber daya sebagai gantinya.
Tidak
Common.TestResultsDirectory Jalur lokal pada agen tempat hasil pengujian dibuat. Misalnya: c:\agent_work\1\TestResults

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak

Variabel alur (Layanan DevOps)

VariabelDeskripsi
Pipeline.Workspace Direktori ruang kerja untuk alur tertentu. Variabel ini memiliki nilai yang sama dengan Agent.BuildDirectory.

Contohnya:/home/vsts/work/1

Variabel pekerjaan penyebaran (Layanan DevOps)

Variabel ini dilingkup ke pekerjaan Penyebaran tertentu dan hanya akan diselesaikan pada waktu eksekusi pekerjaan.

VariabelDeskripsi
Environment.Name Nama lingkungan yang ditargetkan dalam pekerjaan penyebaran untuk menjalankan langkah-langkah penyebaran dan merekam riwayat penyebaran. Contohnya:smarthotel-dev
Environment.Id ID lingkungan yang ditargetkan dalam pekerjaan penyebaran. Contohnya:10
Environment.ResourceName Nama sumber daya tertentu dalam lingkungan yang ditargetkan dalam pekerjaan penyebaran untuk menjalankan langkah-langkah penyebaran dan merekam riwayat penyebaran. Misalnya, bookings yang merupakan namespace Layanan Kube yang telah ditambahkan sebagai sumber daya ke lingkungan smarthotel-dev.
Environment.ResourceId ID sumber daya tertentu dalam lingkungan yang ditargetkan dalam pekerjaan penyebaran untuk menjalankan langkah-langkah penyebaran. Contohnya:4
Strategy.Name Nama strategi penyebaran: canary, , runOnceatau rolling.
Strategy.CycleName Nama siklus saat ini dalam penyebaran. Opsinya adalah PreIteration, Iteration, atau PostIteration.

Variabel sistem (Layanan DevOps)

VariabelDeskripsiTersedia dalam templat?
System.AccessToken Gunakan token OAuth untuk mengakses REST API.

Gunakan System.AccessToken dari skrip YAML.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Ya
System.CollectionId GUID koleksi TFS atau organisasi Azure DevOps. Ya
System.CollectionUri URI koleksi TFS atau organisasi Azure DevOps. Misalnya: https://dev.azure.com/fabrikamfiber/. Ya
System.DefaultWorkingDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh di tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Ya
System.DefinitionId ID alur build. Ya
System.HostType Atur ke build jika alur adalah build. Untuk rilis, nilainya adalah deployment untuk pekerjaan grup Penyebaran, gates selama evaluasi gerbang, dan release untuk pekerjaan (Agen dan Tanpa Agen) lainnya. Ya
System.JobAttempt Atur ke 1 saat pertama kali pekerjaan ini dicoba, dan kenaikan setiap kali pekerjaan dicoba kembali. Tidak
System.JobDisplayName Nama yang dapat dibaca manusia diberikan untuk pekerjaan. Tidak
System.JobId Pengidentifikasi unik untuk satu upaya dari satu pekerjaan. Nilainya unik untuk alur saat ini. Tidak
System.JobName Nama pekerjaan, biasanya digunakan untuk mengekspresikan dependensi dan mengakses variabel output. Tidak
System.PhaseAttempt Atur ke 1 saat pertama kali fase ini dicoba, dan tahapan setiap kali pekerjaan dicoba kembali.

Catatan: "Fase" adalah konsep yang sebagian besar redundan yang mewakili waktu desain untuk pekerjaan (sedangkan pekerjaan adalah versi runtime suatu fase). Sebagian besar kami telah menghapus konsep "fase" dari Azure Pipelines. Pekerjaan matriks dan multi-konfigurasi adalah satu-satunya tempat di mana "fase" masih berbeda dari "pekerjaan". Satu fase dapat membuat instans beberapa pekerjaan yang hanya berbeda dalam inputnya.
Tidak
System.PhaseDisplayName Nama yang dapat dibaca manusia diberikan ke fase. Tidak
System.PhaseName Pengidentifikasi berbasis string untuk pekerjaan, biasanya digunakan untuk mengekspresikan dependensi dan mengakses variabel output. Tidak
System.StageAttempt Atur ke 1 saat pertama kali tahap ini dicoba, dan tahapan setiap kali pekerjaan dicoba kembali. Tidak
System.StageDisplayName Nama yang dapat dibaca manusia diberikan ke panggung. Tidak
System.StageName Pengidentifikasi berbasis string untuk tahap, biasanya digunakan untuk mengekspresikan dependensi dan mengakses variabel output. Ya
System.PullRequest.IsFork Jika permintaan pull berasal dari fork repositori, variabel ini diatur ke True. Jika tidak, diatur ke False. Ya
System.PullRequest.PullRequestId ID permintaan pull yang menyebabkan build ini. Misalnya: 17. (Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang). Tidak
System.PullRequest.PullRequestNumber Jumlah permintaan pull yang menyebabkan build ini. Variabel ini diisi untuk permintaan pull dari GitHub yang memiliki ID permintaan pull dan nomor permintaan pull yang berbeda. Variabel ini hanya tersedia dalam alur YAML jika PR terpengaruh oleh kebijakan cabang. Tidak
System.PullRequest.SourceBranch Cabang yang sedang ditinjau dalam permintaan pull. Misalnya: refs/heads/users/raisa/new-feature untuk Azure Repos. (Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang). Variabel ini hanya tersedia dalam alur YAML jika PR dipengaruhi oleh kebijakan cabang. Tidak
System.PullRequest.SourceRepositoryURI URL ke repositori yang berisi permintaan pull. Misalnya: https://dev.azure.com/ouraccount/_git/OurProject. Tidak
System.PullRequest.TargetBranch Cabang yang menjadi target permintaan pull. Misalnya: refs/heads/master saat repositori Anda berada di Azure Repos dan master saat repositori Anda berada di GitHub. Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang. Variabel ini hanya tersedia dalam alur YAML jika PR dipengaruhi oleh kebijakan cabang. Tidak
System.TeamFoundationCollectionUri URI koleksi TFS atau organisasi Azure DevOps. Misalnya: https://dev.azure.com/fabrikamfiber/.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Ya
System.TeamProject Nama proyek yang berisi build ini. Ya
System.TeamProjectId ID proyek tempat build ini berada. Ya
TF_BUILD Atur ke True jika skrip sedang dijalankan oleh tugas build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak

Memeriksa variabel (Layanan DevOps)

VariabelDeskripsi
Checks.StageAttempt Atur ke 1 saat pertama kali tahap ini dicoba, dan tahapan setiap kali tahap dicoba kembali.

Variabel ini hanya dapat digunakan dalam persetujuan atau memeriksa lingkungan. Misalnya, Anda dapat menggunakan $(Checks.StageAttempt) dalam pemeriksaan Panggil REST API.

Add the stage attempt as a parameter.

Variabel agen (DevOps Server 2020)

Catatan

Anda dapat menggunakan variabel agen sebagai variabel lingkungan dalam skrip Anda dan sebagai parameter dalam tugas build Anda. Anda tidak dapat menggunakannya untuk menyesuaikan nomor build atau menerapkan label atau tag kontrol versi.

VariabelDeskripsi
Agent.BuildDirectory

Jalur lokal pada agen tempat semua folder untuk alur build tertentu dibuat. Variabel ini memiliki nilai yang sama dengan Pipeline.Workspace.

Misalnya: /home/vsts/work/1

Agent.HomeDirectory Direktori tempat agen diinstal. Ini berisi perangkat lunak agen. Misalnya: c:\agent.
Agent.Id ID agen.
Agent.JobName Nama pekerjaan yang sedang berjalan. Ini biasanya akan menjadi "Pekerjaan" atau "__default", tetapi dalam skenario multi-konfigurasi, akan menjadi konfigurasi.
Agent.JobStatus Status build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (sebagian berhasil)

Variabel lingkungan harus dirujuk sebagai AGENT_JOBSTATUS. Yang lebih agent.jobstatus lama tersedia untuk kompatibilitas mundur.

Agent.MachineName Nama komputer tempat agen diinstal.
Agent.Name

Nama agen yang terdaftar di kumpulan.

Jika Anda menggunakan agen yang dihost sendiri, maka nama ini ditentukan oleh Anda. Lihat agen.

Agent.OS Sistem operasi host agen. Nilai yang valid adalah:
  • Windows_NT
  • Darwin
  • Linux
Jika Anda berjalan dalam kontainer, host agen dan kontainer mungkin menjalankan sistem operasi yang berbeda.
Agent.OSArchitecture Arsitektur prosesor sistem operasi host agen. Nilai yang valid adalah:
  • X86
  • X64
  • ARM
Agent.TempDirectory

Folder sementara yang dibersihkan setelah setiap pekerjaan alur. Direktori ini digunakan oleh tugas-tugas seperti tugas .NET Core CLI untuk menyimpan item sementara seperti hasil pengujian sebelum diterbitkan.

Misalnya: /home/vsts/work/_temp untuk Ubuntu

Agent.ToolsDirectory Direktori yang digunakan oleh tugas-tugas seperti Alat Penginstal Simpul dan Menggunakan Versi Python untuk beralih di antara beberapa versi alat. Tugas-tugas ini akan menambahkan alat dari direktori ini ke PATH sehingga langkah-langkah build berikutnya dapat menggunakannya.

Pelajari tentang mengelola direktori ini pada agen yang dihost sendiri.
Agent.WorkFolder Direktori kerja untuk agen ini. Misalnya: c:\agent_work.

Catatan: Direktori ini tidak dijamin dapat ditulis oleh tugas alur (misalnya saat dipetakan ke dalam kontainer)

Variabel build (DevOps Server 2020)


VariabelDeskripsiTersedia dalam templat?
Build.ArtifactStagingDirectory

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.BuildId ID rekaman untuk build yang telah selesai. Tidak
Build.BuildNumber Nama build yang telah selesai, juga dikenal sebagai nomor eksekusi. Anda dapat menentukan apa yang disertakan dalam nilai ini.

Penggunaan umum variabel ini adalah menjadikannya bagian dari format label, yang Anda tentukan pada tab repositori.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.



Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.BuildUri URI untuk build. Misalnya: vstfs:///Build/Build/1430.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.BinariesDirectory Jalur lokal pada agen yang dapat Anda gunakan sebagai folder output untuk biner yang dikompilasi.

Secara default, alur build baru tidak disiapkan untuk membersihkan direktori ini. Anda dapat menentukan build untuk membersihkannya pada tab Repositori.

Misalnya: c:\agent_work\1\b.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.ContainerId ID kontainer untuk artefak Anda. Saat Anda mengunggah artefak di alur Anda, artefak ditambahkan ke kontainer yang khusus untuk artefak tertentu. Tidak
Build.DefinitionName Nama alur build.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Ya
Build.DefinitionVersion Versi alur build. Ya
Build.QueuedBy Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Ya
Build.QueuedById Lihat "Bagaimana variabel identitas diatur?". Ya
Build.Reason Peristiwa yang menyebabkan build berjalan.
  • Manual: Pengguna mengantre build secara manual.
  • IndividualCI: Integrasi berkelanjutan (CI) yang dipicu oleh pendorongan Git atau check-in TFVC.
  • BatchedCI: Integrasi berkelanjutan (CI) yang dipicu oleh push Git atau check-in TFVC, dan perubahan Batch dipilih.
  • Schedule: Pemicu terjadwal .
  • ValidateShelveset: Pengguna secara manual mengantrekan build shelveset TFVC tertentu.
  • CheckInShelveset: Pemicu check-in yang terjaga .
  • PullRequest: Build dipicu oleh kebijakan cabang Git yang memerlukan build.
  • ResourceTrigger: Build dipicu oleh pemicu sumber daya atau dipicu oleh build lain.
Lihat Membangun pemicu alur, Meningkatkan kualitas kode dengan kebijakan cabang.
Ya
Build.Repository.Clean Nilai yang Anda pilih untuk Bersihkan di pengaturan repositori sumber.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.LocalPath

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh pada tab Repositori.

Catatan penting: Jika Anda hanya memeriksa satu repositori Git, jalur ini akan menjadi jalur yang tepat ke kode. Jika Anda memeriksa beberapa repositori, perilakunya adalah sebagai berikut (dan mungkin berbeda dari nilai variabel Build.SourcesDirectory):

  • Jika langkah checkout untuk repositori mandiri (utama) tidak memiliki jalur checkout kustom yang ditentukan, atau jalur checkout adalah jalur $(Pipeline.Workspace)/s/<RepoName> default multi-checkout untuk repositori mandiri, nilai variabel ini akan kembali ke nilai defaultnya, yaitu $(Pipeline.Workspace)/s.
  • Jika langkah checkout untuk repositori mandiri (utama) memang memiliki jalur checkout kustom yang ditentukan (dan bukan jalur default multi-checkout-nya), variabel ini akan berisi jalur yang tepat ke repositori mandiri.
Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.ID Pengidentifikasi unik repositori.

Ini tidak akan berubah, bahkan jika nama repositori tidak berubah.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.Name Nama repositori pemicu.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.Provider Jenis repositori pemicu. Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Tidak
Build.Repository.Tfvc.Workspace Ditentukan jika repositori Anda adalah Team Foundation Version Control. Nama ruang kerja TFVC yang digunakan oleh agen build.


Misalnya, jika Agent.BuildDirectory adalah c:\agent_work\12 dan Agent.Id adalah 8, nama ruang kerja dapat berupa: ws_12_8

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.Repository.Uri URL untuk repositori pemicu. Contohnya: Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Tidak
Build.RequestedFor Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Ya
Build.RequestedForEmail Lihat "Bagaimana variabel identitas diatur?". Ya
Build.RequestedForId Lihat "Bagaimana variabel identitas diatur?". Ya
Build.SourceBranch Cabang repositori pemicu build diantrekan. Beberapa contoh:
  • Cabang repositori Git: refs/heads/master
  • Permintaan pull repositori Git: refs/pull/1/merge
  • Cabang repositori TFVC: $/teamproject/main
  • Cek masuk terjaga yang dijaga repo TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Build shelveset repositori TFVC: myshelveset;username@live.com
  • Saat alur Anda dipicu oleh tag: refs/tags/your-tag-name
Saat Anda menggunakan variabel ini dalam format nomor build Anda, karakter/ garis miring () diganti dengan karakter _garis bawah ).

Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Ya
Build.SourceBranchName Nama cabang dalam repositori pemicu yang diantrekan build.
  • Cabang repositori Git atau permintaan pull: Segmen jalur terakhir di ref. Misalnya, dalam refs/heads/master nilai ini adalah master. Dalam refs/heads/feature/tools nilai ini adalah tools.
  • Cabang repositori TFVC: Segmen jalur terakhir di jalur server akar untuk ruang kerja. Misalnya, dalam $/teamproject/main nilai ini adalah main.
  • TFVC repo gated check-in atau shelveset build adalah nama shelveset. Misalnya, Gated_2016-06-06_05.20.51.4369;username@live.com atau myshelveset;username@live.com.
Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Ya
Build.SourcesDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah.

Catatan penting: Jika Anda hanya memeriksa satu repositori Git, jalur ini akan menjadi jalur yang tepat ke kode. Jika Anda memeriksa beberapa repositori, repositori akan kembali ke nilai defaultnya, yaitu $(Pipeline.Workspace)/s, bahkan jika repositori mandiri (utama) diperiksa ke jalur kustom yang berbeda dari jalur $(Pipeline.Workspace)/s/<RepoName> default multi-checkout-nya (dalam hal ini, variabel berbeda dari perilaku variabel Build.Repository.LocalPath).

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.SourceVersion Perubahan kontrol versi terbaru dari repositori pemicu yang disertakan dalam build ini. Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Ya
Build.SourceVersionMessage Komentar penerapan atau set perubahan untuk repositori pemicu. Kami memotong pesan ke baris pertama atau 200 karakter, mana pun yang lebih pendek.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi. Selain itu, variabel ini hanya tersedia pada tingkat langkah dan tidak tersedia dalam tingkat pekerjaan atau tahap (yaitu pesan tidak diekstraksi sampai pekerjaan telah dimulai dan memeriksa kode).

Catatan: Variabel ini tersedia di TFS 2015.4.

Tidak
Build.StagingDirectory

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
Build.Repository.Git.SubmoduleCheckout Nilai yang Anda pilih untuk Submodul Checkout pada tab repositori. Dengan beberapa repositori yang dicek keluar, nilai ini melacak pengaturan repositori pemicu.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.SourceTfvcShelveset Ditentukan jika repositori Anda adalah Team Foundation Version Control.


Jika Anda menjalankan build terjaga atau build shelveset, ini diatur ke nama shelveset yang Anda bangun.

Catatan: Variabel ini menghasilkan nilai yang tidak valid untuk penggunaan build dalam format nomor build.
Tidak
Build.TriggeredBy.BuildId Jika build dipicu oleh build lain, maka variabel ini diatur ke BuildID dari build pemicu. Dalam alur Klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.TriggeredBy.DefinitionId Jika build dipicu oleh build lain, maka variabel ini diatur ke DefinitionID dari build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.TriggeredBy.DefinitionName Jika build dipicu oleh build lain, maka variabel ini diatur ke nama alur build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.TriggeredBy.BuildNumber Jika build dipicu oleh build lain, maka variabel ini diatur ke jumlah build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Build.TriggeredBy.ProjectID Jika build dipicu oleh build lain, maka variabel ini diatur ke ID proyek yang berisi build pemicu. Di Alur klasik, variabel ini dipicu oleh pemicu penyelesaian build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak
Common.TestResultsDirectory Jalur lokal pada agen tempat hasil pengujian dibuat. Misalnya: c:\agent_work\1\TestResults

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak

Variabel alur (DevOps Server 2020)

VariabelDeskripsi
Pipeline.Workspace Direktori ruang kerja untuk alur tertentu. Variabel ini memiliki nilai yang sama dengan Agent.BuildDirectory.

Contohnya:/home/vsts/work/1

Variabel pekerjaan penyebaran (DevOps Server 2020)

Variabel ini dilingkup ke pekerjaan Penyebaran tertentu dan hanya akan diselesaikan pada waktu eksekusi pekerjaan.

VariabelDeskripsi
Environment.Name Nama lingkungan yang ditargetkan dalam pekerjaan penyebaran untuk menjalankan langkah-langkah penyebaran dan merekam riwayat penyebaran. Contohnya:smarthotel-dev
Environment.Id ID lingkungan yang ditargetkan dalam pekerjaan penyebaran. Contohnya:10
Environment.ResourceName Nama sumber daya tertentu dalam lingkungan yang ditargetkan dalam pekerjaan penyebaran untuk menjalankan langkah-langkah penyebaran dan merekam riwayat penyebaran. Misalnya, bookings yang merupakan namespace Layanan Kube yang telah ditambahkan sebagai sumber daya ke lingkungan smarthotel-dev.
Environment.ResourceId ID sumber daya tertentu dalam lingkungan yang ditargetkan dalam pekerjaan penyebaran untuk menjalankan langkah-langkah penyebaran. Contohnya:4

Variabel sistem (DevOps Server 2020)

VariabelDeskripsiTersedia dalam templat?
System.AccessToken Gunakan token OAuth untuk mengakses REST API.

Gunakan System.AccessToken dari skrip YAML.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Ya
System.CollectionId GUID koleksi TFS atau organisasi Azure DevOps Ya
System.CollectionUri String URI kumpulan Team Foundation Server. Ya
System.DefaultWorkingDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh di tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Tidak
System.DefinitionId ID alur build. Ya
System.HostType Atur ke build jika alur adalah build. Untuk rilis, nilainya adalah deployment untuk pekerjaan grup Penyebaran, gates selama evaluasi gerbang, dan release untuk pekerjaan (Agen dan Tanpa Agen) lainnya. Ya
System.JobAttempt Atur ke 1 saat pertama kali pekerjaan ini dicoba, dan kenaikan setiap kali pekerjaan dicoba kembali. Tidak
System.JobDisplayName Nama yang dapat dibaca manusia diberikan untuk pekerjaan. Tidak
System.JobId Pengidentifikasi unik untuk satu upaya dari satu pekerjaan. Nilainya unik untuk alur saat ini. Tidak
System.JobName Nama pekerjaan, biasanya digunakan untuk mengekspresikan dependensi dan mengakses variabel output. Tidak
System.PhaseAttempt Atur ke 1 saat pertama kali fase ini dicoba, dan tahapan setiap kali pekerjaan dicoba kembali.

Catatan: "Fase" adalah konsep yang sebagian besar redundan yang mewakili waktu desain untuk pekerjaan (sedangkan pekerjaan adalah versi runtime suatu fase). Sebagian besar kami telah menghapus konsep "fase" dari Azure Pipelines. Pekerjaan matriks dan multi-konfigurasi adalah satu-satunya tempat di mana "fase" masih berbeda dari "pekerjaan". Satu fase dapat membuat instans beberapa pekerjaan yang hanya berbeda dalam inputnya.
Tidak
System.PhaseDisplayName Nama yang dapat dibaca manusia diberikan ke fase. Tidak
System.PhaseName Pengidentifikasi berbasis string untuk pekerjaan, biasanya digunakan untuk mengekspresikan dependensi dan mengakses variabel output. Tidak
System.StageAttempt Atur ke 1 saat pertama kali tahap ini dicoba, dan tahapan setiap kali pekerjaan dicoba kembali. Tidak
System.StageDisplayName Nama yang dapat dibaca manusia diberikan ke panggung. Tidak
System.StageName Pengidentifikasi berbasis string untuk tahap, biasanya digunakan untuk mengekspresikan dependensi dan mengakses variabel output. Ya
System.PullRequest.IsFork Jika permintaan pull berasal dari fork repositori, variabel ini diatur ke True. Jika tidak, diatur ke False. Ya
System.PullRequest.PullRequestId ID permintaan pull yang menyebabkan build ini. Misalnya: 17. (Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang). Tidak
System.PullRequest.PullRequestNumber Jumlah permintaan pull yang menyebabkan build ini. Variabel ini diisi untuk permintaan pull dari GitHub yang memiliki ID permintaan pull dan nomor permintaan pull yang berbeda. Variabel ini hanya tersedia dalam alur YAML jika PR terpengaruh oleh kebijakan cabang. Tidak
System.PullRequest.SourceBranch Cabang yang sedang ditinjau dalam permintaan pull. Misalnya: refs/heads/users/raisa/new-feature. (Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang). Variabel ini hanya tersedia dalam alur YAML jika PR dipengaruhi oleh kebijakan cabang. Tidak
System.PullRequest.SourceRepositoryURI URL ke repositori yang berisi permintaan pull. Misalnya: https://dev.azure.com/ouraccount/_git/OurProject. Tidak
System.PullRequest.TargetBranch Cabang yang menjadi target permintaan pull. Misalnya: refs/heads/master saat repositori Anda berada di Azure Repos dan master saat repositori Anda berada di GitHub. Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang. Variabel ini hanya tersedia dalam alur YAML jika PR dipengaruhi oleh kebijakan cabang. Tidak
System.TeamFoundationCollectionUri URI pengumpulan yayasan tim. Misalnya: https://dev.azure.com/fabrikamfiber/

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Ya
System.TeamProject Nama proyek yang berisi build ini. Ya
System.TeamProjectId ID proyek tempat build ini berada. Ya
TF_BUILD Atur ke True jika skrip sedang dijalankan oleh tugas build.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Tidak

Variabel agen (DevOps Server 2019)

Catatan

Anda dapat menggunakan variabel agen sebagai variabel lingkungan dalam skrip Anda dan sebagai parameter dalam tugas build Anda. Anda tidak dapat menggunakannya untuk menyesuaikan nomor build atau menerapkan label atau tag kontrol versi.

VariabelDeskripsi
Agent.BuildDirectory

Jalur lokal pada agen tempat semua folder untuk alur build tertentu dibuat.

Misalnya: c:\agent_work\1

Agent.HomeDirectory Direktori tempat agen diinstal. Ini berisi perangkat lunak agen. Misalnya: c:\agent.
Agent.Id ID agen.
Agent.JobName Nama pekerjaan yang sedang berjalan. Ini biasanya akan menjadi "Pekerjaan" atau "__default", tetapi dalam skenario multi-konfigurasi, akan menjadi konfigurasi.
Agent.JobStatus Status build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (sebagian berhasil)

Variabel lingkungan harus dirujuk sebagai AGENT_JOBSTATUS. Yang lebih agent.jobstatus lama tersedia untuk kompatibilitas mundur.

Agent.MachineName Nama komputer tempat agen diinstal.
Agent.Name

Nama agen yang terdaftar di kumpulan.

Jika Anda menggunakan agen yang dihost sendiri, maka nama ini ditentukan oleh Anda. Lihat agen.

Agent.OS Sistem operasi host agen. Nilai yang valid adalah:
  • Windows_NT
  • Darwin
  • Linux
Jika Anda berjalan dalam kontainer, host agen dan kontainer mungkin menjalankan sistem operasi yang berbeda.
Agent.OSArchitecture Arsitektur prosesor sistem operasi host agen. Nilai yang valid adalah:
  • X86
  • X64
  • ARM
Agent.TempDirectory Folder sementara yang dibersihkan setelah setiap pekerjaan alur. Direktori ini digunakan oleh tugas-tugas seperti tugas .NET Core CLI untuk menyimpan item sementara seperti hasil pengujian sebelum diterbitkan.
Agent.ToolsDirectory Direktori yang digunakan oleh tugas-tugas seperti Alat Penginstal Simpul dan Menggunakan Versi Python untuk beralih di antara beberapa versi alat. Tugas-tugas ini akan menambahkan alat dari direktori ini ke PATH sehingga langkah-langkah build berikutnya dapat menggunakannya.

Pelajari tentang mengelola direktori ini pada agen yang dihost sendiri.
Agent.WorkFolder Direktori kerja untuk agen ini. Misalnya: c:\agent_work.

Direktori ini tidak dijamin dapat ditulis oleh tugas alur (misalnya ketika dipetakan ke dalam kontainer)

Variabel build (DevOps Server 2019)


VariabelDeskripsi
Build.ArtifactStagingDirectory

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Build.BuildId ID rekaman untuk build yang telah selesai.
Build.BuildNumber Nama build yang telah selesai. Anda dapat menentukan format nomor build yang menghasilkan nilai ini dalam opsi alur.

Penggunaan umum variabel ini adalah menjadikannya bagian dari format label, yang Anda tentukan pada tab repositori.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.



Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Build.BuildUri URI untuk build. Misalnya: vstfs:///Build/Build/1430.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.BinariesDirectory Jalur lokal pada agen yang dapat Anda gunakan sebagai folder output untuk biner yang dikompilasi.

Secara default, alur build baru tidak disiapkan untuk membersihkan direktori ini. Anda dapat menentukan build untuk membersihkannya pada tab Repositori.

Misalnya: c:\agent_work\1\b.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.DefinitionName Nama alur build.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Build.DefinitionVersion Versi alur build.
Build.QueuedBy Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Build.QueuedById Lihat "Bagaimana variabel identitas diatur?".
Build.Reason Peristiwa yang menyebabkan build berjalan.
  • Manual: Pengguna mengantre build secara manual.
  • IndividualCI: Integrasi berkelanjutan (CI) yang dipicu oleh pendorongan Git atau check-in TFVC.
  • BatchedCI: Integrasi berkelanjutan (CI) yang dipicu oleh push Git atau check-in TFVC, dan perubahan Batch dipilih.
  • Schedule: Pemicu terjadwal .
  • ValidateShelveset: Pengguna secara manual mengantrekan build shelveset TFVC tertentu.
  • CheckInShelveset: Pemicu check-in yang terjaga .
  • PullRequest: Build dipicu oleh kebijakan cabang Git yang memerlukan build.
  • BuildCompletion: Build dipicu oleh build lain
Lihat Membangun pemicu alur, Meningkatkan kualitas kode dengan kebijakan cabang.
Build.Repository.Clean Nilai yang Anda pilih untuk Bersihkan di pengaturan repositori sumber.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.LocalPath

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh pada tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Variabel ini identik dengan Build.SourcesDirectory.

Build.Repository.Name Nama repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.Provider Jenis repositori yang Anda pilih. Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.Tfvc.Workspace Ditentukan jika repositori Anda adalah Team Foundation Version Control. Nama ruang kerja TFVC yang digunakan oleh agen build.


Misalnya, jika Agent.BuildDirectory adalah c:\agent_work\12 dan Agent.Id adalah 8, nama ruang kerja dapat berupa: ws_12_8

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.Uri URL untuk repositori. Contohnya: Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.RequestedFor Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Build.RequestedForEmail Lihat "Bagaimana variabel identitas diatur?".
Build.RequestedForId Lihat "Bagaimana variabel identitas diatur?".
Build.SourceBranch Cabang tempat build diantrekan. Beberapa contoh:
  • Cabang repositori Git: refs/heads/master
  • Permintaan pull repositori Git: refs/pull/1/merge
  • Cabang repositori TFVC: $/teamproject/main
  • Cek masuk terjaga yang dijaga repo TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Build shelveset repositori TFVC: myshelveset;username@live.com
Saat Anda menggunakan variabel ini dalam format nomor build Anda, karakter/ garis miring () diganti dengan karakter _garis bawah ).

Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Build.SourceBranchName Nama cabang tempat build diantrekan.
  • Cabang repositori Git atau permintaan pull: Segmen jalur terakhir di ref. Misalnya, dalam refs/heads/master nilai ini adalah master. Dalam refs/heads/feature/tools nilai ini adalah tools.
  • Cabang repositori TFVC: Segmen jalur terakhir di jalur server akar untuk ruang kerja. Misalnya dalam $/teamproject/main nilai ini adalah main.
  • TFVC repo gated check-in atau shelveset build adalah nama shelveset. Misalnya, Gated_2016-06-06_05.20.51.4369;username@live.com atau myshelveset;username@live.com.
Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Build.SourcesDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh pada tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Variabel ini identik dengan Build.Repository.LocalPath.

Build.SourceVersion Perubahan kontrol versi terbaru yang disertakan dalam build ini. Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.SourceVersionMessage Komentar penerapan atau set perubahan. Kami memotong pesan ke baris pertama atau 200 karakter, mana pun yang lebih pendek.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Catatan: Variabel ini tersedia di TFS 2015.4.

Build.StagingDirectory

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Build.Repository.Git.SubmoduleCheckout Nilai yang Anda pilih untuk Submodul Checkout pada tab repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.SourceTfvcShelveset Ditentukan jika repositori Anda adalah Team Foundation Version Control.


Jika Anda menjalankan build terjaga atau build shelveset, ini diatur ke nama shelveset yang Anda bangun.

Catatan: Variabel ini menghasilkan nilai yang tidak valid untuk penggunaan build dalam format nomor build.
Build.TriggeredBy.BuildId Jika build dipicu oleh build lain, maka variabel ini diatur ke BuildID dari build pemicu.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.TriggeredBy.DefinitionId Jika build dipicu oleh build lain, maka variabel ini diatur ke DefinitionID dari build pemicu.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.TriggeredBy.DefinitionName Jika build dipicu oleh build lain, maka variabel ini diatur ke nama alur build pemicu.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.TriggeredBy.BuildNumber Jika build dipicu oleh build lain, maka variabel ini diatur ke jumlah build pemicu.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.TriggeredBy.ProjectID Jika build dipicu oleh build lain, maka variabel ini diatur ke ID proyek yang berisi build pemicu.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Common.TestResultsDirectory Jalur lokal pada agen tempat hasil pengujian dibuat. Misalnya: c:\agent_work\1\TestResults

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Variabel sistem (DevOps Server 2019)

VariabelDeskripsi
System.AccessToken Gunakan token OAuth untuk mengakses REST API.

Gunakan System.AccessToken dari skrip YAML.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
System.CollectionId GUID koleksi TFS atau organisasi Azure DevOps
System.DefaultWorkingDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh di tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

System.DefinitionId ID alur build.
System.HostType Atur ke build jika alur adalah build. Untuk rilis, nilainya adalah deployment untuk pekerjaan grup Penyebaran dan release untuk pekerjaan Agen.
System.PullRequest.IsFork Jika permintaan pull berasal dari fork repositori, variabel ini diatur ke True. Jika tidak, diatur ke False.
System.PullRequest.PullRequestId ID permintaan pull yang menyebabkan build ini. Misalnya: 17. (Variabel ini diinisialisasi hanya jika build berjalan karena Git PR yang terpengaruh oleh kebijakan cabang.)
System.PullRequest.PullRequestNumber Jumlah permintaan pull yang menyebabkan build ini. Variabel ini diisi untuk permintaan pull dari GitHub yang memiliki ID permintaan pull dan nomor permintaan pull yang berbeda.
System.PullRequest.SourceBranch Cabang yang sedang ditinjau dalam permintaan pull. Misalnya: refs/heads/users/raisa/new-feature. (Variabel ini diinisialisasi hanya jika build berjalan karena Git PR yang terpengaruh oleh kebijakan cabang.)
System.PullRequest.SourceRepositoryURI URL ke repositori yang berisi permintaan pull. Misalnya: https://dev.azure.com/ouraccount/_git/OurProject. (Variabel ini diinisialisasi hanya jika build berjalan karena Azure Repos Git PR yang terpengaruh oleh kebijakan cabang. Ini tidak diinisialisasi untuk GitHub PR.)
System.PullRequest.TargetBranch Cabang yang menjadi target permintaan pull. Misalnya: refs/heads/master. Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang.
System.TeamFoundationCollectionUri URI pengumpulan yayasan tim. Misalnya: https://dev.azure.com/fabrikamfiber/.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
System.TeamProject Nama proyek yang berisi build ini.
System.TeamProjectId ID proyek tempat build ini berada.
TF_BUILD Atur ke True jika skrip sedang dijalankan oleh tugas build.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Variabel agen (TFS 2018)

Catatan

Anda dapat menggunakan variabel agen sebagai variabel lingkungan dalam skrip Anda dan sebagai parameter dalam tugas build Anda. Anda tidak dapat menggunakannya untuk menyesuaikan nomor build atau menerapkan label atau tag kontrol versi.

VariabelDeskripsi
Agent.BuildDirectory

Jalur lokal pada agen tempat semua folder untuk alur build tertentu dibuat.

Misalnya: c:\agent_work\1

Agent.HomeDirectory Direktori tempat agen diinstal. Ini berisi perangkat lunak agen. Misalnya: c:\agent.
Agent.Id ID agen.
Agent.JobStatus Status build.
  • Canceled
  • Failed
  • Succeeded
  • SucceededWithIssues (sebagian berhasil)

Variabel lingkungan harus dirujuk sebagai AGENT_JOBSTATUS. Yang lebih agent.jobstatus lama tersedia untuk kompatibilitas mundur.

Agent.MachineName Nama komputer tempat agen diinstal.
Agent.Name

Nama agen yang terdaftar di kumpulan.

Nama ini ditentukan oleh Anda. Lihat agen.

Agent.TempDirectory Folder sementara yang dibersihkan setelah setiap pekerjaan alur. Direktori ini digunakan oleh tugas-tugas seperti tugas .NET Core CLI untuk menyimpan item sementara seperti hasil pengujian sebelum diterbitkan.
Agent.ToolsDirectory Direktori yang digunakan oleh tugas-tugas seperti Node Tool Installer dan Use Python Version untuk beralih di antara beberapa versi alat. Tugas-tugas ini akan menambahkan alat dari direktori ini sehingga PATH langkah-langkah build berikutnya dapat menggunakannya.

Pelajari tentang mengelola direktori ini pada agen yang dihost sendiri.
Agent.WorkFolder Direktori kerja untuk agen ini. Misalnya: c:\agent_work.

Variabel build (TFS 2018)


VariabelDeskripsi
Build.ArtifactStagingDirectory Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya.

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Build.BuildId ID rekaman untuk build yang telah selesai.
Build.BuildNumber Nama build yang telah selesai. Anda dapat menentukan format nomor build yang menghasilkan nilai ini dalam opsi alur.

Penggunaan umum variabel ini adalah menjadikannya bagian dari format label, yang Anda tentukan pada tab repositori.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.



Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai tag kontrol versi.

Build.BuildUri URI untuk build. Misalnya: vstfs:///Build/Build/1430.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.BinariesDirectory Jalur lokal pada agen yang dapat Anda gunakan sebagai folder output untuk biner yang dikompilasi.

Secara default, alur build baru tidak disiapkan untuk membersihkan direktori ini. Anda dapat menentukan build Anda untuk membersihkannya pada tab Repositori.

Misalnya: c:\agent_work\1\b.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.DefinitionName Nama alur build.

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Build.DefinitionVersion Versi alur build.
Build.QueuedBy Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Build.QueuedById Lihat "Bagaimana variabel identitas diatur?".
Build.Reason Peristiwa yang menyebabkan build berjalan.
  • Manual: Pengguna secara manual mengantre build dari UI atau panggilan API.
  • IndividualCI: Integrasi berkelanjutan (CI) yang dipicu oleh pendorongan Git atau check-in TFVC.
  • BatchedCI: Integrasi berkelanjutan (CI) yang dipicu oleh pendorongan Git atau check-in TFVC, dan perubahan Batch dipilih.
  • Schedule: Pemicu terjadwal .
  • ValidateShelveset: Pengguna secara manual mengantrekan build rak TFVC tertentu.
  • CheckInShelveset: Pemicu check-in yang terjaga .
  • PullRequest: Build dipicu oleh kebijakan cabang Git yang memerlukan build.
Lihat Membangun pemicu alur, Meningkatkan kualitas kode dengan kebijakan cabang.
Build.Repository.Clean Nilai yang Anda pilih untuk Bersihkan di pengaturan repositori sumber.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.LocalPath

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh di tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Variabel ini identik dengan Build.SourcesDirectory.

Build.Repository.Name Nama repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.Provider Jenis repositori yang Anda pilih. Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.Tfvc.Workspace Ditentukan jika repositori Anda adalah Kontrol Versi Team Foundation. Nama ruang kerja TFVC yang digunakan oleh agen build.

Misalnya, jika Agent.BuildDirectory adalah c:\agent_work\12 dan Agent.Id adalah 8, nama ruang kerja dapat berupa: ws_12_8

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.Repository.Uri URL untuk repositori. Contohnya:
  • Git: https://fabrikamfiber/tfs/DefaultCollection/Scripts/_git/Scripts
  • TFVC: https://fabrikamfiber/tfs/DefaultCollection/
Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.RequestedFor Lihat "Bagaimana variabel identitas diatur?".

Catatan: Nilai ini dapat berisi spasi kosong atau karakter label lain yang tidak valid. Dalam kasus ini, format label akan gagal.

Build.RequestedForEmail Lihat "Bagaimana variabel identitas diatur?".
Build.RequestedForId Lihat "Bagaimana variabel identitas diatur?".
Build.SourceBranch Cabang tempat build diantrekan. Beberapa contoh:
  • Cabang repositori Git: refs/heads/master
  • Permintaan pull repositori Git: refs/pull/1/merge
  • Cabang repositori TFVC: $/teamproject/main
  • Check-in terjaga dengan terjaganya repo TFVC: Gated_2016-06-06_05.20.51.4369;username@live.com
  • Build shelveset repositori TFVC: myshelveset;username@live.com
Saat Anda menggunakan variabel ini dalam format nomor build Anda, karakter/ garis miring () diganti dengan karakter _garis bawah ).

Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Build.SourceBranchName Nama cabang tempat build diantrekan.
  • Cabang repositori Git atau permintaan pull: Segmen jalur terakhir di ref. Misalnya, dalam refs/heads/master nilai ini adalah master. Dalam refs/heads/feature/tools nilai ini adalah tools.
  • Cabang repositori TFVC: Segmen jalur terakhir di jalur server akar untuk ruang kerja. Misalnya dalam $/teamproject/main nilai ini adalah main.
  • TFVC repo gated check-in atau shelveset build adalah nama shelveset. Misalnya, Gated_2016-06-06_05.20.51.4369;username@live.com atau myshelveset;username@live.com.
Catatan: Di TFVC, jika Anda menjalankan build check-in yang terjaga atau membangun shelveset secara manual, Anda tidak dapat menggunakan variabel ini dalam format nomor build Anda.
Build.SourcesDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh di tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Variabel ini identik dengan Build.Repository.LocalPath.

Build.SourceVersion Perubahan kontrol versi terbaru yang disertakan dalam build ini. Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.SourceVersionMessage Komentar penerapan atau set perubahan. Kami memotong pesan ke baris pertama atau 200 karakter, mana pun yang lebih pendek.

Variabel ini tercakup dalam agen, dan dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Catatan: Variabel ini tersedia di TFS 2015.4.

Build.StagingDirectory

Jalur lokal pada agen tempat artefak disalin sebelum didorong ke tujuannya. Misalnya: c:\agent_work\1\a

Cara umum untuk menggunakan folder ini adalah dengan menerbitkan artefak build Anda dengan tugas Salin file dan Terbitkan artefak build .

Catatan: Build.ArtifactStagingDirectory dan Build.StagingDirectory dapat dipertukarkan. Direktori ini dihapus menyeluruh sebelum setiap build baru, jadi Anda tidak perlu membersihkannya sendiri.

Lihat Artefak di Azure Pipelines.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Build.Repository.Git.SubmoduleCheckout Nilai yang Anda pilih untuk submodul Checkout pada tab repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
Build.SourceTfvcShelveset Ditentukan jika repositori Anda adalah Kontrol Versi Team Foundation.

Jika Anda menjalankan build terjaga atau build rak, ini diatur ke nama shelveset yang Anda bangun.

Catatan: Variabel ini menghasilkan nilai yang tidak valid untuk penggunaan build dalam format angka build.
Common.TestResultsDirectory Jalur lokal pada agen tempat hasil pengujian dibuat. Misalnya: c:\agent_work\1\TestResults

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Variabel sistem (TFS 2018)

VariabelDeskripsi
System.AccessToken Gunakan token OAuth untuk mengakses REST API.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
System.CollectionId GUID koleksi TFS atau organisasi Azure DevOps
System.DefaultWorkingDirectory

Jalur lokal pada agen tempat file kode sumber Anda diunduh. Misalnya: c:\agent_work\1\s

Secara default, alur build baru hanya memperbarui file yang diubah. Anda dapat mengubah cara file diunduh di tab Repositori.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

System.DefinitionId ID alur build.
System.HostType Atur ke build jika alur adalah build atau release jika alur adalah rilis.
System.PullRequest.IsFork Jika permintaan pull berasal dari fork repositori, variabel ini diatur ke True. Jika tidak, diatur ke False. Tersedia dalam TFS 2018.2.
System.PullRequest.PullRequestId ID permintaan pull yang menyebabkan build ini. Misalnya: 17. (Variabel ini diinisialisasi hanya jika build berjalan karena Git PR yang terpengaruh oleh kebijakan cabang.)
System.PullRequest.SourceBranch Cabang yang sedang ditinjau dalam permintaan pull. Misalnya: refs/heads/users/raisa/new-feature. (Variabel ini diinisialisasi hanya jika build berjalan karena Git PR yang terpengaruh oleh kebijakan cabang.)
System.PullRequest.SourceRepositoryURI URL ke repositori yang berisi permintaan pull. Misalnya: http://our-server:8080/tfs/DefaultCollection/_git/OurProject. (Variabel ini diinisialisasi hanya jika build berjalan karena Azure Repos Git PR yang terpengaruh oleh kebijakan cabang.)
System.PullRequest.TargetBranch Cabang yang menjadi target permintaan pull. Misalnya: refs/heads/master. Variabel ini diinisialisasi hanya jika build berjalan karena PR Git yang terpengaruh oleh kebijakan cabang.
System.TeamFoundationCollectionUri URI pengumpulan yayasan tim. Misalnya: http://our-server:8080/tfs/DefaultCollection/.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.
System.TeamProject Nama proyek yang berisi build ini.
System.TeamProjectId ID proyek tempat build ini berada.
TF_BUILD Atur ke True jika skrip sedang dijalankan oleh tugas build.

Variabel ini terlingkup agen. Ini dapat digunakan sebagai variabel lingkungan dalam skrip dan sebagai parameter dalam tugas build, tetapi bukan sebagai bagian dari nomor build atau sebagai tag kontrol versi.

Bagaimana variabel identitas ditetapkan?

Nilai tergantung pada apa yang menyebabkan build dan khusus untuk repositori Azure Repos.

Jika build dipicu... Kemudian nilai Build.QueuedBy dan Build.QueuedById didasarkan pada... Kemudian nilai Build.RequestedFor dan Build.RequestedForId didasarkan pada...
Di Git atau TFVC oleh pemicu Integrasi berkelanjutan (CI) Identitas sistem, misalnya: [DefaultCollection]\Project Collection Service Accounts Orang yang mendorong atau memeriksa perubahan.
Di Git atau oleh build kebijakan cabang. Identitas sistem, misalnya: [DefaultCollection]\Project Collection Service Accounts Orang yang memeriksa perubahan.
Di TFVC dengan pemicu check-in yang terjaga Orang yang memeriksa perubahan. Orang yang memeriksa perubahan.
Di Git atau TFVC oleh pemicu Terjadwal Identitas sistem, misalnya: [DefaultCollection]\Project Collection Service Accounts Identitas sistem, misalnya: [DefaultCollection]\Project Collection Service Accounts
Karena Anda mengklik tombol build Antrean Anda Anda