Compartir a través de


Personalizaciones de equipo de Microsoft Dev Box

La introducción de los desarrolladores en un nuevo proyecto o equipo puede ser complejo y lento. La característica de personalizaciones de equipo de Microsoft Dev Box le permiten simplificar la configuración del entorno para desarrolladores. 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.

Puede usar las personalizaciones de equipo a fin de 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. Las personalizaciones de equipo proporcionan 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 manera integrada de optimizar las personalizaciones de Dev Box del equipo al acoplarlas en una imagen personalizada. Se usa el mismo archivo de personalización, sin necesidad de administrar la infraestructura agregada ni mantener plantillas de imagen.

Importante

La característica de personalizaciones de equipo de Dev Box está 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. En el documento se definen los términos legales que se aplican a las características de Azure que están en versión beta, en versión preliminar o que aún no se han publicado con disponibilidad general.

¿Cómo funcionan las personalizaciones de equipo de Dev Box?

Al configurar personalizaciones de equipo de Dev Box para la organización, la planificació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.

Diagrama en el que se muestra el flujo de trabajo para personalizaciones de equipo de Dev Box, incluidos los pasos para planear, configurar e implementar personalizaciones.

  • Configure 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:
      • Use instrucciones de PowerShell o WinGet.
    • Un catálogo propio:
      • Hospedar en Azure Repos o GitHub.
      • Adición de tareas.
      • Se adjunta al centro de desarrollo o al proyecto.
  • Cree un archivo de personalización:
    • cree un archivo de personalización denominado imagedefinition.yaml.
  • Especifique una 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 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. Después, haga que el archivo de personalización esté disponible para los desarrolladores.

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 necesite un token de acceso.

¿Qué son las tareas?

Las tareas de personalización de Dev Box son contenedores para scripts de PowerShell. Se usan para definir componentes reutilizables que los equipos pueden utilizar en sus personalizaciones. WinGet y PowerShell están disponibles como tareas primitivas.

Al crear tareas, determine cuáles se deben ejecutar en el contexto de un sistema y cuáles se pueden ejecutar en el contexto de un usuario (después de iniciar sesión). Las personalizaciones de equipo se pueden ejecutar en ambos contextos. Las personalizaciones individuales solo se pueden ejecutar en un contexto de usuario.

Diferencias entre personalizaciones de equipo e individuales

Los desarrolladores individuales pueden adjuntar un archivo de personalización basado en YAML al crear su equipo de desarrollo para controlar el entorno de desarrollo. Los desarrolladores solo deben usar las personalizaciones individuales 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 puede ir en contra de las directivas de cumplimiento. Las personalizaciones de 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 equipo de desarrollo. De este modo, un desarrollador que crea un equipo de desarrollo no necesita buscar ni cargar un archivo de personalización.

Términos clave

Al trabajar con personalizaciones de equipo de Dev Box, debe estar familiarizado con los siguientes términos clave:

  • Catálogo:
    • se almacena en el repositorio de código o en un repositorio independiente de los 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 desarrolladores.
  • Tarea:
    • realiza 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:
    • define las tareas de los equipos de desarrollo y se basa en YAML.
    • Proporciona una definición de imagen cuando se comparte en un equipo mediante la especificación de la imagen base y las opciones de personalización de un equipo de desarrollo.