Share via


Adición y configuración de un catálogo desde GitHub o Azure Repos

En este artículo se explica cómo agregar y configurar un catálogo para el centro de desarrollo o el proyecto de entornos de implementación de Azure.

Los catálogos le ayudan a proporcionar un conjunto de plantillas de infraestructura como código (IaC) seleccionadas, conocidas como definiciones de entorno para que los equipos de desarrollo creen entornos. Puede adjuntar su propio repositorio de control de código fuente desde GitHub o Azure DevOps como catálogo y especificar la carpeta con las definiciones de entorno. Los entornos de implementación examinan la carpeta de definiciones de entorno y los pone a disposición de los equipos de desarrollo para crear entornos.

Para proteger mejor sus plantillas, el catálogo está cifrado; Azure Deployment Environments admite el cifrado en reposo con claves de cifrado administradas por la plataforma, que administra Microsoft para servicios de Azure.

  • Para obtener información sobre cómo hospedar un repositorio en GitHub, consulte Introducción a GitHub.
  • Para obtener información sobre cómo hospedar un repositorio de Git en un proyecto de Azure Repos, consulte Azure Repos.

Microsoft ofrece un catálogo de inicio rápido que puede añadir al centro de desarrollo o al proyecto, y un catálogo de muestra que puede utilizar como repositorio. También puede usar un repositorio propio privado, o puede bifurcar y personalizar las definiciones del entorno en el catálogo de ejemplo.

En este artículo aprenderá a:

  1. Configurar catálogos de nivel de proyecto
  2. Configuración de una identidad administrada
  3. Agregar un catálogo desde Azure Repos o GitHub
  4. Actualizar un catálogo
  5. Eliminación de un catálogo
  6. Solución de errores de sincronización de catálogos

Configuración de catálogos de nivel de proyecto

La asociación de catálogos en el nivel de proyecto permite a los ingenieros de plataforma proporcionar definiciones de entorno seleccionadas específicas de los equipos de desarrollo. Además, permite a los clientes potenciales del equipo de desarrollo asignados como administradores de proyectos administrar las definiciones de entorno disponibles para sus equipos.

Los ingenieros de plataforma tienen control total sobre el uso de catálogos en el nivel de proyecto. El uso de catálogos de nivel de proyecto debe estar habilitado en el nivel del centro de desarrollo para poder agregar un catálogo a un proyecto. Los ingenieros de plataforma también pueden configurar qué tipos de elementos de catálogo, como las definiciones de entorno, se pueden consumir en el nivel de proyecto.

De forma predeterminada, el uso de catálogos en el nivel de proyecto está deshabilitado y ninguno de los tipos de elementos de catálogo está habilitado. Las definiciones de entorno de un catálogo de nivel de proyecto se sincronizan y solo se pueden usar cuando ambos catálogos basados en proyectos se activan en el nivel del centro de desarrollo correspondiente y las definiciones de entorno están habilitadas para el proyecto.

Configuración de una identidad administrada

Para poder adjuntar un catálogo a un centro o proyecto de desarrollo, debe configurar una identidad administrada, también denominada Managed Service Identity (MSI). Puede adjuntar una identidad administrada asignada por el sistema (MSI asignada por el sistema) o una identidad administrada asignada por el usuario (MSI asignada por el usuario). A continuación, asigne roles a la identidad administrada para permitir que el centro de desarrollo o el proyecto creen tipos de entorno en la suscripción y lean el proyecto de Azure Repos que contiene el repositorio de catálogos.

Si el centro de desarrollo o el proyecto no tiene un MSI asociado, siga los pasos descritos en Configuración de una identidad administrada crear una y asignar roles para la identidad administrada.

Para más información sobre las identidades administradas, consulte ¿Qué son las identidades administradas para los recursos de Azure?

Adición de un catálogo

Los catálogos se pueden agregar desde un repositorio de Azure Repos o un repositorio de GitHub. Puede optar por autenticarse mediante la asignación de permisos a un MSI o mediante un PAT, que se almacena en un almacén de claves.

Seleccione la pestaña del tipo de repositorio y la autenticación que desea usar.

Para agregar un catálogo, realice las tareas que se indican a continuación:

  • Asigne permisos en Azure Repos para la identidad administrada.
  • Agregue el repositorio como catálogo.

Asigne permisos en Azure Repos para la identidad administrada

Debe conceder permisos de identidad administrada al repositorio en Azure Repos.

  1. Inicie sesión en su organización de Azure DevOps.

    Nota:

    La organización de Azure DevOps debe estar en el mismo directorio que la suscripción de Azure que contiene el centro de desarrollo o el proyecto.

  2. Seleccione Configuración de la organización.

    Captura de pantalla en la que se muestra la página de organización de Azure DevOps, con la configuración de la organización resaltada.

  3. En la página Información general, seleccione Usuarios.

    Captura de pantalla en la que se muestra la página Información general de la organización, con la opción Usuarios resaltada.

  4. En la página Usuarios, seleccione Agregar usuarios.

    Captura de pantalla en la que se muestra la página Usuarios, con la opción Agregar usuario resaltada.

  5. Complete Agregar nuevos usuarios escribiendo o seleccionando la siguiente información y, a continuación, seleccione Agregar:

    NOMBRE Valor
    Usuarios o entidades de servicio Escriba el nombre del centro de desarrollo o el proyecto.
    Cuando se usa una MSI asignada por el sistema, especifique el nombre del centro de desarrollo o el proyecto, no el identificador de objeto de la cuenta administrada. Cuando use una MSI asignada por el usuario, use el nombre de la cuenta administrada.
    Nivel de acceso Seleccione Básica.
    Agregar a proyectos Seleccione el proyecto que contenga el repositorio.
    Grupos de Azure DevOps Seleccione Lectores del proyecto.
    Enviar invitaciones por correo electrónico (solo a usuarios) Desactive la casilla.

    Captura de pantalla en la que se muestra la opción Agregar usuarios, con entradas de ejemplo y la opción Agregar resaltadas.

Adición del repositorio como catálogo

Azure Deployment Environments admite la asociación de repositorios de Azure Repos y de GitHub. Puede almacenar un conjunto de plantillas de IaC seleccionadas en un repositorio. La asociación del repositorio a un centro de desarrollo o proyecto como catálogo proporciona a los equipos de desarrollo acceso a las plantillas y les permite crear rápidamente entornos coherentes.

Los siguientes pasos le permiten adjuntar un repositorio de Azure Repos.

  1. En el Azure Portal, vaya al centro de desarrollo o al proyecto.

  2. En el menú de la izquierda, en Configuración del entorno, seleccione Catálogos y, luego, elija Agregar.

    Captura de pantalla que muestra el panel Catálogos.

  3. En Agregar catálogo, escriba la siguiente información y seleccione Agregar:

    Campo Valor
    Nombre Escriba un nombre para el catálogo.
    Ubicación del catálogo Seleccione Azure DevOps.
    Tipo de autenticación Seleccione Identidad administrada.
    Organización Seleccione la organización de Azure DevOps.
    Proyecto De la lista de proyectos, seleccione el proyecto que almacena el repositorio.
    Repo De la lista de repositorios, seleccione el repositorio que desee agregar.
    Rama Seleccione la rama.
    Folder path (Ruta de acceso a la carpeta) Dev Box recupera una lista de carpetas de la rama. Seleccione la carpeta que almacena las plantillas de IaC.

    Captura de pantalla en la que se muestra el panel Agregar catálogo con entradas de ejemplos y la opción Agregar resaltadas.

  4. En catálogos para el centro de desarrollo o el proyecto, compruebe que aparece el catálogo. Si la conexión se realiza correctamente, el estado se muestra como Sincronización correcta. La conexión a un catálogo podría tardar unos minutos la primera vez.

Ver elementos de catálogo sincronizados

Independientemente del tipo de repositorio que use, puede ver los elementos de catálogo que se sincronizan desde el catálogo.

  1. En el menú izquierdo del centro de desarrollo o proyecto, en Configuración del entorno, seleccione Catálogos.

  2. En el panel Catálogos, seleccione el nombre del catálogo.

    Captura de pantalla que muestra el panel Catálogo, con el nombre del catálogo adjunto resaltado.

  3. Verá una lista de elementos de catálogo sincronizados correctamente.

    Captura de pantalla que muestra los elementos del catálogo sincronizados correctamente desde el catálogo adjunto.

Actualización de un catálogo

Si actualiza la definición o el contenido de la plantilla en el repositorio adjunto, puede proporcionar el conjunto más reciente de definiciones de entorno a los equipos de desarrollo mediante la sincronización del catálogo. Puede sincronizar un catálogo de forma manual o automática.

Sincronizar manualmente un catálogo

Al sincronizar manualmente un catálogo, los entornos de implementación examinan el repositorio y hace que la lista más reciente de definiciones de entorno esté disponible para todos los proyectos asociados en el centro de desarrollo.

  1. En el menú izquierdo del centro de desarrollo, en Configuración del entorno, seleccione Catálogos.

  2. Seleccione el catálogo específico y, a continuación, en la barra de comandos, seleccione Sincronizar.

    Captura de pantalla que muestra el botón Sincronizar en la barra de comandos.

Sincronizar automáticamente un catálogo

Al configurar un catálogo para que se sincronice automáticamente, los entornos de implementación examinan el repositorio cada 30 minutos y hace que la lista más reciente de definiciones de entorno esté disponible para todos los proyectos asociados en el centro de desarrollo.

  1. En el menú izquierdo del centro de desarrollo o proyecto, en Configuración del entorno, seleccione Catálogos.

  2. Seleccione el catálogo específico y, a continuación, seleccione Editar.

    Captura de pantalla que muestra el botón editar de un catálogo.

  3. En el panel Editar catálogo, seleccione Sincronizar automáticamente este catálogo y, a continuación, seleccione Guardar.

    Captura de pantalla que muestra el panel de detalles de edición de un catálogo, con sincronización automática de este catálogo resaltado.

Eliminación de un catálogo

Puede eliminar un catálogo para quitarlo del centro de desarrollo o del proyecto de entornos de implementación de Azure. Las plantillas de un catálogo eliminado no están disponibles para los equipos de desarrollo cuando implementen nuevos entornos. Actualice la referencia de la definición de entorno en los entornos existentes creados mediante las definiciones de entorno del catálogo eliminado. Si la referencia no se actualiza y se vuelve a implementar el entorno, se produce un error en la implementación.

Para eliminar un catálogo:

  1. En el menú izquierdo del centro de desarrollo o proyecto, en Configuración del entorno, seleccione Catálogos.

  2. Seleccione el catálogo específico y seleccione Eliminar.

  3. En el cuadro de diálogo Eliminar catálogo, seleccione Continuar para eliminar el catálogo.

Solución de errores de sincronización de catálogos

Al agregar o sincronizar un catálogo, es posible que encuentre un error de sincronización o una advertencia. Un error de sincronización indica que un catálogo no se pudo sincronizar correctamente, una advertencia de sincronización indica que algunos o todos los elementos del catálogo tienen errores. Puede ver el estado y los errores de sincronización en Azure Portal, o bien usar la CLI de Azure y la API de REST para solucionar y resolver los errores.

Visualización del estado de sincronización del catálogo

En Azure Portal, puede obtener más información sobre el estado de sincronización del catálogo y las advertencias o errores seleccionando el vínculo de estado. El vínculo de estado abre un panel que muestra el estado de sincronización, el número de definiciones de entorno que se agregaron y el número de definiciones de entorno que se ignoraron o no.

Visualización de errores de sincronización del catálogo

  1. En el menú izquierdo del centro de desarrollo o proyecto, en Configuración del entorno, seleccione Catálogos.

  2. En la columna Estado, seleccione el vínculo de estado del catálogo que no se pudo sincronizar.

    Captura de pantalla que muestra el panel Catálogos, con un error de sincronización resaltado.

  3. Verá un panel de detalles que muestra los cambios en la última sincronización, el número de errores de sincronización y el tipo de errores.

    Captura de pantalla que muestra el panel Errores de sincronización del catálogo.

Visualización de advertencias de sincronización de catálogos

  1. En el menú izquierdo del centro de desarrollo o proyecto, en Configuración del entorno, seleccione Catálogos.

  2. En la columna Estado, seleccione el vínculo de estado del catálogo que se sincronice, pero notifique una advertencia.

    Captura de pantalla que muestra el panel Catálogos, con errores en 3 elementos resaltados.

  3. Verá un panel de detalles que muestra los cambios en la última sincronización, el número de errores de elemento y el tipo y el origen de cada error.

    Captura de pantalla que muestra el panel Errores de sincronización del catálogo.

  4. Puede ver los elementos que se han sincronizado correctamente desde un catálogo que también notifica errores de sincronización. En el panel Catálogos, seleccione el nombre del catálogo.

    Captura de pantalla que muestra el panel Catálogo, con un nombre de catálogo resaltado.

  5. Verá una lista de elementos de catálogo sincronizados correctamente.

    Captura de pantalla que muestra los elementos de catálogo sincronizados correctamente.

Solución de errores de sincronización de catálogos mediante la CLI de Azure

Use la CLI de Azure o la API REST para obtener el catálogo. La respuesta de GET muestra el tipo de error:

  • Las definiciones duplicadas se omiten.
  • Definiciones de entorno no válidas que no se pudieron realizar debido a errores de esquema, referencia o validación.

Resolución de errores de definición de entorno omitidos

Si se agregan dos o más definiciones de entorno que tienen el mismo nombre, se produce un error de definición de entorno omitida. Para resolver este problema, cambie el nombre de las definiciones de entorno para que cada una de ellas tenga un nombre único en el catálogo.

Resolución de errores de definición de entorno no válida

Los errores de definición de entorno no válida puede producirse por varios motivos:

  • Errores de esquema de manifiesto. Asegúrese de que el archivo de entorno de la definición del entorno tenga el esquema necesario.

  • Errores de validación. Compruebe los siguientes elementos para resolver los errores de validación:

    • Asegúrese de que el tipo de motor del archivo de entorno esté configurado correctamente.
    • Asegúrese de que el nombre de la definición de entorno tenga entre 3 y 63 caracteres.
    • Asegúrese de que el nombre de la definición del entorno solo incluye caracteres válidos para una dirección URL, es decir, caracteres alfanuméricos y estos símbolos: ~!,.';:=-_+()*&$@
  • Errores de referencia. Asegúrese de que la ruta de acceso de la plantilla a la que hace referencia el archivo de entorno es una ruta relativa válida a un archivo en el repositorio.