

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Creación de una marca de características con múltiples variantes
<a name="appconfig-creating-multi-variant-feature-flags-procedures"></a>

Utilice los procedimientos de esta sección para crear variantes de una marca de características.

**Antes de empezar**  
Tenga en cuenta la siguiente información importante.
+ Puede crear variantes de marcas de características existentes editándolas. No puede crear variantes de una nueva marca de características *al crear un nuevo perfil de configuración*. Primero debe completar el flujo de trabajo de creación del nuevo perfil de configuración. Tras crear el perfil de configuración, puede añadir variantes a cualquier marca del perfil de configuración. Para obtener información acerca de cómo crear un nuevo perfil de configuración, consulte [Crear un perfil de configuración de indicadores de características en AWS AppConfig](appconfig-creating-configuration-and-profile-feature-flags.md).
+ Para recuperar datos de variantes de indicadores de características para las plataformas informáticas Amazon EC2, Amazon ECS y Amazon EKS, debe usar la versión 2.0.4416 o posterior del AWS AppConfig agente.
+ Por motivos de rendimiento, AWS CLI y el SDK exige AWS AppConfig no recuperar datos de variantes. Para obtener más información sobre AWS AppConfig Agent, consulte[Cómo usar el AWS AppConfig agente para recuperar los datos de configuración](appconfig-agent-how-to-use.md).
+ Al crear una variante de marca de características, debe especificar una regla para ella. Las reglas son expresiones que toman el contexto de la solicitud como entrada y producen un resultado booleano como salida. Antes de crear variantes, revise los operandos y operadores admitidos para las reglas de variantes de marca. Puede crear reglas antes de crear variantes. Para obtener más información, consulte [Descripción de las reglas de marca de características con múltiples variantes](appconfig-creating-multi-variant-feature-flags-rules.md).

**Topics**
+ [Creación de una marca de características con múltiples variantes (consola)](#appconfig-creating-multi-variant-feature-flags-procedures-console)
+ [Creación de una marca de características con múltiples variantes (línea de comandos)](#appconfig-creating-multi-variant-feature-flags-procedures-commandline)

## Creación de una marca de características con múltiples variantes (consola)
<a name="appconfig-creating-multi-variant-feature-flags-procedures-console"></a>

El siguiente procedimiento describe cómo crear un indicador de función con varias variantes para un perfil de configuración existente mediante la AWS AppConfig consola. También puede editar marcas de características existentes para crear variantes.

**Cómo crear una marca de características con múltiples variantes**

1. Abra la AWS Systems Manager consola en [https://console.aws.amazon.com/systems-manager/appconfig/](https://console.aws.amazon.com/systems-manager/appconfig/).

1. En el panel de navegación, elija **Aplicaciones**, y, a continuación, seleccione una aplicación.

1. En la pestaña **Perfiles de configuración y marcas de características**, elija un perfil de configuración de marca de características existente.

1. En la sección **Marcas**, elija **Agregar nueva marca**.

1. En la sección **Definición de marca de características**, en **Nombre de la marca**, introduzca un nombre.

1. En **Clave de marca**, introduzca un identificador de marca para distinguir las marcas del mismo perfil de configuración. Las marcas del mismo perfil de configuración no puede tener la misma clave. Una vez creada la marca, puede editar el nombre de la marca, pero no su clave. 

1. (Opcional) En el campo **Descripción**, introduzca información sobre esta marca.

1. En la sección **Variantes**, seleccione **Marca multivariante**.

1. (Opcional) En la sección **Atributos de la marca de características**, elija **Definir atributo**. Los atributos le permiten proporcionar valores adicionales dentro de su marca. Para obtener más información sobre los atributos y las restricciones, consulte [Descripción de los atributos de las marcas de características](appconfig-creating-configuration-and-profile-feature-flags.md#appconfig-creating-configuration-profile-feature-flag-attributes).

   1. En **Clave**, especifique una clave de marca y elija su tipo en la lista **Tipo**. Para obtener información sobre las opciones admitidas en los campos **Valor** y **Restricciones**, consulte la sección sobre los atributos a la que se ha hecho referencia anteriormente.

   1. Seleccione **Valor obligatorio** para especificar si se requiere un valor de atributo.

   1. Para añadir atributos adicionales, elija **Definir atributo**.

   1. Seleccione **Aplicar** para guardar los cambios en los atributos.

1. En la sección **Variantes de la marca de características**, seleccione **Crear variante**.

   1. En **Nombre de la variante**, introduzca un nombre.

   1. Use la opción **Valor activado** para habilitar la variante.

   1. En el cuadro de texto **Regla**, introduzca una regla.

   1. Use las opciones **Crear variante** > **Crear variante arriba** o **Crea una variante a continuación** para crear variantes adicionales para esta marca. 

   1. En la sección **Variante predeterminada**, use la opción **Valor activado** para habilitar la variante predeterminada. Si lo desea, proporcione valores para los atributos definidos en el paso 10.

   1. Seleccione **Aplicar**.

1. Compruebe los detalles de la marca y sus variantes, y elija **Crear marca**.

Para obtener información sobre cómo implementar su nueva marca de características con variantes, consulte [Implementación de indicadores de características y datos de configuración en AWS AppConfig](deploying-feature-flags.md).

## Creación de una marca de características con múltiples variantes (línea de comandos)
<a name="appconfig-creating-multi-variant-feature-flags-procedures-commandline"></a>

El siguiente procedimiento describe cómo utilizar AWS Command Line Interface (en Linux o Windows) o las Herramientas para Windows PowerShell para crear un indicador de función con varias variantes para un perfil de configuración existente. También puede editar marcas de características existentes para crear variantes.

**Antes de empezar**  
Complete las siguientes tareas antes de crear una marca de características con múltiples variantes utilizando AWS CLI.
+ Cree un perfil de configuración de marca de características. Para obtener más información, consulte [Crear un perfil de configuración de indicadores de características en AWS AppConfig](appconfig-creating-configuration-and-profile-feature-flags.md).
+ Actualice a la versión de AWS CLI más reciente. Para obtener más información, consulte [Instalación o actualización a la última versión de AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) en la *Guía del usuario de la AWS Command Line Interface *.

**Cómo crear una marca de características con múltiples variantes**

1. Cree un archivo de configuración en su equipo local que especifique los detalles de la marca con múltiples variantes que desea crear. Guarde el archivo con una extensión de archivo `.json`. El archivo debe cumplir con el esquema JSON de [https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-type-reference-feature-flags.html](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-type-reference-feature-flags.html). El contenido del esquema del archivo de configuración será similar al siguiente.

   ```
   {
     "flags": {
       "FLAG_NAME": {
         "attributes": {
             "ATTRIBUTE_NAME": {
             "constraints": {
               "type": "CONSTRAINT_TYPE"
             }
           }
         },
         "description": "FLAG_DESCRIPTION",
         "name": "VARIANT_NAME"
       }
     },
     "values": {
       "VARIANT_VALUE_NAME": {
         "_variants": [
           {
             "attributeValues": {
               "ATTRIBUTE_NAME": BOOLEAN
             },
             "enabled": BOOLEAN,
             "name": "VARIANT_NAME",
             "rule": "VARIANT_RULE"
           },
           {
             "attributeValues": {
               "ATTRIBUTE_NAME": BOOLEAN
             },
             "enabled": BOOLEAN,
             "name": "VARIANT_NAME",
             "rule": "VARIANT_RULE"
           },
           {
             "attributeValues": {
               "ATTRIBUTE_NAME": BOOLEAN
             },
             "enabled": BOOLEAN,
             "name": "VARIANT_NAME",
             "rule": "VARIANT_RULE"
           },
           {
             "attributeValues": {
               "ATTRIBUTE_NAME": BOOLEAN
             },
             "enabled": BOOLEAN,
             "name": "VARIANT_NAME",
             "rule": "VARIANT_RULE"
           }
         ]
       }
     },
     "version": "VERSION_NUMBER"
   }
   ```

   A continuación, se muestra un ejemplo con tres variantes y la variante predeterminada.

   ```
   {
     "flags": {
       "ui_refresh": {
         "attributes": {
           "dark_mode_support": {
             "constraints": {
               "type": "boolean"
             }
           }
         },
         "description": "A release flag used to release a new UI",
         "name": "UI Refresh"
       }
     },
     "values": {
       "ui_refresh": {
         "_variants": [
           {
             "attributeValues": {
               "dark_mode_support": true
             },
             "enabled": true,
             "name": "QA",
             "rule": "(ends_with $email \"qa-testers.mycompany.com\")"
           },
           {
             "attributeValues": {
               "dark_mode_support": true
             },
             "enabled": true,
             "name": "Beta Testers",
             "rule": "(exists key::\"opted_in_to_beta\")"
           },
           {
             "attributeValues": {
               "dark_mode_support": false
             },
             "enabled": true,
             "name": "Sample Population",
             "rule": "(split pct::10 by::$email)"
           },
           {
             "attributeValues": {
               "dark_mode_support": false
             },
             "enabled": false,
             "name": "Default Variant"
           }
         ]
       }
     },
     "version": "1"
   }
   ```

1. Utilice la API de `CreateHostedConfigurationVersion` para guardar los datos de configuración de su marca de características en AWS AppConfig.

------
#### [ Linux ]

   ```
   aws appconfig create-hosted-configuration-version \
     --application-id APPLICATION_ID \
     --configuration-profile-id CONFIGURATION_PROFILE_ID \
     --content-type "application/json" \
     --content file://path/to/feature_flag_configuration_data.json \
     --cli-binary-format raw-in-base64-out \
     outfile
   ```

------
#### [ Windows ]

   ```
   aws appconfig create-hosted-configuration-version ^
     --application-id APPLICATION_ID ^
     --configuration-profile-id CONFIGURATION_PROFILE_ID ^
     --content-type "application/json" ^
     --content file://path/to/feature_flag_configuration_data.json ^
     --cli-binary-format raw-in-base64-out ^
     outfile
   ```

------
#### [ PowerShell ]

   ```
   New-APPCHostedConfigurationVersion `
     -ApplicationId APPLICATION_ID `
     -ConfigurationProfileId CONFIGURATION_PROFILE_ID `
     -ContentType "application/json" `
     -Content file://path/to/feature_flag_configuration_data.json `
     -Raw
   ```

------

   `service_returned_content_file`Contiene los datos de configuración, que incluyen algunos metadatos AWS AppConfig generados.
**nota**  
Al crear la versión de configuración alojada, AWS AppConfig verifica que los datos se ajusten al esquema [https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-type-reference-feature-flags.html](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-type-reference-feature-flags.html)JSON. AWS AppConfig además, valida que cada atributo del indicador de entidad de sus datos satisfaga las restricciones que ha definido para esos atributos.