Panduan ini menunjukkan cara mengelompokkan flag, membuat rilis dari set, dan mengonfigurasi flag untuk berlangganan set flag.
Set tanda adalah penampung logis untuk mengelola grup tanda fitur terkait. Seiring berkembangnya aplikasi Anda dan bertambahnya jumlah masing-masing flag, mengelolanya dalam daftar datar dapat menjadi rumit dan rentan terhadap kesalahan.
Set flag memungkinkan Anda mengatur flag berdasarkan area fungsional, komponen aplikasi, atau kriteria logis lainnya, sehingga memberikan abstraksi tingkat yang lebih tinggi untuk operasi flag.
Prasyarat
Sebelum memulai, pastikan Anda memiliki:
- Lingkungan
gcloudyang dikonfigurasi untuk mengelola resource App Lifecycle Manager. - Selesaikan Panduan memulai tombol fitur deployment.
Mengelompokkan tombol fitur
Untuk mengelompokkan tanda, Anda mengaitkannya dengan ID flag_set selama pembuatan,
atau memperbarui tanda yang ada. ID ini membuat batas kepemilikan yang jelas dan memungkinkan Anda menggunakan setelan tanda sebagai satu resource.
Membuat tanda dalam set tanda
gcloud beta app-lifecycle-manager flags create "auth-flag" \
--key="auth-flag" \
--flag-value-type=BOOL \
--location=global \
--flag-set="auth-module-flags" \
--description="Flag for the core authentication service."
Memperbarui flag yang ada untuk ditambahkan ke set flag
gcloud beta app-lifecycle-manager flags update "auth-flag" \
--location="global"
--flag-set="auth-module-flags"
Membuat rilis dari set tanda
Daripada membuat snapshot pada waktu tertentu (FlagRevisions) secara manual untuk setiap tanda, Anda dapat membuat FlagRelease yang mereferensikan satu atau beberapa set.
App Lifecycle Manager secara otomatis menangani pembuatan semua snapshot tetap yang diperlukan.
gcloud beta app-lifecycle-manager flags releases create "auth-release-v1.2" \
--location=global \
--flag-sets='["auth-module-flags"]' \
--unit-kind="UNIT_KIND_NAME"
Ganti UNIT_KIND_NAME dengan jenis unit Anda.
Membuat rilis untuk semua tanda
Anda dapat menetapkan boolean all_flags ke true untuk mengambil semua tanda yang ditautkan ke
jenis unit peluncuran:
gcloud beta app-lifecycle-manager flags releases create "all-flags-release" \
--location=global \
--all-flags \
--unit-kind="UNIT_KIND_NAME"
Menggunakan set tanda
Untuk berlangganan set flag, gunakan pemilih saat Anda menginisialisasi penyedia OpenFeature.
Contoh Go:
Pemilih memberi tahu sumber tanda untuk memfilter set spesifik ini:
provider := flagd.NewProvider(
// The selector tells the flag source to filter for this specific set
flagd.WithSelector("flagSetId=auth-module-flags"),
// ... other options
)
Perilaku Pemilih:
- Pemilih kosong: Hanya memilih tanda yang tidak memiliki ID set tanda.
flagSetId=*: Memilih semua tanda yang terkait dengan unit.flagSetId=X: Hanya memilih flag yang ditetapkan persis keX.
Langkah berikutnya
- Pelajari Penargetan Kompleks dengan CEL.
- Pelajari Arsitektur Multi-Tenant.