Ce guide vous explique comment regrouper des indicateurs, créer des versions à partir d'ensembles et configurer des indicateurs pour vous abonner à des ensembles d'indicateurs.
Les ensembles de flags sont des conteneurs logiques permettant de gérer des groupes de flags de fonctionnalité associés. À mesure que vos applications se développent et que le nombre d'indicateurs individuels augmente, leur gestion dans une liste à plat peut devenir fastidieuse et source d'erreurs.
Les ensembles d'indicateurs vous permettent d'organiser les indicateurs en fonction de la zone fonctionnelle, du composant d'application ou de tout autre critère logique, ce qui offre une abstraction de niveau supérieur pour les opérations sur les indicateurs.
Prérequis
À vérifier avant de commencer :
- Un environnement
gcloudconfiguré pour gérer les ressources App Lifecycle Manager. - Vous avez terminé le guide de démarrage rapide sur le déploiement de flags de fonctionnalité.
Regrouper les flags de fonctionnalité
Pour regrouper des options, associez-les à un identifiant flag_set lors de la création ou mettez à jour une option existante. Cet identifiant crée une limite claire de propriété et vous permet d'utiliser les indicateurs définis comme une seule ressource.
Créer un flag dans un ensemble de flags
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."
Mettre à jour un indicateur existant pour l'ajouter à un ensemble d'indicateurs
gcloud beta app-lifecycle-manager flags update "auth-flag" \
--location="global"
--flag-set="auth-module-flags"
Créer une version à partir d'un ensemble de flags
Au lieu de créer manuellement des instantanés ponctuels (FlagRevisions) pour chaque indicateur, vous pouvez créer un FlagRelease qui fait référence à un ou plusieurs ensembles.
App Lifecycle Manager gère automatiquement la création de tous les instantanés immuables nécessaires.
gcloud beta app-lifecycle-manager flags releases create "auth-release-v1.2" \
--location=global \
--flag-sets='["auth-module-flags"]' \
--unit-kind="UNIT_KIND_NAME"
Remplacez UNIT_KIND_NAME par votre type d'unité.
Créer une version pour tous les flags
Vous pouvez définir le booléen all_flags sur true pour récupérer tous les indicateurs associés au type d'unité du déploiement :
gcloud beta app-lifecycle-manager flags releases create "all-flags-release" \
--location=global \
--all-flags \
--unit-kind="UNIT_KIND_NAME"
Utiliser un ensemble de flags
Pour vous abonner à un ensemble d'indicateurs, utilisez un sélecteur lorsque vous initialisez le fournisseur OpenFeature.
Exemple Go :
Le sélecteur indique à la source de l'indicateur de filtrer cet ensemble spécifique :
provider := flagd.NewProvider(
// The selector tells the flag source to filter for this specific set
flagd.WithSelector("flagSetId=auth-module-flags"),
// ... other options
)
Comportement du sélecteur :
- Sélecteur vide : ne sélectionne que les indicateurs pour lesquels aucun ID d'indicateur n'est défini.
flagSetId=*: sélectionne tous les indicateurs associés à l'unité.flagSetId=X: ne sélectionne que les indicateurs dont l'ensemble est exactementX.
Étapes suivantes
- En savoir plus sur le ciblage complexe avec CEL
- En savoir plus sur l'architecture multitenant