Herbruikbare dev box-aanpassingen maken

In dit artikel leert u hoe u ontwikkelvakken aanpast met behulp van een catalogus met installatietaken en een configuratiebestand voor het installeren van software, het configureren van instellingen en meer. Deze taken worden toegepast op het nieuwe ontwikkelvak in de laatste fase van het aanmaakproces. Microsoft Dev Box-aanpassing is een benadering van configuratie als code voor het aanpassen van ontwikkelvakken. U kunt andere instellingen en software toevoegen zonder dat u een aangepaste VM-installatiekopieën (virtuele machine) hoeft te maken.

Door aanpassingen te gebruiken, kunt u algemene installatiestappen automatiseren, tijd besparen en de kans op configuratiefouten verminderen. Enkele voorbeelden van installatietaken zijn:

  • Software installeren met de WinGet- of Chocolatey-pakketbeheerders.
  • Instellingen voor het besturingssysteem instellen, zoals het inschakelen van Windows-functies.
  • Toepassingen configureren zoals het installeren van Visual Studio-extensies.

U kunt aanpassingen in fasen implementeren, van een eenvoudige maar functionele configuratie tot een geautomatiseerd proces. De fasen zijn als volgt:

  1. Een aangepast dev-vak maken met behulp van een voorbeeldconfiguratiebestand
  2. Een configuratiebestand schrijven
  3. Een configuratiebestand delen vanuit een codeopslagplaats
  4. Nieuwe taken definiëren in een catalogus

Belangrijk

Aanpassingen in Microsoft Dev Box zijn momenteel beschikbaar in PREVIEW. Raadpleeg de Aanvullende voorwaarden voor Microsoft Azure-previews voor juridische voorwaarden die van toepassing zijn op Azure-functies die in bèta of preview zijn of die anders nog niet algemeen beschikbaar zijn.

Teamspecifieke aanpassingsscenario's

Aanpassingen zijn handig wanneer u instellingen moet configureren, software moet installeren, extensies moet toevoegen of algemene besturingssysteeminstellingen wilt instellen, zoals het inschakelen van Windows-functies op uw ontwikkelvakken tijdens de laatste fase van het maken. Potentiële ontwikkelaars kunnen aanpassingen gebruiken om de software die vereist is voor hun specifieke ontwikkelteam vooraf te configureren. Potentiële ontwikkelaars kunnen configuratiebestanden maken die alleen de installatietaken toepassen die relevant zijn voor hun teams. Met deze methode kunnen ontwikkelaars hun eigen ontwikkelvakken maken die het beste bij hun werk passen, zonder dat ze IT hoeven te vragen om wijzigingen of wachten totdat het technische team een aangepaste VM-installatiekopie maakt.

Wat zijn taken?

Een taak voert een specifieke actie uit, zoals het installeren van software. Elke taak bestaat uit een of meer PowerShell-scripts, samen met een task.yaml-bestand dat parameters biedt en definieert hoe de scripts worden uitgevoerd. U kunt ook een PowerShell-opdracht opnemen in het bestand task.yaml. U kunt een verzameling gecureerde installatietaken opslaan in een catalogus die is gekoppeld aan uw ontwikkelaarscentrum, waarbij elke taak zich in een afzonderlijke map bevindt. Dev Box ondersteunt het gebruik van een GitHub-opslagplaats of een Azure DevOps-opslagplaats als catalogus en scant een opgegeven map van de catalogus recursief om taakdefinities te vinden.

Microsoft biedt een snelstartcatalogus waarmee u aan de slag kunt met aanpassingen. Het bevat een standaardset taken waarmee algemene installatietaken worden gedefinieerd:

  • Software installeren met de WinGet- of Chocolatey-pakketbeheerders
  • Een opslagplaats klonen met behulp van git-clone
  • Toepassingen configureren, zoals het installeren van Visual Studio-extensies
  • PowerShell-scripts uitvoeren

In het volgende voorbeeld ziet u een catalogus met gedefinieerde choco-, git-clone-, install-vs-extension- en PowerShell-taken. U ziet dat elke map een task.yaml-bestand en ten minste één PowerShell-script bevat. Task.yaml-bestanden cachescripts en de invoerparameters die nodig zijn om ernaar te verwijzen vanuit configuratiebestanden.

Screenshot showing a catalog with choco, git-clone, install-vs-extension, and PowerShell tasks defined, with a tasks.yaml for each task.

Wat is een configuratiebestand?

Dev Box-aanpassingen maken gebruik van een yaml-bestand om een lijst met taken op te geven die moeten worden toegepast vanuit de catalogus bij het maken van een nieuw ontwikkelvak. Deze configuratiebestanden bevatten een of meer 'taken', waarmee de catalogustaak wordt geïdentificeerd en parameters worden opgegeven, zoals de naam van de software die moet worden geïnstalleerd. Het configuratiebestand wordt vervolgens beschikbaar gesteld aan de ontwikkelaars die nieuwe ontwikkelvakken maken. In het volgende voorbeeld wordt een winget-taak gebruikt om Visual Studio Code te installeren en een git clone taak om een opslagplaats te klonen.

# From https://github.com/microsoft/devcenter-examples
$schema: 1.0
tasks:
  - name: winget
    parameters:
      package: Microsoft.VisualStudioCode
      runAsUser: true
  - name: git-clone
    description: Clone this repository into C:\Workspaces
    parameters:
      repositoryUrl: https://github.com/OrchardCMS/OrchardCore.git
      directory: C:\Workspaces

Vereiste machtigingen voor het configureren van Microsoft Dev Box voor aanpassingen

Als u de acties wilt uitvoeren die nodig zijn om aanpassingen te maken en toe te passen op een ontwikkelvak, hebt u bepaalde machtigingen nodig. In de volgende tabel worden de acties en machtigingen of rollen beschreven die u nodig hebt om aanpassingen te configureren.

Actie Machtiging/rol
Een catalogus koppelen aan een ontwikkelaarscentrum Platformengineer met inzendermachtiging voor het ontwikkelaarscentrum.
De ontwikkelaarsportal gebruiken om een yaml-bestand te uploaden en toe te passen tijdens het maken van een dev box Dev Box-gebruiker
Een configuratiebestand maken Iedereen kan een configuratiebestand maken.
Taken toevoegen aan een catalogus Machtiging om toe te voegen aan de opslagplaats die als host fungeert voor de catalogus.

Vereisten

Als u de stappen in dit artikel wilt uitvoeren, moet u een ontwikkelaarscentrum hebben geconfigureerd met een dev box-definitie, dev box-pool en dev box-project.

Een aangepast dev-vak maken met behulp van een voorbeeldconfiguratiebestand

Gebruik de standaardcatalogus voor snel starten en een voorbeeldconfiguratiebestand om aan de slag te gaan met aanpassingen.

De snelstartcatalogus toevoegen

Als u een catalogus koppelt aan aanpassingstaken in een ontwikkelaarscentrum, kunt u in dat ontwikkelaarscentrum een ontwikkelvak maken en verwijzen naar de aanpassingstaken uit die catalogus. Microsoft biedt een voorbeeldopslagplaats op GitHub met een standaardset standaardtaken om u te helpen aan de slag te gaan, ook wel de snelstartcatalogus genoemd.

De snelstartcatalogus koppelen aan het ontwikkelaarscentrum:

  1. Meld u aan bij de Ontwikkelaarsportal van Microsoft Dev Box.

  2. Selecteer Catalogs in het linkermenu onder Omgevingsconfiguratie en selecteer vervolgens Toevoegen.

  3. Selecteer in Catalogus toevoegen taken voor het aanpassen van dev-vakken als de snelstartcatalogus. Selecteer vervolgens Toevoegen.

  4. Selecteer Catalogs in uw ontwikkelaarscentrum en controleer of uw catalogus wordt weergegeven.

    Screenshot of the Azure portal showing the Add catalog pane with Microsoft's quick start catalog and Dev box customization tasks highlighted.

    Als de verbinding is geslaagd, wordt de status weergegeven als Synchronisatie is geslaagd.

Uw aangepaste ontwikkelvak maken

Nu hebt u een catalogus die de taken definieert die uw ontwikkelaars kunnen gebruiken, kunt u naar deze taken verwijzen vanuit een configuratiebestand en een aangepast ontwikkelvak maken.

  1. Download een yaml-voorbeeldconfiguratie uit de opslagplaats met voorbeelden. Met deze voorbeeldconfiguratie wordt Visual Studio Code geïnstalleerd en wordt de opslagplaats voor de .NET-web-app Van BoomgaardCore naar uw ontwikkelvak gekloond.

  2. Meld u aan bij de Ontwikkelaarsportal van Microsoft Dev Box.

  3. Selecteer nieuw>ontwikkelaarsvak.

  4. Voer in het vak Een dev toevoegen de volgende waarden in:

    Instelling Weergegeven als
    Naam Voer een naam in voor uw ontwikkelvak. Namen van dev-vakken moeten uniek zijn binnen een project.
    Project Selecteer een project in de vervolgkeuzelijst.
    Dev Box-pool Selecteer een pool in de vervolgkeuzelijst, die alle dev box-pools voor dat project bevat. Kies een dev box-pool bij u in de buurt voor minimale latentie.
    Geüploade aanpassingsbestanden Selecteer Een aanpassingsbestand uploaden en upload het configuratiebestand dat u in stap 1 hebt gedownload.

    Screenshot showing the dev box customization options in the developer portal with Uploaded customization files highlighted.

  5. Selecteer Maken.

Wanneer het aanmaakproces is voltooid, is nodejs en Visual Studio Code in het nieuwe ontwikkelvak geïnstalleerd.

Zie de opslagplaats met voorbeelden van ontwikkelaarscentrums op GitHub voor meer voorbeelden.

Een configuratiebestand schrijven

U kunt nieuwe taken definiëren die op uw ontwikkelvakken moeten worden toegepast door uw eigen configuratiebestand te maken. U kunt uw configuratiebestand testen in Visual Studio Code en eventuele vereiste wijzigingen aanbrengen zonder dat u voor elke test een afzonderlijk ontwikkelvak hoeft te maken.

Voordat u uw eigen configuratiebestand kunt maken en testen, moet er een catalogus zijn die taken bevat die zijn gekoppeld aan het ontwikkelaarscentrum. U kunt een Visual Studio Code-extensie gebruiken om de taken in de bijgevoegde catalogus te detecteren.

  1. Maak een Dev Box (of gebruik een bestaande Dev Box) om te testen.

  2. Installeer Visual Studio Code in het test dev-vak en installeer vervolgens de Dev Box v1.2.2 VS Code-extensie.

  3. Download een voorbeeld van een yaml-configuratiebestand uit de opslagplaats met voorbeelden en open het in Visual Studio Code.

  4. Ontdek taken die beschikbaar zijn in de catalogus met behulp van het opdrachtenpalet. Selecteer in het opdrachtenpalet weergeven>de optie Dev Box: Lijst met beschikbare taken voor dit ontwikkelvak.

    Screenshot of Visual Studio Code showing the command palette with Dev Box List available tasks for this dev box highlighted.

  5. Test de configuratie in Visual Studio Code met behulp van f5/opdrachtpalet. Selecteer in het opdrachtenpalet weergeven>de optie Dev Box: Aanpassingstaken toepassen.

    Screenshot of Visual Studio Code showing the command palette with Dev Box Apply customizations tasks highlighted.

  6. Het configuratiebestand wordt onmiddellijk uitgevoerd, waarbij de opgegeven taken worden toegepast op uw testdev box. Inspecteer de wijzigingen en controleer de Visual Studio Code-terminal op eventuele fouten of waarschuwingen die tijdens de taakuitvoering zijn gegenereerd.

  7. Wanneer het configuratiebestand wordt uitgevoerd, deelt u het met ontwikkelaars om te uploaden wanneer ze een nieuw ontwikkelvak maken.

Notitie

De mogelijkheid om een bestand te maken en te uploaden is geen beveiligingsrisico; het geüploade bestand kan alleen instellingen toepassen die zijn gedefinieerd in de catalogus die is gekoppeld aan het ontwikkelaarscentrum. Als de taak daar niet is gedefinieerd, krijgt de ontwikkelaar een foutmelding dat de taak niet is gedefinieerd.

Een configuratiebestand delen vanuit een codeopslagplaats

Maak uw configuratiebestand naadloos beschikbaar voor uw ontwikkelaars door de naam workload.yaml te benoemen en te uploaden naar een opslagplaats die toegankelijk is voor de ontwikkelaars, meestal hun coderingsopslagplaats. Wanneer u een ontwikkelaarsvak maakt, geeft u de URL van de opslagplaats op en wordt het configuratiebestand samen met de rest van de opslagplaats gekloond. In het dev-vak wordt in de opslagplaats gezocht naar een bestand met de naam workload.yaml. Als het bestand zich bevindt, worden de vermelde taken uitgevoerd. Deze configuratie biedt een naadloze manier om aanpassingen uit te voeren op een ontwikkelvak.

  1. Maak een configuratiebestand met de naam workload.yaml.

  2. Voeg het configuratiebestand toe aan de hoofdmap van een persoonlijke Azure DevOps-opslagplaats met uw code en voer het door.

  3. Meld u aan bij de Ontwikkelaarsportal van Microsoft Dev Box.

  4. Selecteer nieuw>ontwikkelaarsvak.

  5. Voer in het vak Een dev toevoegen de volgende waarden in:

    Instelling Weergegeven als
    Naam Voer een naam in voor uw ontwikkelvak. Namen van dev-vakken moeten uniek zijn binnen een project.
    Project Selecteer een project in de vervolgkeuzelijst.
    Dev Box-pool Selecteer een pool in de vervolgkeuzelijst, die alle dev box-pools voor dat project bevat. Kies een dev box-pool bij u in de buurt voor minimale latentie.
    Kloon-URL van opslagplaats Voer de URL in voor de opslagplaats die het configuratiebestand en uw code bevat.

    Screenshot showing the dev box customization options in the developer portal with Repository clone URL highlighted.

  6. Selecteer Maken.

In het nieuwe ontwikkelvak is de opslagplaats gekloond en worden alle instructies uit het configuratiebestand toegepast.

Nieuwe taken definiëren in een catalogus

Door nieuwe taken in een catalogus te maken, kunt u aanpassingen maken die zijn afgestemd op uw ontwikkelteams en kaders toevoegen voor de configuraties die mogelijk zijn.

  1. Maak een opslagplaats om uw taken op te slaan.

    U kunt eventueel een kopie maken van de snelstartcatalogus in uw eigen opslagplaats om te gebruiken als uitgangspunt.

  2. Maak taken in uw opslagplaats door bestaande PowerShell-scripts te wijzigen of nieuwe scripts te maken.

    Als u aan de slag wilt met het maken van taken, kunt u de voorbeelden gebruiken die worden gegeven in de opslagplaats met voorbeelden van ontwikkelaarscentrums op GitHub en PowerShell.

  3. Koppel uw opslagplaats als een catalogus aan uw ontwikkelaarscentrum.

  4. Maak een configuratiebestand voor deze taken door de stappen in Een configuratiebestand schrijven te volgen.