Share via


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

En esta guía se explica cómo agregar y configurar un catálogo en el centro de desarrollo de Azure Deployment Environments. Un catálogo es un repositorio hospedado en GitHub o en Azure DevOps.

Los catálogos proporcionan a los equipos de desarrollo un conjunto mantenido de plantillas de infraestructura como código (IaC) denominadas definiciones de entornos.

Deployment Environments admite los catálogos hospedados en Azure Repos (el servicio de repositorio de Azure, comúnmente denominado Azure DevOps) y los catálogos hospedados en GitHub. Azure Repos admite la autenticación mediante la asignación de permisos a una identidad administrada. Azure Repos y GitHub admiten el uso de un token de acceso personal (PAT) para la autenticación. 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 se puede agregar al centro de desarrollo y un catálogo de ejemplo que puede usar 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.

Configuración de una identidad administrada para el centro de desarrollo

Tras crear un centro de desarrollo, para poder adjuntar un catálogo, es preciso configurar una identidad administrada, también denominada "identidad de servicio administrada" (MSI), para el centro de desarrollo. 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). Luego, asigne roles a la identidad administrada para permitir que el centro de desarrollo cree tipos de entorno en la suscripción y lea el proyecto de Azure Repos que contiene el catálogo del repositorio.

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

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 del centro de desarrollo.
  • Agregue el repositorio como catálogo.

Asignación de permisos en Azure Repos para la identidad administrada del centro de desarrollo

Debe conceder permisos de identidad administrada del centro de desarrollo 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.

  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.
    Si usa una MSI asignada por el sistema, especifique el nombre del centro de desarrollo, 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. Asociar el repositorio a un centro de desarrollo 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 Azure Portal, vaya al centro de desarrollo.

  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 del centro de desarrollo, 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.

Actualización de un catálogo

Si actualiza el contenido o la definición de la plantilla en el repositorio adjunto, proporcione el conjunto más reciente de definiciones de entorno a los equipos de desarrollo sincronizando el catálogo.

Para sincronizar un catálogo actualizado en Azure Deployment Environments:

  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 seleccione Sincronizar. El servicio examina 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.

Eliminación de un catálogo

Puede eliminar un catálogo para quitarlo del centro de desarrollo de Azure Deployment Environments. 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, 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.

Errores de sincronización del catálogo

Al agregar o sincronizar un catálogo, es posible que encuentre un error de sincronización. Un error de sincronización indica que algunas de las definiciones de entorno, o todas ellas, tienen errores. 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.