Compartir por


Envío de configuraciones a App Configuration con Azure Pipelines

La tarea Azure App Configuration Push envía pares clave-valor de un archivo de configuración en el almacén de App Configuration. Esta tarea habilita la funcionalidad completa dentro de la canalización, ya que ahora es posible extraer la configuración del almacén de App Configuration, así como enviar la configuración al mismo destino.

Requisitos previos

Creación de una conexión de servicio

Una conexión de servicio concede acceso a los recursos en la suscripción de Azure desde el proyecto de Azure DevOps.

  1. En Azure DevOps, vaya al proyecto que contiene la canalización de destino. En la esquina inferior izquierda, seleccione Configuración del proyecto.

  2. En Canalizaciones, seleccione Conexiones de servicio. En la esquina superior derecha, seleccione Nueva conexión de servicio.

  3. En Nueva conexión de servicio, seleccione Azure Resource Manager.

    Screenshot shows selecting Azure Resource Manager from the New service connection dropdown list.

  4. En el cuadro de diálogo Método de autenticación, seleccione Entidad de servicio (automática) para crear una nueva entidad de servicio, o seleccione Entidad de servicio (manual) para usar una entidad de servicio existente.

  5. Escribir la suscripción, grupo de recursos y un nombre para su conexión de servicio.

Si ha creado una nueva entidad de servicio, busque el nombre de la entidad de servicio asignada a la conexión del servicio. En el paso siguiente, agregará una nueva asignación de roles a esta entidad de servicio.

  1. Vaya a Configuración del proyecto>Conexiones de servicio.

  2. Seleccione la nueva conexión de servicio.

  3. Seleccione Administrar entidad de servicio.

  4. Anote el valor de Nombre para mostrar.

    Screenshot shows the service principal display name.

Agregar asignación de roles

Asigne las asignaciones de roles de App Configuration adecuadas a las credenciales que se van a usar en la tarea para que esta pueda acceder al almacén de App Configuration.

  1. Vaya al almacén de App Configuration de destino.

  2. En el menú izquierdo, seleccione Control de acceso (IAM) .

  3. En el panel derecho, seleccione Agregar asignaciones de roles.

    Screenshot shows the Add role assignments button.

  4. En Rol, seleccione Propietario de los datos de App Configuration. Este rol permite que la tarea lea y escriba en el almacén de App Configuration.

  5. Seleccione la entidad de servicio asociada con la conexión de servicio que creó en la sección anterior.

    Screenshot shows the Add role assignment dialog.

  6. Seleccione Revisar y asignar.

Uso en compilaciones

En esta sección se explicará cómo usar la tarea Azure App Configuration Push en una canalización de compilación de Azure DevOps.

  1. Vaya a la página de canalización de compilación al hacer clic en Canalizaciones>Canalizaciones. La documentación para las canalizaciones de compilación se puede encontrar aquí.
    • Si va a crear una nueva canalización de compilación, en el último paso del proceso, en la pestaña Revisar, seleccione Mostrar asistente en el lado derecho de la canalización.

      Screenshot shows the Show assistant button for a new pipeline.

    • Si usa una canalización de compilación existente, haga clic en el botón Editar en la parte superior derecha.

      Screenshot shows the Edit button for an existing pipeline.

  2. Busque la tarea de Insertar de Azure App Configuration.

    Screenshot shows the Add Task dialog with Azure App Configuration Push in the search box.

  3. Configure los parámetros necesarios para que la tarea envíe los pares clave-valor del archivo de configuración al almacén de App Configuration. Las explicaciones de los parámetros están disponibles en la sección Parámetros siguiente y en la información sobre herramientas junto a cada parámetro.

    Screenshot shows the app configuration push task parameters.

  4. Guarde y ponga en cola una compilación. El registro de compilación mostrará los errores que se produjeron durante la ejecución de la tarea.

Uso en versiones

En esta sección se explicará cómo usar la tarea Azure App Configuration Push en una canalización de versión de Azure DevOps.

  1. Vaya a la página de canalización de versión; para ello, seleccione Canalizaciones>Versiones. La documentación para las canalizaciones de versión se puede encontrar aquí.
  2. Elija una canalización de versión existente. Si no tiene una, seleccione + Nueva para crear una nueva.
  3. Seleccione el botón Editar en la esquina superior derecha para editar la canalización de versión.
  4. En el menú desplegable Tareas, seleccione la Fase en la que quiere agregar la tarea. Puede encontrar más información sobre las fases aquí.

    Screenshot shows the selected stage in the Tasks dropdown.

  5. Haga clic en + junto al trabajo al que quiere agregar una nueva tarea.

    Screenshot shows the plus button next to the job.

  6. En el cuadro de diálogo agregar tareas, escriba Inserciones de Azure App Configuration en el cuadro de búsqueda y selecciónela.
  7. Configure los parámetros necesarios dentro de la tarea para enviar los pares clave-valor del archivo de configuración al almacén de App Configuration. Las explicaciones de los parámetros están disponibles en la sección Parámetros siguiente y en la información sobre herramientas junto a cada parámetro.
  8. Guarde y ponga en cola una versión. El registro de versión mostrará los errores que se hayan encontrado durante la ejecución de la tarea.

Parámetros

La tarea App Configuration Push usa los siguientes parámetros:

  • Suscripción de Azure: una lista desplegable que contiene las conexiones de servicio de Azure disponibles. Para actualizar la lista de conexiones de servicio de Azure disponibles, presione el botón Refresh Azure subscription (Actualizar suscripción a Azure) a la derecha del cuadro de texto.
  • App Configuration Endpoint: una lista desplegable que carga el punto de conexión de almacenes de configuración disponible en la suscripción seleccionada. Para actualizar la lista de puntos de conexión de almacenes de configuración disponibles, presione el botón Refresh App Configuration Endpoint (Actualizar punto de conexión de App Configuration) a la derecha del cuadro de texto.
  • Ruta del archivo de configuración: la ruta de acceso a su archivo de configuración. El parámetro Ruta de archivo de configuración comienza en la raíz del repositorio de archivos. Puede examinar el artefacto de compilación para seleccionar un archivo de configuración. (Botón ... a la derecha del cuadro de texto). Los formatos de archivo admitidos dependen del perfil de contenido del archivo. Para el perfil predeterminado, los formatos de archivo admitidos son yaml, json y propiedades. Para el perfil de KvSet, el formato de archivo admitido es json.
  • File Content Profile: perfil de contenido del archivo de configuración. El valor predeterminado es Default.
    • Default: hace referencia a los formatos de archivo de configuración convencionales que las aplicaciones pueden consumir directamente.
    • KvSet: hace referencia a un esquema de archivo que contiene todas las propiedades de un par clave-valor de App Configuration, incluidos la clave, el valor, la etiqueta, el tipo de contenido y las etiquetas. Los parámetros de tarea "Separator", "Label", "Content type", "Prefix", "Tags" y "Depth" no son aplicables cuando se usa el perfil KvSet.
  • Import Mode: el valor predeterminado es All. Determina el comportamiento al importar pares clave-valor.
    • All: importa todos los pares clave-valor en el archivo de configuración a App Configuration.
    • Ignore-Match: importa solo la configuración que no tiene ningún par clave-valor que coincida en App Configuration. Los valores clave coincidentes se consideran pares clave-valor con la misma clave, etiqueta, valor, tipo de contenido y etiquetas.
  • Dry Run: el valor predeterminado es Unchecked.
    • Checked: no se realizarán actualizaciones en App Configuration. En su lugar, las actualizaciones que se hubieran realizado en una ejecución normal se imprimirán en la consola para su revisión.
    • Unchecked: realiza las actualizaciones de App Configuration y no se imprime en la consola.
  • Separador: el separador que se usa para aplanar los archivos .yml y .json.
  • Profundidad: la profundidad con la que se aplanarán los archivos .yml y .json.
  • Prefijo: una cadena que se anexa al principio de cada clave enviada al almacén de App Configuration.
  • Etiqueta: una cadena que se agrega a cada par clave-valor como etiqueta en el almacén de App Configuration.
  • Tipo de contenido: una cadena que se agrega a cada par clave-valor como tipo de contenido en el almacén de App Configuration.
  • Etiquetas: un objeto JSON en el formato {"tag1":"val1", "tag2":"val2"}, que define las etiquetas que se agregaron a cada par clave-valor enviado al almacén de App Configuration.
  • Delete key-values that are not included in the configuration file: el valor predeterminado es Unchecked. El comportamiento de esta opción depende del perfil de contenido del archivo de configuración.
    • Activado:
      • Default content profile: quita todos los pares clave-valor en el almacén de App Configuration que coinciden con el prefijo y la etiqueta especificados antes de enviar nuevos pares clave-valor del archivo de configuración.
      • Kvset content profile: quita todos los pares clave-valor en el almacén de App Configuration que no están incluidos en el archivo de configuración antes de enviar nuevos pares clave-valor del archivo de configuración.
    • Sin activar: envía todos los pares clave-valor del archivo de configuración al almacén de App Configuration y deja intacto el resto del contenido del almacén.

Solución de problemas

Si se produce un error inesperado, los registros de depuración se pueden habilitar; para ello, establezca la variable de canalización system.debug en true.

Preguntas más frecuentes

¿Cómo puedo cargar varios archivos de configuración?

Cree varias instancias de la tarea Azure App Configuration Push dentro de la misma canalización para enviar varios archivos de configuración al almacén de App Configuration.

¿Cómo se pueden crear referencias o marcas de característica de Key Vault mediante esta tarea?

En función del perfil de contenido de archivo que haya seleccionado, consulte ejemplos de la Compatibilidad de Azure App Configuration con el archivo de configuración.

¿Por qué recibo un error 409 al intentar enviar pares clave-valor a mi almacén de configuración?

Se producirá un mensaje de error de conflicto 409 si la tarea intenta quitar o sobrescribir un par clave-valor que está bloqueado en el almacén de App Configuration.