Menambahkan & menggunakan grup variabel
Layanan Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019
Grup variabel menyimpan nilai dan rahasia yang mungkin ingin Anda teruskan ke alur YAML atau tersedia di beberapa alur. Anda dapat berbagi dan menggunakan grup variabel dalam beberapa alur dalam proyek yang sama.
Variabel rahasia dalam grup Variabel adalah sumber daya yang dilindungi. Anda dapat menambahkan kombinasi persetujuan, pemeriksaan, dan izin alur untuk membatasi akses ke variabel rahasia dalam grup variabel. Akses ke variabel non-rahasia tidak dibatasi oleh persetujuan, pemeriksaan, dan izin alur.
Membuat grup variabel
Anda tidak dapat membuat grup variabel di YAML, tetapi dapat digunakan seperti yang dijelaskan dalam Menggunakan grup variabel.
Menggunakan grup variabel
Untuk menggunakan variabel dari grup variabel, tambahkan referensi ke grup dalam file YAML Anda:
variables:
- group: my-variable-group
Kemudian, variabel dari grup variabel dapat digunakan dalam file YAML Anda.
Jika Anda menggunakan variabel dan grup variabel, gunakan name
/value
sintaks untuk variabel individual yang tidak dikelompokkan:
variables:
- group: my-variable-group
- name: my-bare-variable
value: 'value of my-bare-variable'
Untuk mereferensikan grup variabel, gunakan sintaks makro atau ekspresi runtime. Dalam contoh berikut, grup my-variable-group
memiliki variabel bernama myhello
.
variables:
- group: my-variable-group
- name: my-passed-variable
value: $[variables.myhello] # uses runtime expression
steps:
- script: echo $(myhello) # uses macro syntax
- script: echo $(my-passed-variable)
Anda dapat mereferensikan beberapa grup variabel dalam alur yang sama. Jika beberapa grup variabel menyertakan variabel yang sama, grup variabel yang disertakan terakhir dalam file YAML Anda mengatur nilai variabel.
variables:
- group: my-first-variable-group
- group: my-second-variable-group
Anda juga dapat mereferensikan grup variabel dalam templat. Dalam templat variables.yml
, grup my-variable-group
dirujuk. Grup variabel mencakup variabel bernama myhello
.
# variables.yml
variables:
- group: my-variable-group
Dalam alur ini, variabel $(myhello)
dari grup my-variable-group
variabel disertakan dan variables.yml
dirujuk.
# azure-pipeline.yml
stages:
- stage: MyStage
variables:
- template: variables.yml
jobs:
- job: Test
steps:
- script: echo $(myhello)
Mengotorisasi grup variabel
Untuk bekerja dengan grup variabel, Anda harus mengotorisasi grup. Jika Anda hanya memberi nama grup variabel di YAML, maka siapa pun yang dapat mendorong kode ke repositori Anda dapat mengekstrak konten rahasia dalam grup variabel. Untuk mengotorisasi grup, gunakan salah satu teknik berikut:
Untuk mengotorisasi grup variabel untuk alur tertentu, buka alur, pilih Edit, lalu antre build secara manual. Anda melihat kesalahan otorisasi sumber daya dan tindakan "Otorisasi sumber daya" pada kesalahan. Pilih tindakan ini untuk secara eksplisit menambahkan alur sebagai pengguna resmi grup variabel.
Untuk mengotorisasi alur apa pun untuk menggunakan grup variabel, buka Azure Pipelines. Ini mungkin pilihan yang baik jika Anda tidak memiliki rahasia dalam grup. Pilih Grup Variabel Pustaka>, lalu pilih grup variabel yang dimaksud dan aktifkan pengaturan Izinkan akses ke semua alur.
Catatan
Jika Anda menambahkan grup variabel ke alur dan tidak mendapatkan kesalahan otorisasi sumber daya di build Anda saat anda mengharapkannya, nonaktifkan pengaturan Izinkan akses ke semua alur .
Akses nilai variabel dalam grup variabel tertaut dengan cara yang sama seperti variabel yang Anda tentukan dalam alur itu sendiri.
Misalnya, untuk mengakses nilai variabel bernama pelanggan dalam grup variabel yang ditautkan ke alur, gunakan $(customer)
dalam parameter tugas atau skrip. Tetapi, Anda tidak dapat mengakses variabel rahasia (variabel terenkripsi dan variabel brankas kunci) langsung dalam skrip - sebagai gantinya, variabel tersebut harus diteruskan sebagai argumen ke tugas. Untuk informasi selengkapnya, lihat rahasia
Perubahan yang Anda buat pada grup variabel secara otomatis tersedia untuk semua definisi atau tahapan tempat grup variabel ditautkan.
Mencantumkan grup variabel
Gunakan CLI untuk mencantumkan grup variabel untuk eksekusi alur dengan perintah az pipelines variable-group list . Jika ekstensi Azure DevOps untuk CLI baru bagi Anda, lihat Mulai menggunakan Azure DevOps CLI.
az pipelines variable-group list [--action {manage, none, use}]
[--continuation-token]
[--group-name]
[--org]
[--project]
[--query-order {Asc, Desc}]
[--top]
Parameter opsional
- tindakan: Menentukan tindakan yang dapat dilakukan pada grup variabel. Nilai yang diterima dikelola, tidak ada, dan digunakan.
- token kelanjutan: Mencantumkan grup variabel setelah token kelanjutan disediakan.
- group-name: Nama grup variabel. Kartubebas diterima, seperti
new-var*
. - org: URL organisasi Azure DevOps. Konfigurasikan organisasi default menggunakan
az devops configure -d organization=ORG_URL
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. Contoh:--org https://dev.azure.com/MyOrganizationName/
. - project: Nama atau ID proyek. Konfigurasikan proyek default menggunakan
az devops configure -d project=NAME_OR_ID
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. - urutan kueri: Mencantumkan hasil dalam urutan naik atau turun (default). Nilai yang diterima adalah Asc dan Desc.
- atas: Jumlah grup variabel yang akan dicantumkan.
Contoh
Perintah berikut mencantumkan tiga grup variabel teratas dalam urutan naik dan mengembalikan hasil dalam format tabel.
az pipelines variable-group list --top 3 --query-order Asc --output table
ID Name Type Number of Variables
---- ----------------- ------ ---------------------
1 myvariables Vsts 2
2 newvariables Vsts 4
3 new-app-variables Vsts 3
Perlihatkan detail untuk grup variabel
Tampilkan detail grup variabel dalam proyek Anda dengan perintah az pipelines variable-group show . Jika ekstensi Azure DevOps untuk CLI baru bagi Anda, lihat Mulai menggunakan Azure DevOps CLI.
az pipelines variable-group show --group-id
[--org]
[--project]
Parameter
- group-id: Diperlukan. ID grup variabel. Untuk menemukan ID grup variabel, lihat Mencantumkan grup variabel.
- org: URL organisasi Azure DevOps. Konfigurasikan organisasi default menggunakan
az devops configure -d organization=ORG_URL
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. Contoh:--org https://dev.azure.com/MyOrganizationName/
. - project: Nama atau ID proyek. Konfigurasikan proyek default menggunakan
az devops configure -d project=NAME_OR_ID
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
.
Contoh
Perintah berikut menunjukkan detail untuk grup variabel dengan ID 4 dan mengembalikan hasil dalam format YAML.
az pipelines variable-group show --group-id 4 --output yaml
authorized: false
description: Variables for my new app
id: 4
name: MyNewAppVariables
providerData: null
type: Vsts
variables:
app-location:
isSecret: null
value: Head_Office
app-name:
isSecret: null
value: Fabrikam
Menghapus grup variabel
Hapus grup variabel di proyek Anda dengan perintah az pipelines variable-group delete . Jika ekstensi Azure DevOps untuk CLI baru bagi Anda, lihat Mulai menggunakan Azure DevOps CLI.
az pipelines variable-group delete --group-id
[--org]
[--project]
[--yes]
Parameter
- group-id: Diperlukan. ID grup variabel. Untuk menemukan ID grup variabel, lihat Mencantumkan grup variabel.
- org: URL organisasi Azure DevOps. Konfigurasikan organisasi default menggunakan
az devops configure -d organization=ORG_URL
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. Contoh:--org https://dev.azure.com/MyOrganizationName/
. - project: Nama atau ID proyek. Konfigurasikan proyek default menggunakan
az devops configure -d project=NAME_OR_ID
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. - Ya: Opsional. Tidak meminta konfirmasi.
Contoh
Perintah berikut menghapus grup variabel dengan ID 1 dan tidak meminta konfirmasi.
az pipelines variable-group delete --group-id 1 --yes
Deleted variable group successfully.
Menambahkan variabel ke grup variabel
Dengan Azure DevOps CLI, Anda dapat menambahkan variabel ke grup variabel dalam alur dengan perintah az pipelines variable-group variable create . Jika ekstensi Azure DevOps untuk CLI baru bagi Anda, lihat Mulai menggunakan Azure DevOps CLI.
az pipelines variable-group variable create --group-id
--name
[--org]
[--project]
[--secret {false, true}]
[--value]
Parameter
- group-id: Diperlukan. ID grup variabel. Untuk menemukan ID grup variabel, lihat Mencantumkan grup variabel.
- nama: Wajib diisi. Nama variabel yang Anda tambahkan.
- org: URL organisasi Azure DevOps. Konfigurasikan organisasi default menggunakan
az devops configure -d organization=ORG_URL
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. Contoh:--org https://dev.azure.com/MyOrganizationName/
. - project: Nama atau ID proyek. Konfigurasikan proyek default menggunakan
az devops configure -d project=NAME_OR_ID
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. - rahasia: Opsional. Menunjukkan apakah nilai variabel adalah rahasia. Nilai yang diterima salah dan benar.
- value: Diperlukan untuk variabel non-rahasia. Nilai variabel. Untuk variabel rahasia, jika parameter nilai tidak disediakan, parameter tersebut dipilih dari variabel lingkungan yang diawali dengan
AZURE_DEVOPS_EXT_PIPELINE_VAR_
atau pengguna diminta untuk memasukkannya melalui input standar. Misalnya, variabel bernama MySecret dapat dimasukkan menggunakan variabelAZURE_DEVOPS_EXT_PIPELINE_VAR_MySecret
lingkungan .
Contoh
Perintah berikut membuat variabel dalam grup variabel dengan ID 4. Variabel baru bernama requires-login dan memiliki nilai True, dan hasilnya ditampilkan dalam format tabel.
az pipelines variable-group variable create --group-id 4 --name requires-login --value True --output table
Name Is Secret Value
-------------- ----------- -------
requires-login False True
Mencantumkan variabel dalam grup variabel
Anda dapat mencantumkan variabel dalam grup variabel dengan perintah az pipelines variable-group variable list . Jika ekstensi Azure DevOps untuk CLI baru bagi Anda, lihat Mulai menggunakan Azure DevOps CLI.
az pipelines variable-group variable list --group-id
[--org]
[--project]
Parameter
- group-id: Diperlukan. ID grup variabel. Untuk menemukan ID grup variabel, lihat Mencantumkan grup variabel.
- org: URL organisasi Azure DevOps. Konfigurasikan organisasi default menggunakan
az devops configure -d organization=ORG_URL
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. Contoh:--org https://dev.azure.com/MyOrganizationName/
. - project: Nama atau ID proyek. Konfigurasikan proyek default menggunakan
az devops configure -d project=NAME_OR_ID
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
.
Contoh
Perintah berikut mencantumkan semua variabel dalam grup variabel dengan ID 4 dan memperlihatkan hasilnya dalam format tabel.
az pipelines variable-group variable list --group-id 4 --output table
Name Is Secret Value
-------------- ----------- -----------
app-location False Head_Office
app-name False Fabrikam
requires-login False True
Memperbarui variabel dalam grup variabel
Perbarui variabel dalam grup variabel dengan perintah az pipelines variable-group variable update . Jika ekstensi Azure DevOps untuk CLI baru bagi Anda, lihat Mulai menggunakan Azure DevOps CLI.
az pipelines variable-group variable update --group-id
--name
[--new-name]
[--org]
[--project]
[--prompt-value {false, true}]
[--secret {false, true}]
[--value]
Parameter
- group-id: Diperlukan. ID grup variabel. Untuk menemukan ID grup variabel, lihat Mencantumkan grup variabel.
- nama: Wajib diisi. Nama variabel yang Anda tambahkan.
- nama baru: Opsional. Tentukan untuk mengubah nama variabel.
- org: URL organisasi Azure DevOps. Konfigurasikan organisasi default menggunakan
az devops configure -d organization=ORG_URL
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. Contoh:--org https://dev.azure.com/MyOrganizationName/
. - project: Nama atau ID proyek. Konfigurasikan proyek default menggunakan
az devops configure -d project=NAME_OR_ID
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. - prompt-value: Atur ke true untuk memperbarui nilai variabel rahasia menggunakan variabel lingkungan atau prompt melalui input standar. Nilai yang diterima salah dan benar.
- rahasia: Opsional. Menunjukkan apakah nilai variabel dirahasiakan. Nilai yang diterima salah dan benar.
- nilai: Memperbarui nilai variabel. Untuk variabel rahasia, gunakan parameter prompt-value untuk diminta memasukkannya melalui input standar. Untuk konsol non-interaktif, konsol dapat dipilih dari variabel lingkungan yang diawali dengan
AZURE_DEVOPS_EXT_PIPELINE_VAR_
. Misalnya, variabel bernama MySecret dapat dimasukkan menggunakan variabelAZURE_DEVOPS_EXT_PIPELINE_VAR_MySecret
lingkungan .
Contoh
Perintah berikut memperbarui variabel requires-login dengan nilai baru False dalam grup variabel dengan ID 4. Ini menentukan bahwa variabel adalah rahasia dan menunjukkan hasilnya dalam format YAML. Perhatikan bahwa output menunjukkan nilai sebagai null alih-alih False karena ini adalah nilai tersembunyi rahasia.
az pipelines variable-group variable update --group-id 4 --name requires-login --value False --secret true --output yaml
requires-login:
isSecret: true
value: null
Menghapus variabel dari grup variabel
Hapus variabel dari grup variabel dengan perintah az pipelines variable-group variable delete . Jika ekstensi Azure DevOps untuk CLI baru bagi Anda, lihat Mulai menggunakan Azure DevOps CLI.
az pipelines variable-group variable delete --group-id
--name
[--org]
[--project]
[--yes]
Parameter
- group-id: Diperlukan. ID grup variabel. Untuk menemukan ID grup variabel, lihat Mencantumkan grup variabel.
- nama: Wajib diisi. Nama variabel yang Anda hapus.
- org: URL organisasi Azure DevOps. Konfigurasikan organisasi default menggunakan
az devops configure -d organization=ORG_URL
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. Contoh:--org https://dev.azure.com/MyOrganizationName/
. - project: Nama atau ID proyek. Konfigurasikan proyek default menggunakan
az devops configure -d project=NAME_OR_ID
. Diperlukan jika tidak dikonfigurasi sebagai default atau diambil menggunakangit config
. - Ya: Opsional. Tidak meminta konfirmasi.
Contoh
Perintah berikut menghapus variabel requires-login dari grup variabel dengan ID 4 dan meminta konfirmasi.
az pipelines variable-group variable delete --group-id 4 --name requires-login
Are you sure you want to delete this variable? (y/n): y
Deleted variable 'requires-login' successfully.
Menautkan rahasia dari Azure Key Vault
Catatan
Key Vault yang menggunakan kontrol akses berbasis peran Azure (Azure RBAC) tidak didukung.
Tautkan brankas kunci Azure yang ada ke grup variabel dan petakan rahasia vault selektif ke grup variabel.
Di halaman Grup variabel, aktifkan Tautkan rahasia dari brankas kunci Azure sebagai variabel. Anda akan memerlukan brankas kunci yang ada yang berisi rahasia Anda. Buat brankas kunci menggunakan portal Azure.
Tentukan titik akhir langganan Azure Anda dan nama vault yang berisi rahasia Anda.
Pastikan koneksi layanan Azure memiliki setidaknya izin Dapatkan dan Daftar manajemen di vault untuk rahasia. Aktifkan Azure Pipelines untuk mengatur izin ini dengan memilih Otorisasi di samping nama vault. Atau, atur izin secara manual di portal Azure:
- Buka Pengaturan untuk vault, lalu pilih Kebijakan akses>Tambahkan baru.
- Pilih Pilih perwakilan lalu pilih perwakilan layanan untuk akun klien Anda.
- Pilih Izin rahasia dan pastikan bahwa Dapatkan dan Daftar memiliki tanda centang.
- Pilih OK untuk menyimpan perubahan.
Pada halaman Grup variabel, pilih + Tambahkan untuk memilih rahasia tertentu dari vault Anda untuk pemetaan ke grup variabel ini.
Mengelola rahasia brankas kunci
Lihat daftar tips bermanfaat berikut untuk mengelola rahasia.
Hanya nama rahasia yang dipetakan ke grup variabel, bukan nilai rahasia. Nilai rahasia terbaru, diambil dari vault, digunakan dalam eksekusi alur yang ditautkan ke grup variabel.
Setiap perubahan yang dilakukan pada rahasia yang ada di brankas kunci secara otomatis tersedia untuk semua alur tempat grup variabel digunakan.
Saat rahasia baru ditambahkan atau dihapus dari vault, grup variabel terkait tidak diperbarui secara otomatis. Rahasia yang disertakan dalam grup variabel harus diperbarui secara eksplisit sehingga alur yang menggunakan grup variabel dijalankan dengan benar.
Azure Key Vault mendukung penyimpanan dan pengelolaan kunci kriptografi dan rahasia di Azure. Saat ini, integrasi grup variabel Azure Pipelines hanya mendukung pemetaan rahasia dari brankas kunci Azure. Kunci kriptografi dan sertifikat tidak didukung.
Memperluas variabel dalam grup
Saat Anda mengatur variabel dalam grup dan menggunakannya dalam file YAML, variabel tersebut sama dengan variabel lain yang ditentukan dalam file YAML. Untuk informasi selengkapnya tentang prioritas variabel, lihat Variabel.
Artikel terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk