Condividi tramite


Personalizzazioni di Microsoft Dev Box

Introdurre i sviluppatori a un nuovo progetto o in un nuovo team è spesso complesso e richiede tempo. La funzionalità di personalizzazione di Microsoft Dev Box consente di semplificare la configurazione dell'ambiente di sviluppo. Con le personalizzazioni, è possibile configurare workstation pronte per il codice con le applicazioni, gli strumenti, i repository, le librerie di codice, i pacchetti e gli script di compilazione necessari.

Le personalizzazioni di Dev Box consentono di:

  • Installare gli strumenti e le applicazioni necessari.
  • Applicare i criteri di sicurezza dell'organizzazione.
  • Garantire la coerenza tra le finestre di sviluppo.

Dev Box offre due modi per usare le personalizzazioni:

  • Personalizzazioni del team: consente di creare una configurazione condivisa standard per un team di sviluppatori invece di creare più immagini standard o dorate per i team.
  • Personalizzazioni utente: usate dagli sviluppatori per creare configurazioni per le proprie preferenze personali. Con le personalizzazioni utente, gli sviluppatori possono archiviare le configurazioni nei file ed eseguirle quando creano finestre di sviluppo. Le personalizzazioni offrono coerenza in tutte le caselle di sviluppo.
Caratteristica / Funzionalità Personalizzazioni del team Personalizzazioni utente
Configura su Pool caselle di sviluppo Dev Box
Le personalizzazioni si applicano a Tutti gli ambienti di sviluppo nel pool Ambiente di sviluppo individuale
Facilmente condivisibile NO
Nome del file di personalizzazioni imagedefinition.yaml myfilename.yaml
Proveniente da Catalogo o repository personale Caricato o proveniente dal repository personale
Supporta i segreti del Key Vault

Che cos'è un file di personalizzazione?

Le personalizzazioni di Dev Box usano un file in formato YAML per specificare un elenco di attività da applicare dal dev center o da un catalogo quando gli sviluppatori creano una casella di sviluppo. Queste attività identificano l'attività del catalogo e forniscono parametri come il nome del software da installare. Gli sviluppatori possono creare file di personalizzazione personalizzati o usare un file di personalizzazione condiviso.

È possibile usare i segreti di Azure Key Vault nel file di personalizzazione per clonare i repository privati. È anche possibile usarli con qualsiasi attività personalizzata creata che richiede un token di accesso.

Che cosa sono le attività?

Le attività di personalizzazione di Dev Box sono wrapper per gli script di PowerShell. È possibile usarli per definire componenti riutilizzabili che i team possono usare nelle personalizzazioni. Le attività winGet e PowerShell sono disponibili tramite la piattaforma. È possibile aggiungerne di nuovi tramite un catalogo. Le attività possono essere eseguite in un contesto di sistema o in un contesto utente dopo l'accesso.

  • Gli amministratori del progetto definiscono le personalizzazioni del team, che possono usare attività personalizzate e predefinite.
  • Le personalizzazioni utente possono usare le attività di sistema solo se l'utente è un amministratore o se le attività sono attività personalizzate preapprovate tramite un catalogo. Gli utenti di Dev Box Standard non possono eseguire attività predefinite di PowerShell e WinGet in un contesto di sistema, che impedisce l'escalation dei privilegi.

Quando si creano attività, determinare quali devono essere eseguite in un contesto di sistema e quali possono essere eseguite in un contesto utente dopo l'accesso.

Differenze tra le personalizzazioni del team e le personalizzazioni degli utenti

Le personalizzazioni del team di Dev Box consentono ai lead del team di sviluppatori e agli amministratori IT di preconfigurare i file di personalizzazione per i pool di dev box. Le personalizzazioni eliminano la necessità per gli sviluppatori di eseguire la configurazione manuale.

È consigliabile usare le personalizzazioni del team per proteggere e standardizzare le distribuzioni di Dev Box per un team. La condivisione di file YAML comuni tra i team di sviluppo può essere inefficiente, causare errori e violare i criteri di conformità.

Oltre alle personalizzazioni del team, i singoli sviluppatori possono caricare un file di personalizzazione quando creano la propria casella di sviluppo per controllare l'ambiente di sviluppo. Gli sviluppatori devono usare le singole personalizzazioni solo per le impostazioni personali e le app.

Come funzionano le personalizzazioni?

Le personalizzazioni del team e le personalizzazioni utente sono entrambi file basati su YAML che specificano un elenco di attività da applicare quando si crea una casella di sviluppo. Selezionare la scheda appropriata per altre informazioni sul funzionamento di ogni tipo di personalizzazione.

Come funzionano le personalizzazioni del team?

È possibile usare le personalizzazioni del team per definire una configurazione di Dev Box condivisa per ognuno dei team di sviluppo senza dover investire nella configurazione di una soluzione di creazione di immagini come Packer o modelli di immagine di macchine virtuali di Azure. Le personalizzazioni dei team offrono un'alternativa leggera che consente ai team di progettazione della piattaforma centrale di delegare la gestione della configurazione di Dev Box ai team che li usano.

Le personalizzazioni del team offrono anche un modo integrato per ottimizzare le configurazioni Dev Box del team appiattendole in un'immagine personalizzata. Si usa lo stesso file di personalizzazione, senza dover gestire l'infrastruttura aggiunta o gestire i modelli di immagine.

La configurazione delle personalizzazioni del team di Dev Box per l'organizzazione richiede un'attenta pianificazione e un processo decisionale informato. Il diagramma seguente offre una panoramica del processo ed evidenzia i punti decisionali chiave.

Diagramma che mostra il flusso di lavoro per le personalizzazioni del team di Dev Box, inclusi i passaggi per la pianificazione, la configurazione e la distribuzione delle personalizzazioni.

Configurare Dev Box per le personalizzazioni del team

Per configurare Dev Box per supportare le personalizzazioni del team, seguire questa procedura:

  1. Configurare il dev center:
    1. Abilitare cataloghi a livello di progetto.
    2. Assegnare le autorizzazioni per gli amministratori del progetto.
  2. Decidere se usare un catalogo con componenti riutilizzabili personalizzati:
    • Predefinito (fornito dalla piattaforma):
      1. Usare le attività predefinite di PowerShell o WinGet (inizia con ~/). È consigliabile iniziare con le attività predefinite.
    • Catalogo personalizzato:
      1. Host in Azure Repos o GitHub.
      2. Aggiungere attività.
      3. Collegarsi a un dev center.
  3. Creare un file di personalizzazione YAML denominato imagedefinition.yaml.
  4. Definire un'immagine in un pool di ambienti di sviluppo
    1. Creare o modificare un pool di box di sviluppo.
    2. Specificare imagedefinition.yaml come definizione dell'immagine.
  5. Scegliere come usare la definizione dell'immagine:
    • Eseguire le attività nella definizione dell'immagine al momento della creazione di ogni finestra di sviluppo.
    • Ottimizzare la definizione dell'immagine in un'immagine personalizzata.
  6. Creare la casella di sviluppo dal pool configurato usando il portale per sviluppatori.

Per altre informazioni sulla personalizzazione del team e sulla scrittura di definizioni di immagini, vedere Scrivere un file di definizione di immagine per le personalizzazioni del team di Dev Box. Per informazioni su come ottimizzare la definizione dell'immagine in un'immagine personalizzata, vedere Configurare l'immagine per le personalizzazioni del team di Dev Box.