Personalizaciones del equipo de Microsoft Dev Box
La introducción de los desarrolladores en un nuevo proyecto o equipo puede ser complejo y lento. Las personalizaciones del equipo de Microsoft Dev Box le permiten simplificar la configuración del entorno de desarrollador. Con las personalizaciones de equipo, puede configurar estaciones de trabajo listas para codificar con las aplicaciones, herramientas, repositorios, bibliotecas de código, paquetes y scripts de compilación necesarios. Las personalizaciones de equipo le permiten definir una configuración compartida de Dev Box para cada uno de los equipos de desarrollo sin tener que invertir en configurar una solución de creación de imágenes como Packer o plantillas de imagen de máquina virtual (VM) de Azure. Proporciona una alternativa ligera que permite a los equipos de ingeniería de plataforma central delegar la administración de la configuración de Dev Box a los equipos que los usan. Las personalizaciones de equipo también ofrecen una forma integrada de optimizar las personalizaciones de Dev Box de su equipo acoplándolas a una imagen personalizada mediante el mismo archivo de personalización, sin necesidad de administrar una infraestructura añadida ni de mantener plantillas de imágenes.
Importante
Las personalizaciones del equipo de Dev Box se encuentran actualmente en VERSIÓN PRELIMINAR. Para obtener más información sobre el estado de la versión preliminar, vea los Términos de uso complementarios para las versiones preliminares de Microsoft Azure. El documento define los términos legales que se aplican a las características de Azure que se encuentran en versión beta, versión preliminar o aún no se han publicado en disponibilidad general.
¿Cómo funcionan las personalizaciones del equipo de Dev Box?
Al configurar personalizaciones del equipo de Dev Box para su organización, la planeación cuidadosa y la toma de decisiones informadas son esenciales. El siguiente diagrama proporciona una información general del proceso y resalta los puntos de decisión clave.
- Configurar el centro de desarrollo:
- Habilitar catálogos a nivel de proyecto.
- Asigne permisos para administradores de proyectos.
- Decida si va a usar un catálogo con componentes reutilizables personalizados:
- Centro de desarrollo
- Instrucciones de PowerShell o WinGet.
- Su propio catálogo
- Hospedar en Azure Repos o GitHub.
- Adición de tareas.
- Adjunte al centro de desarrollo o al proyecto.
- Centro de desarrollo
- Cree un archivo de personalizaciones de equipo:
- Cree un archivo de personalizaciones de equipo denominado imagedefinition.yaml.
- Especifique la imagen en un grupo de equipo de desarrollo:
- Cree o modifique un grupo de equipo de desarrollo y especifique imagedefinition.yaml como definición de imagen.
- Elija cómo usará la definición de la imagen:
- Optimice para la personalización del equipo.
- Compile cada vez que cree un equipo de desarrollo.
- Crear equipo de desarrollo:
- Cree el equipo de desarrollo desde el grupo configurado mediante el portal para desarrolladores.
¿Qué es un archivo de personalización?
Las personalizaciones de Dev Box usan un archivo con formato yaml para especificar una lista de tareas que se aplicarán desde el catálogo al crear un nuevo equipo de desarrollo. Estas tareas identifican la tarea de catálogo y proporcionan parámetros como el nombre del software que se va a instalar. A continuación, el archivo de personalización está disponible para los desarrolladores que crean nuevos cuadros de desarrollo.
Puede usar secretos de Azure Key Vault en el archivo de personalización para clonar repositorios privados o con cualquier tarea personalizada que cree que requiera un token de acceso.
¿Qué son las tareas?
Las tareas de personalización de Dev Box son contenedores para scripts de PowerShell, lo que le permite como equipo de plataforma definir componentes reutilizables que los equipos pueden usar en sus personalizaciones. WinGet y PowerShell están disponibles como tareas primitivas de fábrica.
Al crear tareas, determine cuáles deben ejecutarse en un contexto de SISTEMA y cuáles pueden ejecutarse después de iniciar sesión, en un contexto de usuario. Las personalizaciones de equipo se pueden ejecutar en un contexto de SISTEMA y en un contexto de usuario (después del inicio de sesión). Las personalizaciones individuales solo se pueden ejecutar en un contexto de usuario.
Diferencias entre personalizaciones individuales y de equipo
Los desarrolladores individuales pueden adjuntar un archivo de personalización basado en yaml al crear su Dev Box para controlar el entorno de desarrollo en su Dev Box. Las personalizaciones individuales solo deben usarse para la configuración personal y las aplicaciones. Las tareas especificadas en el archivo de personalización individual solo se ejecutan en el contexto de usuario, después del inicio de sesión. Aunque los equipos de desarrolladores pueden compartir archivos yaml comunes, este enfoque puede ser ineficaz y propenso a errores, además de ir en contra de las directivas de cumplimiento. Las personalizaciones del equipo de Dev Box proporcionan un flujo de trabajo para los líderes del equipo de desarrolladores, administradores de proyectos y administradores del centro de desarrollo para preconfigurar los archivos de personalización en los grupos de Dev Box. De este modo, un desarrollador que crea un equipo de desarrollo no necesita encontrar ni cargar un archivo de personalización para sí mismo.
Términos clave
Al trabajar con personalizaciones de equipo de Dev Box, debe estar familiarizado con los siguientes términos clave:
- Catálogo
- Se puede almacenar en el repositorio de código o en un repositorio independiente de archivos de personalización.
- Hospedado en GitHub o Azure Repos.
- Se adjunta al centro de desarrollo o al proyecto para que las tareas sean accesibles al equipo de desarrollo.
- Tareas
- Realice acciones específicas, como la instalación de software.
- Consta de uno o varios scripts de PowerShell y un archivo task.yaml.
- Archivo de personalización
- Archivo basado en Yaml que define tareas para equipo de desarrollo.
- Cuando se comparte en un equipo, es un definición de imagen y especifica la imagen del cuadro de desarrollo base, junto con sus opciones de personalización.