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
- Una suscripción a Azure: cree una cuenta gratuita
- Recurso de App Configuration: cree uno de forma gratuita en Azure Portal.
- Proyecto de Azure DevOps: cree uno gratis.
- Tarea Azure App Configuration Push: descárguela de manera gratuita de Visual Studio Marketplace.
- Nodo 10: para usuarios que ejecutan la tarea en agentes autohospedados.
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.
En Azure DevOps, vaya al proyecto que contiene la canalización de destino. En la esquina inferior izquierda, seleccione Configuración del proyecto.
En Canalizaciones, seleccione Conexiones de servicio. En la esquina superior derecha, seleccione Nueva conexión de servicio.
En Nueva conexión de servicio, seleccione Azure Resource Manager.
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.
Escriba la suscripción y el recurso y un nombre para la 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.
Vaya a Configuración del proyecto > Conexiones de servicio.
Seleccione la nueva conexión de servicio.
Seleccione Administrar entidad de servicio.
Anote el valor de Nombre para mostrar.
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.
Vaya al almacén de App Configuration de destino.
En el menú izquierdo, seleccione Control de acceso (IAM) .
En el panel derecho, seleccione Agregar asignaciones de roles.
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.
Seleccione la entidad de servicio asociada con la conexión de servicio que creó en la sección anterior.
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.
- 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.

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

- 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.
- Busque la tarea de Insertar de Azure App Configuration.

- 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.

- 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 las canalizaciones de versión de Azure DevOps.
- 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í.
- Elija una canalización de versión existente. Si no tiene una, seleccione + Nueva para crear una nueva.
- Seleccione el botón Editar en la esquina superior derecha para editar la canalización de versión.
- 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í.

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

- En el cuadro de diálogo agregar tareas, escriba Inserciones de Azure App Configuration en el cuadro de búsqueda y selecciónela.
- 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.
- 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.
- Nombre de App Configuration: una lista desplegable que carga los almacenes de configuración disponibles para la suscripción seleccionada. Para actualizar la lista de almacenes de configuración disponibles, presione el botón Refresh App Configuration Name (Actualizar nombre 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 son: YAML, JSON y de propiedades. El siguiente es un archivo de configuración de ejemplo en formato JSON.{ "TestApp:Settings:BackgroundColor":"#FFF", "TestApp:Settings:FontColor":"#000", "TestApp:Settings:FontSize":"24", "TestApp:Settings:Message": "Message data" } - 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. - Elimine todos los demás pares clave-valor en el almacén con el prefijo y la etiqueta especificados: El valor predeterminado es Sin activar.
- Activado: 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.
- 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 puedo crear referencias de Key Vault mediante esta tarea?
Para crear referencias de Key Vault, establezca el parámetro "Content Type" en application/vnd.microsoft.appconfig.keyvaultref+json;charset=utf-8. Si no todos los valores de clave de un archivo de configuración son referencias de Key Vault, coloque las referencias de Key Vault y los valores de clave normales en archivos de configuración independientes e insértelos por separado.
¿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.