Udostępnij za pośrednictwem


Tworzenie dostosowań pola deweloperskiego wielokrotnego użytku

Dostosowywanie usługi Microsoft Dev Box to podejście konfiguracji jako kodu do dostosowywania pól deweloperskich. Z tego artykułu dowiesz się, jak dostosować pola deweloperskie przy użyciu katalogu zadań i pliku konfiguracji do instalowania oprogramowania, dodawania rozszerzeń, klonowania repozytoriów i nie tylko. Te zadania są stosowane do nowego pola deweloperskiego na ostatnim etapie procesu tworzenia. Możesz dodać ustawienia i oprogramowanie bez konieczności tworzenia niestandardowego obrazu maszyny wirtualnej.

Dostosowania są przydatne w przypadku zespołów programistycznych. Potencjalni klienci zespołu deweloperów mogą używać dostosowań, aby wstępnie skonfigurować oprogramowanie wymagane dla określonego zespołu deweloperów i tworzyć pliki konfiguracyjne, które stosują tylko zadania związane z ich zespołami. Ta metoda umożliwia deweloperom tworzenie pól deweloperskich, które najlepiej pasują do ich pracy, bez konieczności monitowania o zmiany lub oczekiwania na utworzenie niestandardowego obrazu maszyny wirtualnej przez zespół inżynierów.

Korzystając z dostosowań, można zautomatyzować typowe kroki konfiguracji, zaoszczędzić czas i zmniejszyć prawdopodobieństwo wystąpienia błędów konfiguracji. Oto przykładowe zadania:

  • Instalowanie oprogramowania za pomocą menedżera pakietów WinGet.
  • Ustawianie ustawień systemu operacyjnego, takich jak włączanie funkcji systemu Windows.
  • Konfigurowanie aplikacji, takich jak instalowanie rozszerzeń programu Visual Studio.

Dostosowania można wdrażać na etapach, tworząc od prostej, ale funkcjonalnej konfiguracji do zautomatyzowanego procesu. Etapy są następujące:

  1. Tworzenie dostosowanego pola deweloperskiego przy użyciu przykładowego pliku konfiguracji
  2. Zapisywanie pliku konfiguracji
  3. Udostępnianie pliku konfiguracji z repozytorium kodu
  4. Definiowanie nowych zadań w wykazie
  5. Używanie wpisów tajnych z usługi Azure Key Vault

Ważne

Dostosowania w usłudze Microsoft Dev Box są obecnie dostępne w wersji ZAPOZNAWCZEJ. Zobacz Dodatkowe warunki użytkowania wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta lub wersji zapoznawczej albo w inny sposób nie zostały jeszcze wydane jako ogólnie dostępne.

Wymagania wstępne

Tworzenie dostosowanego pola deweloperskiego przy użyciu przykładowego pliku konfiguracji

Użyj domyślnego wykazu szybki start i przykładowego pliku konfiguracji, aby rozpocząć pracę z dostosowaniami.

Dołączanie wykazu szybkiego startu

Dołączanie wykazu z zadaniami dostosowywania do centrum deweloperów oznacza, że w tym centrum deweloperów można utworzyć pole deweloperskie i odwoływać się do zadań dostosowywania z tego wykazu. Firma Microsoft udostępnia przykładowe repozytorium w usłudze GitHub ze standardowym zestawem zadań domyślnych, które ułatwiają rozpoczęcie pracy, znanym jako wykaz szybkiego startu.

Aby dołączyć katalog Szybki start do centrum deweloperów:

  1. Zaloguj się do portalu deweloperów usługi Microsoft Dev Box.

  2. W menu po lewej stronie w obszarze Konfiguracja środowiska wybierz pozycję Wykazy, a następnie wybierz pozycję Dodaj.

  3. W obszarze Dodaj wykaz wybierz pozycję Zadania dostosowywania pola deweloperskiego jako wykaz szybkiego startu. Następnie wybierz pozycję Dodaj.

  4. W centrum deweloperów wybierz pozycję Wykazy i sprawdź, czy wykaz jest wyświetlany.

    Zrzut ekranu witryny Azure Portal przedstawiający okienko Dodawanie wykazu z wyróżnionymi zadaniami dostosowywania szybkiego startu firmy Microsoft i tworzeniem pól.

    Jeśli połączenie zakończy się pomyślnie, stan zostanie wyświetlony jako Pomyślne zsynchronizowanie.

Tworzenie dostosowanego pola deweloperskiego

Teraz masz katalog, który definiuje zadania, których mogą używać deweloperzy. Możesz odwoływać się do tych zadań z pliku konfiguracji i utworzyć dostosowane pole deweloperskie.

  1. Pobierz przykładową konfigurację yaml z repozytorium przykładów. Ta przykładowa konfiguracja instaluje program Visual Studio Code i klonuje repozytorium aplikacji internetowej SadCore .NET do pola deweloperskiego.

  2. Zaloguj się do portalu deweloperów usługi Microsoft Dev Box.

  3. Wybierz pozycję Nowe>pole deweloperskie.

  4. W polu Dodaj dewelopera wprowadź następujące wartości, a następnie wybierz pozycję Kontynuuj:

    Ustawienie Wartość
    Nazwa/nazwisko Wprowadź nazwę pola deweloperskiego. Nazwy pól deweloperskich muszą być unikatowe w projekcie.
    Projekt Wybierz projekt z listy rozwijanej.
    Pula usługi Dev Box Wybierz pulę z listy rozwijanej, która zawiera wszystkie pule pól deweloperskich dla tego projektu. Wybierz pulę pól deweloperskich w pobliżu, aby uzyskać najmniejsze opóźnienia.
    Stosowanie dostosowań Wybierz pozycję Zastosuj dostosowania.

    Zrzut ekranu przedstawiający opcje dostosowywania pola deweloperskiego w portalu dla deweloperów z wyróżnionymi przekazanymi plikami dostosowywania.

  5. Na stronie Dostosowywanie pola deweloperskiego wybierz pozycję Przekaż plik dostosowywania, a następnie wybierz pozycję Dodaj dostosowania z pliku.

    Zrzut ekranu przedstawiający stronę Dostosowywanie pola deweloperskiego z wyróżnioną pozycją Przekaż plik dostosowywania i Dodaj dostosowania z pliku.

  6. Przejdź do lokalizacji pobranego przykładowego pliku konfiguracji yaml, a następnie wybierz pozycję Otwórz.

  7. Sprawdź, czy plik konfiguracji znajduje się na liście w obszarze Przekaż pliki dostosowywania, a następnie wybierz pozycję Weryfikuj.

    Zrzut ekranu przedstawiający stronę Dostosowywanie pola deweloperskiego z wyświetlonym przekazanym plikiem dostosowywania i wyróżnioną pozycją Weryfikuj.

  8. Po zweryfikowaniu pliku konfiguracji przez usługę Dev Box wybierz pozycję Kontynuuj.

    Zrzut ekranu przedstawiający komunikat o powodzeniu walidacji zadania dostosowywania i wyróżniony przycisk Kontynuuj.

  9. Na stronie podsumowania tworzenia pola deweloperskiego usługa Dev Box wyświetla zadania, które zostaną zastosowane. Wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający stronę podsumowania tworzenia pola deweloperskiego z wyróżnionym przyciskiem Utwórz.

Po zakończeniu procesu tworzenia nowe pole deweloperskie ma zainstalowane oprogramowanie nodejs i Visual Studio Code.

Aby uzyskać więcej przykładów, zobacz repozytorium przykładów centrum deweloperów w witrynie GitHub.

Napiwek

Alternatywą dla portalu deweloperów jest tworzenie, dostosowywanie i łączenie się z polami deweloperskimi za pomocą Strona główna deweloperów. Strona główna deweloperów to natywna aplikacja systemu Windows, która udostępnia jedno miejsce do zarządzania polami deweloperskimi. Dowiedz się więcej o Strona główna deweloperów na stronie Tworzenie dostosowań pola deweloperskiego wielokrotnego użytku za pomocą Strona główna deweloperów.

Co to jest plik konfiguracji?

Dostosowania usługi Dev Box używają pliku sformatowanego yaml, aby określić listę zadań, które mają być stosowane z wykazu podczas tworzenia nowego pola deweloperskiego. Te pliki konfiguracji obejmują co najmniej jedno zadanie podrzędne, które identyfikuje zadanie katalogu i udostępnia parametry, takie jak nazwa oprogramowania do zainstalowania. Plik konfiguracji jest następnie udostępniany deweloperom tworzącym nowe pola deweloperskie. W poniższym przykładzie użyto zadania winget do zainstalowania programu Visual Studio Code i git clone zadania klonowania repozytorium.

# 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

Co to są zadania?

Zadanie wykonuje określoną akcję, na przykład instalowanie oprogramowania. Każde zadanie składa się z co najmniej jednego skryptu programu PowerShell wraz z plikiem task.yaml , który zawiera parametry i definiuje sposób uruchamiania skryptów. Możesz również dołączyć polecenie programu PowerShell do pliku task.yaml. Kolekcję wyselekcjonowanych zadań można przechowywać w wykazie dołączonym do centrum deweloperów, z każdym zadaniem w osobnym folderze. Usługa Dev Box obsługuje używanie repozytorium GitHub lub repozytorium Usługi Azure DevOps jako katalogu i skanuje określony folder wykazu cyklicznie w celu znalezienia definicji zadań.

Firma Microsoft udostępnia wykaz szybkiego startu, który ułatwia rozpoczęcie pracy z dostosowaniami. Zawiera on domyślny zestaw zadań, które definiują typowe zadania:

  • Instalowanie oprogramowania za pomocą menedżera pakietów WinGet.
  • Wdróż konfigurację żądanego stanu (DSC) przy użyciu konfiguracji WinGet.
  • Klonowanie repozytorium przy użyciu narzędzia git-clone.
  • Konfigurowanie aplikacji, takich jak instalowanie rozszerzeń programu Visual Studio.
  • Uruchamianie skryptów programu PowerShell.

Dostosowywanie pola deweloperskiego przy użyciu istniejących plików konfiguracji WinGet

Konfiguracja WinGet przyjmuje podejście konfiguracji jako kodu do definiowania unikatowych zestawów ustawień oprogramowania i konfiguracji wymaganych do uzyskania środowiska systemu Windows w stanie gotowości do kodu. Te pliki konfiguracji mogą również służyć do konfigurowania urządzenia Dev Box przy użyciu zadania WinGet zawartego w podanym wcześniej wykazie szybkiego startu firmy Microsoft.

W poniższym przykładzie przedstawiono plik dostosowywania pola deweloperskiego, który wywołuje istniejący plik DSC WinGet.

tasks:
    - name: winget
      parameters:
          configure: "projectConfiguration.dsc.yaml"

Aby dowiedzieć się więcej na temat konfiguracji winGet, zobacz Konfiguracja winGet.

Uprawnienia wymagane do skonfigurowania urządzenia Microsoft Dev Box na potrzeby dostosowań

Aby wykonać akcje wymagane do utworzenia i zastosowania dostosowań w polu deweloperskim, potrzebne są pewne uprawnienia. W poniższej tabeli opisano akcje i uprawnienia lub role potrzebne do skonfigurowania dostosowań.

Akcja Uprawnienie/rola
Dołączanie wykazu do centrum deweloperów Inżynier platformy z uprawnieniem Współautor do centrum deweloperów.
Przekazywanie i stosowanie pliku yaml podczas tworzenia pola deweloperskiego za pomocą portalu deweloperów Użytkownik usługi Dev Box
Tworzenie pliku konfiguracji Każdy może utworzyć plik konfiguracji.
Dodawanie zadań do wykazu Uprawnienie do dodawania do repozytorium hostujących wykaz.

Zapisywanie pliku konfiguracji

Nowe zadania do zastosowania w polach deweloperskich można zdefiniować, tworząc własny plik konfiguracji. Plik konfiguracji można przetestować w programie Visual Studio Code i wprowadzić wszelkie wymagane zmiany bez konieczności tworzenia oddzielnego pola deweloperskiego dla każdego testu.

Aby można było utworzyć i przetestować własny plik konfiguracji, musi istnieć wykaz zawierający zadania dołączone do centrum deweloperów. Rozszerzenie programu Visual Studio Code umożliwia odnajdywanie zadań w dołączonym wykazie.

  1. Utwórz usługę Dev Box (lub użyj istniejącego urządzenia Dev Box) do testowania.

  2. W polu deweloperskim testowym zainstaluj program Visual Studio Code, a następnie zainstaluj rozszerzenie Programu VS Code usługi Dev Box w wersji 1.2.2.

  3. Pobierz przykładowy plik konfiguracji yaml z repozytorium przykładów i otwórz go w programie Visual Studio Code.

  4. Odnajdywanie zadań dostępnych w wykazie przy użyciu palety poleceń. W obszarze Widok>palety poleceń wybierz pozycję Dev Box: Wyświetl dostępne zadania dla tego pola deweloperskiego.

    Zrzut ekranu programu Visual Studio Code przedstawiający paletę poleceń z wyróżnioną listą narzędzi Dev Box List dla tego pola deweloperskiego.

  5. Przetestuj konfigurację w programie Visual Studio Code przy użyciu palety f5/poleceń. W obszarze Widok>palety poleceń wybierz pozycję Dev Box: Zastosuj zadania dostosowywania.

    Zrzut ekranu programu Visual Studio Code przedstawiający paletę poleceń z wyróżnionymi zadaniami stosowania dostosowań usługi Dev Box.

  6. Plik konfiguracji jest uruchamiany natychmiast, stosując określone zadania do pola deweloperskiego testowego. Sprawdź zmiany i sprawdź terminal programu Visual Studio Code pod kątem błędów lub ostrzeżeń wygenerowanych podczas wykonywania zadania.

  7. Po pomyślnym uruchomieniu pliku konfiguracji udostępnij go deweloperom, aby przekazać je podczas tworzenia nowego pola deweloperskiego.

Napiwek

Alternatywą dla programu Visual Studio Code jest użycie Strona główna deweloperów do utworzenia i zweryfikowania pliku konfiguracji w graficznym interfejsie użytkownika. Dowiedz się więcej o Strona główna deweloperów na stronie Tworzenie dostosowań pola deweloperskiego wielokrotnego użytku za pomocą Strona główna deweloperów.

Uwaga

Możliwość tworzenia i przekazywania pliku nie jest zagrożeniem bezpieczeństwa; przekazany plik może stosować tylko ustawienia zdefiniowane w katalogu dołączonym do centrum deweloperów. Jeśli zadanie nie jest tam zdefiniowane, deweloper otrzyma błąd z informacją, że zadanie nie jest zdefiniowane.

Udostępnianie pliku konfiguracji z repozytorium kodu

Udostępnij plik konfiguracji deweloperom bezproblemowo, nazywając go plikiem workload.yaml i przekazując go do repozytorium dostępnego dla deweloperów, zazwyczaj ich repozytorium kodowania. Podczas tworzenia pola deweloperskiego należy określić adres URL repozytorium, a plik konfiguracji zostanie sklonowany wraz z pozostałą częścią repozytorium. Usługa Dev box przeszukuje repozytorium dla pliku o nazwie workload.yaml, a jeśli znajduje się, wykonuje wymienione zadania. Ta konfiguracja zapewnia bezproblemowy sposób wykonywania dostosowań w polu deweloperskim.

  1. Utwórz plik konfiguracji o nazwie workload.yaml.

  2. Dodaj plik konfiguracji do katalogu głównego prywatnego repozytorium usługi Azure Repos przy użyciu kodu i zatwierdź go.

  3. Zaloguj się do portalu deweloperów usługi Microsoft Dev Box.

  4. Wybierz pozycję Nowe>pole deweloperskie.

  5. W polu Dodaj dewelopera wprowadź następujące wartości, a następnie wybierz pozycję Kontynuuj:

    Ustawienie Wartość
    Nazwa/nazwisko Wprowadź nazwę pola deweloperskiego. Nazwy pól deweloperskich muszą być unikatowe w projekcie.
    Projekt Wybierz projekt z listy rozwijanej.
    Pula usługi Dev Box Wybierz pulę z listy rozwijanej, która zawiera wszystkie pule pól deweloperskich dla tego projektu. Wybierz pulę pól deweloperskich w pobliżu, aby uzyskać najmniejsze opóźnienia.
    Stosowanie dostosowań Wybierz pozycję Zastosuj dostosowania.

    Zrzut ekranu przedstawiający opcje dostosowywania pola deweloperskiego w portalu dla deweloperów z wyróżnionymi przekazanymi plikami dostosowywania.

  6. Na stronie Dostosowywanie pola deweloperskiego wybierz pozycję Wybierz plik dostosowywania z repozytorium, w polu Adres URL repozytorium DevOps platformy Azure wprowadź adres URL repozytorium, które hostuje plik konfiguracji, który chcesz zastosować, a następnie wybierz pozycję Kontynuuj.

    Zrzut ekranu przedstawiający stronę Dostosowywanie pola deweloperskiego z pozycją Wybierz plik dostosowywania z repozytorium i adresem URL repozytorium Usługi Azure DevOps.

  7. Na stronie podsumowania tworzenia pola deweloperskiego usługa Dev Box wyświetla zadania, które zostaną zastosowane. Wybierz pozycję Utwórz.

Po zakończeniu procesu tworzenia nowe pole deweloperskie ma zainstalowane oprogramowanie nodejs i Visual Studio Code.

Nowe pole deweloperskie ma sklonowane repozytorium i wszystkie instrukcje z pliku konfiguracji zastosowane.

Definiowanie nowych zadań w wykazie

Tworzenie nowych zadań w katalogu umożliwia tworzenie dostosowań dostosowanych do zespołów programistycznych i dodawanie barier zabezpieczających wokół możliwych konfiguracji.

  1. Utwórz repozytorium do przechowywania zadań.

    Opcjonalnie możesz utworzyć kopię katalogu szybkiego startu we własnym repozytorium, aby użyć go jako punktu początkowego.

  2. Utwórz zadania w repozytorium, modyfikując istniejące skrypty programu PowerShell lub tworząc nowe skrypty.

    Aby rozpocząć tworzenie zadań, możesz użyć przykładów podanych w repozytorium przykładów centrum deweloperów w witrynie GitHub i dokumentacji programu PowerShell.

  3. Dołącz repozytorium do centrum deweloperów jako wykaz.

  4. Utwórz plik konfiguracji dla tych zadań, wykonując kroki opisane w artykule Zapisywanie pliku konfiguracji.

Używanie wpisów tajnych z usługi Azure Key Vault

Możesz użyć wpisów tajnych z usługi Azure Key Vault w konfiguracjach yaml, aby sklonować repozytoria prywatne lub za pomocą dowolnego niestandardowego zadania, które wymaga tokenu dostępu.

Aby skonfigurować wpisy tajne usługi Key Vault do użycia w konfiguracjach yaml,

  1. Upewnij się, że tożsamość zarządzana projektu centrum deweloperskiego ma rolę Czytelnik usługi Key Vault i Rolę Użytkownika wpisów tajnych usługi Key Vault w magazynie kluczy.

  2. Udziel roli Użytkownik wpisów tajnych dla wpisu tajnego usługi Key Vault dla każdego użytkownika lub grupy użytkowników, którzy powinni mieć możliwość korzystania z wpisu tajnego podczas dostosowywania pola deweloperskiego. Użytkownik lub grupa, któremu udzielono roli, musi zawierać tożsamość zarządzaną centrum deweloperów, własne konto użytkownika oraz dowolny użytkownik lub grupa, który potrzebuje wpisu tajnego podczas dostosowywania pola deweloperskiego.

Aby uzyskać więcej informacji, zobacz:

Wpis tajny można odwołać w konfiguracji yaml w następującym formacie, korzystając z zadania git-clone jako przykładu:

$schema: "1.0"
tasks:
   name: git-clone
   description: Clone this repository into C:\Workspaces
      parameters:
         repositoryUrl: https://myazdo.visualstudio.com/MyProject/_git/myrepo
         directory: C:\Workspaces
         pat: '{{KEY_VAULT_SECRET_URI}}'

Jeśli chcesz sklonować prywatne repozytorium usługi Azure DevOps (Azure Repos), nie musisz konfigurować wpisu tajnego w usłudze Key Vault. Zamiast tego możesz użyć parametru {{ado}}lub {{ado://your-ado-organization-name}} jako parametru. Spowoduje to pobranie tokenu dostępu w Twoim imieniu podczas tworzenia pola deweloperskiego, które ma uprawnienia tylko do odczytu do repozytorium. Zadanie git-clone w wykazie szybkiego startu używa tokenu dostępu do klonowania repozytorium. Oto przykład:

tasks:
   name: git-clone
   description: Clone this repository into C:\Workspaces
      parameters:
         repositoryUrl: https://myazdo.visualstudio.com/MyProject/_git/myrepo
         directory: C:\Workspaces
         pat: '{{ado://YOUR_ADO_ORG}}'

Jeśli zasady organizacji wymagają zachowania prywatności usługi Key Vault z Internetu, możesz ustawić usługę Key Vault tak, aby zezwalała na obejście reguły zapory przez zaufane usługi firmy Microsoft.

Zrzut ekranu przedstawiający konfigurację zapory platformy Azure z wybraną wartością Zezwalaj na zaufane usługi firmy Microsoft obejście tej zapory.

Aby dowiedzieć się, jak zezwolić zaufanym usługi firmy Microsoft na obejście zapory, zobacz Konfigurowanie ustawień sieci usługi Azure Key Vault.