En este artículo, se explica cómo agregar, actualizar o eliminar una definición de entorno en un catálogo de Azure Deployment Environments. También se explica cómo hacer referencia a una imagen de contenedor para implementar el entorno.
Una definición de entorno se compone de al menos dos archivos:
Una plantilla de un marco de IaC. Por ejemplo:
Una plantilla de Azure Resource Manager (ARM) podría usar un archivo denominado azuredeploy.json.
Una plantilla de Bicep puede usar un archivo denominado main.bicep.
Una plantilla de Terraform podría usar un archivo denominado azuredeploy.tf.
Un archivo de configuración que proporciona metadatos sobre la plantilla. Este archivo debe denominarse environment.yaml.
Los equipos de desarrollo usan las definiciones de entorno que se proporcionan en el catálogo para implementar entornos en Azure.
Microsoft ofrece un catálogo de ejemplo que puede usar como repositorio. También puede usar su propio repositorio privado, o puede bifurcar y personalizar las definiciones de entorno en el catálogo de ejemplo.
Después de agregue un catálogo al centro de desarrollo, el servicio examina la ruta de acceso de carpeta especificada para identificar las carpetas que contienen una plantilla y un archivo de entorno asociado. La ruta de acceso de carpeta especificada debe ser una carpeta que contenga subcarpetas que contengan los archivos de definición de entorno.
Adición de una definición de entorno
Para agregar una definición de entorno a un catálogo en Azure Deployment Environments (ADE), primero agregue los archivos al repositorio. A continuación, sincronizará el catálogo del centro de desarrollo con el repositorio actualizado.
Para agregar una definición de entorno:
En el repositorio GitHub o Azure DevOps, cree una subcarpeta en la ruta de acceso de la carpeta del repositorio.
Agregue dos archivos a la nueva subcarpeta del repositorio:
Un archivo de plantilla IaC.
Un entorno como un archivo YAML.
El archivoenvironment.yaml contiene metadatos relacionados con la plantilla de IaC.
El siguiente script es un ejemplo del contenido de un archivo environment.yaml para una plantilla de ARM:
Use la tabla siguiente para comprender los campos del archivoenvironment.yaml:
Campo
Descripción
nombre
Nombre de la definición del entorno.
version
Versión de la definición del entorno. Este campo es opcional.
summary
Una breve descripción de la definición del entorno.
descripción
Descripción detallada de la definición del entorno.
Corredor
Marco IaC que usa la plantilla. El valor puede ser ARM o Bicep. También puede especificar una ruta de acceso a una plantilla almacenada en un registro de contenedor.
En el centro de desarrollo, vaya a Catálogos, seleccione el repositorio y, a continuación, seleccione Sincronizar.
El servicio examina el repositorio para buscar nuevas definiciones de entorno. Después de sincronizar el repositorio, las nuevas definiciones de entorno están disponibles para todos los proyectos del centro de desarrollo.
Uso de imágenes de contenedor para implementar entornos
ADE usa imágenes de contenedor para definir cómo se implementan las plantillas para entornos de implementación. ADE admite ARM y Bicep de forma nativa, por lo que puede configurar una definición de entorno que implemente recursos de Azure para un entorno de implementación agregando los archivos de plantilla (azuredeploy.json y environment.yaml) al catálogo. Luego, ADE usa una imagen de contenedor estándar de ARM o Bicep para crear el entorno de implementación.
Puede crear imágenes de contenedor personalizadas para implementaciones de entorno más avanzadas. Por ejemplo, puede ejecutar scripts antes o después de la implementación. ADE admite imágenes de contenedor personalizadas para implementaciones de entorno, lo que puede ayudar a implementar marcos de IaC como Pulumi y Terraform.
El equipo de ADE proporciona imágenes de contenedor de ARM y Bicep de ejemplo accesibles a través del Registro de artefactos Microsoft (también conocido como Microsoft Container Registry) para ayudarle a empezar.
Para obtener más información sobre cómo crear una imagen de contenedor personalizada, consulte:
Especificación de la imagen de contenedor de ejemplo de ARM o Bicep
En el archivo environment.yaml, la propiedad de ejecutor especifica la ubicación de la imagen que desea usar. Para usar la imagen de ejemplo publicada en el Registro de artefactos Microsoft, use los identificadores de ejecutor respectivos, como se enumera en la tabla siguiente.
Marco IaC
Valor del ejecutor
ARM
ARM
Bicep
Bicep
Terraform
Sin imagen de ejemplo. En su lugar, use una imagen de contenedor personalizada.
En el ejemplo siguiente, se muestra un ejecutor que hace referencia a la imagen de contenedor de Bicep de ejemplo:
Especificar parámetros para una definición de entorno
Puede especificar parámetros para las definiciones de entorno para permitir a los desarrolladores personalizar sus entornos.
Los parámetros se definen en el archivo environment.yaml.
El siguiente script es un ejemplo de un archivoenvironment.yaml para una plantilla de ARM que incluye dos parámetros; location y name:
YAML
name:WebAppsummary:AzureWebAppEnvironmentdescription:DeploysawebappinAzurewithoutadatastorerunner:ARMtemplatePath:azuredeploy.jsonparameters:- id:"location" name:"location" description:"Location to deploy the environment resources" default:"[resourceGroup().location]" type:"string" required:false- id:"name" name:"name" description:"Name of the Web App " default:"" type:"string" required:false
Los desarrolladores pueden proporcionar valores para parámetros específicos para sus entornos desde el portal para desarrolladores.
Los desarrolladores también pueden proporcionar valores para parámetros específicos para sus entornos desde la CLI.
Azure CLI
az devcenter dev environment create --environment-definition-name--catalog-name--dev-center--environment-name--environment-type--project[--description][--no-wait][--parameters][--tags][--user][--user-id]
Para modificar la configuración de recursos de Azure en una definición de entorno existente en Azure Deployment Environments, actualice el archivo de plantilla asociado en el repositorio. El cambio se refleja inmediatamente al crear un nuevo entorno mediante la definición de entorno específica. La actualización también se aplica cuando se vuelve a implementar un entorno asociado a esa definición de entorno.
Para actualizar los metadatos relacionados con la plantilla, modifique environment.yaml, y a continuación, actualice el catálogo.
Eliminación de una definición de entorno
Para eliminar una definición de entorno existente, en el repositorio, elimine la subcarpeta que contiene el archivo de plantilla y el archivo YAML del entorno asociado. A continuación, actualice el catálogo.
Después de eliminar una definición de entorno, los equipos de desarrollo ya no pueden usar la definición de entorno específica para implementar un nuevo entorno. Actualice la referencia de definición de entorno para cualquier entorno existente que use la definición de entorno eliminada. Si la referencia no se actualiza y se vuelve a implementar el entorno, se produce un error en la implementación.
Cree un flujo de trabajo de implementación para plantillas de IaC de Bicep. Realice una implementación en varios entornos mediante flujos de trabajo reutilizables. Obtenga información sobre cómo proporcionar parámetros específicos del entorno desde el flujo de trabajo.
Cree soluciones de un extremo a otro en Microsoft Azure para crear Azure Functions, implementar y administrar aplicaciones web, desarrollar soluciones que usen Azure Storage, etc.
Obtenga información sobre cómo definir los tipos de entorno disponibles para todos los proyectos de un centro de desarrollo mediante su creación como tipos de entorno del centro de desarrollo.
Aprenda a configurar los recursos para empezar a trabajar con Azure Deployment Environments. Configure un centro de desarrollo, asocie una identidad y asocie un catálogo para usar plantillas de IaC.
Aprenda a agregar, actualizar y eliminar tipos de entorno de proyecto en entornos de implementación de Azure. Defina la configuración y los permisos de implementación de nivel de proyecto.
Obtenga más información sobre cómo crear y acceder a un entorno en Azure Deployment Environments a través del portal para desarrolladores. Un entorno tiene todos los recursos de Azure preconfigurados para implementar la aplicación.