En esta guía, se muestra cómo agrupar marcas, crear versiones a partir de conjuntos y configurar marcas para suscribirse a conjuntos de marcas.
Los conjuntos de marcas son contenedores lógicos para administrar grupos de marcas de funciones relacionadas. A medida que crecen tus aplicaciones y aumenta la cantidad de marcas individuales, administrarlas en una lista plana puede volverse engorroso y propenso a errores.
Los conjuntos de marcas te permiten organizar las marcas según el área funcional, el componente de la aplicación o cualquier otro criterio lógico, lo que proporciona una abstracción de nivel superior para las operaciones de marcas.
Requisitos previos
Antes de comenzar, asegúrate de contar con los siguientes aspectos:
- Un entorno de
gcloudconfigurado para administrar los recursos de App Lifecycle Manager. - Completaste la guía de inicio rápido para implementar marcas de funciones.
Agrupa marcas de funciones
Para agrupar marcas, asócialas con un identificador flag_set durante la creación o actualiza una marca existente. Este identificador crea un límite claro de propiedad y te permite usar los parámetros de configuración establecidos como un solo recurso.
Crea una marca en un conjunto de marcas
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."
Actualiza una marca existente para agregarla a un conjunto de marcas
gcloud beta app-lifecycle-manager flags update "auth-flag" \
--location="global"
--flag-set="auth-module-flags"
Crea una versión a partir de un conjunto de marcas
En lugar de crear manualmente instantáneas puntuales (FlagRevisions) para cada marca, puedes crear un FlagRelease que haga referencia a uno o más conjuntos.
App Lifecycle Manager controla automáticamente la creación de todas las instantáneas inmutables necesarias.
gcloud beta app-lifecycle-manager flags releases create "auth-release-v1.2" \
--location=global \
--flag-sets='["auth-module-flags"]' \
--unit-kind="UNIT_KIND_NAME"
Reemplaza UNIT_KIND_NAME por el tipo de unidad.
Crea una versión para todas las marcas
Puedes establecer el valor booleano all_flags en true para recuperar todas las marcas vinculadas al tipo de unidad del lanzamiento:
gcloud beta app-lifecycle-manager flags releases create "all-flags-release" \
--location=global \
--all-flags \
--unit-kind="UNIT_KIND_NAME"
Cómo consumir un conjunto de marcas
Para suscribirte a un conjunto de marcas, usa un selector cuando inicialices el proveedor de OpenFeature.
Ejemplo de Go:
El selector le indica a la fuente de la marca que filtre este conjunto específico:
provider := flagd.NewProvider(
// The selector tells the flag source to filter for this specific set
flagd.WithSelector("flagSetId=auth-module-flags"),
// ... other options
)
Comportamiento del selector:
- Empty selector: Selecciona solo las marcas que no tienen un ID de conjunto de marcas.
flagSetId=*: Selecciona todas las marcas asociadas a la unidad.flagSetId=X: Selecciona solo las marcas en las que el conjunto es exactamenteX.
¿Qué sigue?
- Obtén más información sobre la segmentación compleja con CEL.
- Obtén más información sobre la arquitectura multiusuario.