Pengaturan push ke App Configuration dengan Azure Pipelines
Tugas Azure App Configuration Push mendorong kunci-nilai dari file konfigurasi ke penyimpanan App Configuration. Tugas ini mengaktifkan fungsi lingkaran penuh di dalam alur karena sekarang Anda dapat menarik pengaturan dari penyimpanan App Configuration serta mendorong pengaturan ke penyimpanan App Configuration.
Prasyarat
- Langganan Azure - buat akun secara gratis
- Penyimpanan App Configuration - buat secara gratis
- Proyek Azure DevOps - buat proyek secara cuma-cuma
- Tugas Azure App Configuration Push - unduh secara gratis dari Visual Studio Marketplace.
- Agen Azure Pipelines versi 2.206.1 atau yang lebih baru dan Node versi 16 atau yang lebih baru untuk menjalankan tugas pada agen yang dihost sendiri.
Membuat koneksi layanan
Koneksi layanan memberi Anda akses ke sumber daya di langganan Azure Anda dari proyek Azure DevOps Anda.
Di Azure DevOps, buka proyek yang berisi slur target Anda. Di sudut kiri bawah, pilih Pengaturan proyek.
Pada Alur, pilih Koneksi layanan. Di sudut kanan atas, pilih Koneksi layanan baru.
Di Koneksi layanan baru, pilih Azure Resource Manager.
Dalam dialog Metode autentikasi, pilih Federasi identitas beban kerja (otomatis) untuk membuat federasi identitas beban kerja baru atau pilih Federasi identitas beban kerja (manual) untuk menggunakan federasi identitas beban kerja yang ada.
Masukkan langganan, grup sumber daya, dan nama untuk koneksi layanan Anda.
Jika Anda membuat perwakilan layanan baru, temukan nama perwakilan layanan yang ditetapkan ke koneksi layanan. Anda akan menambahkan penetapan peran baru ke perwakilan layanan ini pada langkah berikutnya.
Buka Pengaturan Proyek>Koneksi layanan.
Pilih koneksi layanan baru.
Pilih Kelola Perwakilan Layanan.
Perhatikan nilai dalam Nama tampilan.
Menambahkan penetapan peran
Tetapkan penetapan peran Azure App Configuration yang tepat ke informasi masuk yang digunakan dalam tugas sehingga tugas dapat mengakses penyimpanan Azure App Configuration.
Buka penyimpanan Azure App Configuration target Anda.
Di menu sebelah kiri, pilih Kontrol akses (IAM).
Di panel kanan, pilih Tambahkan penetapan peran.
Di bawahPeran, pilih Pemilik Data Azure App Configuration. Peran ini memungkinkan tugas untuk membaca dari dan menulis ke penyimpanan Azure App Configuration.
Pilih prinsipal perwakilan layanan yang terkait dengan koneksi layanan yang Anda buat di bagian sebelumnya.
Pilih Tinjau + tetapkan.
Menggunakan dalam build
Bagian ini akan membahas cara menggunakan tugas Azure App Configuration Push dalam alur build Azure DevOps.
- Buka halaman alur build dengan mengeklik Alur>Alur. Dokumentasi untuk alur build dapat ditemukan di sini.
- Jika Anda membuat alur build baru, pada langkah terakhir proses yaitu pada tab Tinjau, pilih Tampilkan asisten di sisi kanan alur.
- Jika Anda menggunakan alur build yang sudah ada, klik tombol Edit di kanan atas.
- Jika Anda membuat alur build baru, pada langkah terakhir proses yaitu pada tab Tinjau, pilih Tampilkan asisten di sisi kanan alur.
- Cari Tugas Azure App Configuration Push.
- Konfigurasikan parameter yang diperlukan untuk tugas mendorong kunci-nilai dari file konfigurasi ke penyimpanan App Configuration. Penjelasan parameter tersedia di bagian Parameter di bawah ini, dan di tipsalat di samping setiap parameter.
- Menyimpan dan mengantrekan build. Log build akan menampilkan kegagalan yang terjadi selama pelaksanaan tugas.
Menggunakan dalam rilis
Bagian ini akan membahas cara menggunakan tugas Azure App Configuration Push dalam alur rilis Azure DevOps.
- Buka halaman alur rilis dengan memilih Alur>Rilis. Dokumentasi untuk alur rilis dapat ditemukan di sini.
- Pilih alur rilis yang ada. Jika Anda tidak memiliki alur rilis yang ada, pilih + Baru untuk membuat alur rilis baru.
- Pilih tombol Edit di pojok kanan atas untuk mengedit alur rilis.
- Dari menu drop-down Tugas, pilih Tahap yang ingin Anda tambahkan tugasnya. Informasi lebih lanjut tentang tahap dapat ditemukan di sini.
- Klik + di samping Pekerjaan yang ingin ditambahkan tugas barunya.
- Dalam dialog Tambahkan tugas, ketik Azure App Configuration Push ke dalam kotak pencarian dan pilih.
- Konfigurasikan parameter yang diperlukan dalam tugas untuk mendorong kunci-nilai Anda dari file konfigurasi ke penyimpanan App Configuration Anda. Penjelasan parameter tersedia di bagian Parameter di bawah ini, dan di tipsalat di samping setiap parameter.
- Menyimpan dan mengantrekan rilis. Log rilis akan menampilkan kegagalan yang dialami selama pelaksanaan tugas.
Parameter
Parameter berikut digunakan oleh tugas Azure App Configuration Push:
- Azure subscription: Menu drop-down yang berisi koneksi layanan Azure yang tersedia. Untuk memperbarui dan me-refresh daftar koneksi layanan Azure yang tersedia, tekan tombol Refresh Azure subscription di sebelah kanan kotak teks.
- Titik Akhir App Configuration: Drop-down yang memuat titik akhir penyimpanan konfigurasi yang tersedia di bawah langganan yang dipilih. Untuk memperbarui dan menyegarkan daftar titik akhir penyimpanan konfigurasi yang tersedia, tekan tombol Refresh Titik Akhir Konfigurasi Aplikasi di sebelah kanan kotak teks.
- Jalur File Konfigurasi: Jalur ke file konfigurasi Anda. Parameter Jalur File Konfigurasi dimulai pada akar repositori file. Anda dapat menelusuri artefak build untuk memilih file konfigurasi. (tombol
...
di sebelah kanan kotak teks). Format file yang didukung bergantung pada profil konten file. Untuk profil default, format file yang didukung adalah yaml, json, dan properti. Untuk profil KvSet, format file yang didukung adalah json. - Profil Konten File: Profil konten File Konfigurasi. Nilai defaultnya adalah Default.
- Default: Mengacu pada format file konfigurasi konvensional yang secara langsung dapat dikonsumsi oleh aplikasi.
- Kvset: Mengacu pada skema file yang berisi semua properti nilai kunci App Configuration, termasuk kunci, nilai, label, jenis konten, dan tag. Parameter tugas 'Pemisah', 'Label', 'Tipe konten', 'Awalan', 'Tag', dan 'Kedalaman' tidak berlaku saat menggunakan profil Kvset.
- Mode Impor: Nilai defaultnya adalah Semua. Menentukan perilaku saat mengimpor nilai kunci.
- Semua: Mengimpor semua nilai kunci dalam file konfigurasi ke App Configuration.
- Ignore-Match: Mengimpor hanya pengaturan yang tidak memiliki nilai kunci yang cocok dalam App Configuration. Nilai kunci yang cocok dianggap sebagai nilai kunci dengan kunci, label, nilai, jenis konten, dan tag yang sama.
- Dry Run: Nilai default tidak dicentang.
- Dicentang: Tidak ada pembaruan yang akan dilakukan ke App Configuration. Sebagai gantinya, setiap pembaruan yang akan dilakukan dalam eksekusi normal akan dicetak ke konsol untuk ditinjau.
- Tidak dicentang: Melakukan pembaruan apa pun pada App Configuration dan tidak mencetak ke konsol.
- Pemisah: Pemisah yang digunakan untuk meratakan file .json dan .yml.
- Kedalaman: Kedalaman file .json dan .yml akan diratakan.
- Prefiks: String yang ditambahkan ke awal setiap kunci yang didorong ke penyimpanan App Configuration.
- Label: String yang ditambahkan ke setiap kunci-nilai sebagai label di dalam penyimpanan App Configuration.
- Jenis Konten: String yang ditambahkan ke setiap kunci-nilai sebagai jenis konten dalam penyimpanan App Configuration.
- Tag: Objek JSON dalam format
{"tag1":"val1", "tag2":"val2"}
yang menentukan tag yang ditambahkan ke setiap kunci-nilai yang didorong ke penyimpanan App Configuration Anda. - Hapus nilai kunci yang tidak disertakan dalam file konfigurasi: Nilai default tidak dicentang. Perilaku opsi ini tergantung pada profil konten file konfigurasi.
- Diperiksa:
- Profil konten default: Menghapus semua nilai kunci di penyimpanan App Configuration yang cocok dengan awalan dan label yang ditentukan sebelum mendorong nilai kunci baru dari file konfigurasi.
- Profil konten Kvset: Menghapus semua nilai kunci di penyimpanan App Configuration yang tidak disertakan dalam file konfigurasi sebelum mendorong nilai kunci baru dari file konfigurasi.
- Tidak dicentang: Mendorong semua kunci-nilai dari file konfigurasi ke penyimpanan App Configuration dan membiarkan lainnya tetap utuh di penyimpanan App Configuration.
- Diperiksa:
Pemecahan Masalah
Jika terjadi kesalahan tak terduga, log debug dapat diaktifkan dengan mengatur variabel alur system.debug
ke true
.
FAQ
Bagaimana cara mengunggah beberapa file konfigurasi?
Buat beberapa instans tugas Azure App Configuration Push dalam alur yang sama untuk mendorong beberapa file konfigurasi ke penyimpanan App Configuration.
Bagaimana cara membuat referensi Key Vault atau bendera fitur menggunakan tugas ini?
Bergantung pada profil konten file yang Anda pilih, lihat contoh di dukungan Azure App Configuration untuk file konfigurasi.
Mengapa saya menerima pesan kesalahan 409 saat mencoba mendorong kunci-nilai ke penyimpanan konfigurasi saya?
Pesan kesalahan Konflik 409 akan terjadi jika tugas mencoba menghapus atau menimpa kunci-nilai yang dikunci di penyimpanan App Configuration.