Testreszabási fájl írása fejlesztői dobozhoz
Ebből a cikkből megtudhatja, hogyan hozhat létre és tesztelhet testreszabási fájlokat a dev boxhoz a Visual Studio Code (VS Code) és a Fejlesztői főoldal használatával.
A Testreszabási fájlok kétféleképpen használhatók a Microsoft Dev Boxban. A csapat testreszabása automatikusan megtörténik, amikor a fejlesztők készleten konfigurálják őket. Az egyéni testreszabások akkor lesznek alkalmazva, amikor egy felhasználó létrehoz egy fejlesztői mezőt.
Ez a cikk segít meghatározni az új feladatokat a testreszabási fájlban, alkalmazni őket a fejlesztői mezőkre, és tesztelni ezeket a testreszabásokat közvetlenül a VS Code-ban.
Fontos
A Dev Box csapat testreszabási funkciója jelenleg előzetes verzióban érhető el. Az előzetes verzió állapotával kapcsolatos további információkért tekintse meg a Microsoft Azure Előzetes verzió kiegészítő használati feltételeit. A dokumentum olyan jogi feltételeket határoz meg, amelyek a bétaverzióban, előzetes verzióban vagy egyébként még nem általánosan elérhető Azure-funkciókra vonatkoznak.
Előfeltételek
A cikkben ismertetett lépések végrehajtásához a következőket kell tennie:
- Konfiguráljon egy fejlesztői központot dev box definícióval, dev box-készlettel és dev box-projekttel , hogy létrehozhasson egy dev boxot.
- Legyen legalább egy projekt Dev Box Users biztonsági csoportjának tagja.
- Csatoljon egy katalógust a fejlesztői központhoz a testreszabási fájlban használható feladatokkal. Ha nem rendelkezik katalógussal, olvassa el a Katalógus hozzáadása és konfigurálása a GitHubról vagy az Azure Reposból című témakört.
A testreszabások konfigurálásához szükséges engedélyek
A testreszabások fejlesztői mezőre történő létrehozásához és alkalmazásához szükséges műveletek végrehajtásához a következő engedélyekre van szüksége:
Művelet | Engedély/szerepkör |
---|---|
Projektszintű katalógusok engedélyezése fejlesztői központhoz. | Platformmérnök írási hozzáféréssel az előfizetésen. |
Projekt katalógusszinkronizálási beállításainak engedélyezése. | Platformmérnök írási hozzáféréssel az előfizetésen. |
Katalógus csatolása egy projekthez. | Projektadminisztrátori vagy közreműködői engedélyek a projekten. |
Testreszabási fájl létrehozása. | Nincs megadva. A testreszabási fájlokat bárki létrehozhatja. |
A fejlesztői portál használatával yaML-fájlt tölthet fel és alkalmazhat a fejlesztői doboz létrehozása során. | Dev Box-felhasználó. |
Tevékenységek hozzáadása katalógushoz. | Engedély a katalógust üzemeltető adattárhoz való hozzáadáshoz. |
Mi az a testreszabási fájl?
A Dev Box testreszabásai YAML formátumú fájllal adhatók meg a fejlesztő által létrehozott fejlesztői dobozok által alkalmazandó feladatok listájaként. Ezek a feladatok lehetnek olyan egyszerűek, mint egy csomag telepítése, vagy olyan kifinomultak, mint egy összetett szkriptkészlet futtatása a kódbázis beállításához. A feladatok azonosítják a katalógust, és olyan paramétereket adnak meg, mint a telepíteni kívánt szoftver neve. A testreszabási fájl ezután elérhetővé válik a fejlesztői mezőket létrehozó fejlesztők számára.
Az alábbi példa egy winget
feladatot használ a VS Code telepítéséhez, egy git-clone
feladatot pedig egy adattár klónozásához:
# 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
A testreszabási fájlok kétféleképpen használhatók: az egyes testreszabások egyetlen fejlesztői dobozra vonatkoznak, a csapat testreszabásai pedig egy egész csapatra vonatkoznak.
Egyéni testreszabási fájlok
- Olyan feladatokat tartalmaz, amelyek akkor lesznek alkalmazva, amikor egy fejlesztő létrehoz egy fejlesztői mezőt.
- A fejlesztő feltölti egy fejlesztői doboz létrehozásakor.
Csapat testreszabási fájljai
- Olyan feladatokat tartalmaz, amelyek akkor lesznek alkalmazva, amikor egy fejlesztő létrehoz egy fejlesztői mezőt.
- Megosztottak egy csapatban vagy projektben.
- Adjon meg egy mezőt, amely meghatározza az alaprendszerképet.
- A neve imagedefinition.yaml.
- A rendszer feltölti a katalógust üzemeltető adattárba.
- A rendszer automatikusan használja, ha egy fejlesztő létrehoz egy fejlesztői mezőt egy konfigurált készletből.
Fontos
A képdefiníciók csak a Dev Box marketplace-rendszerképeket használhatják alapképként. A fejlesztői központ által elérhető képek listájának lekéréséhez használja ezt az Azure CLI-parancsot:
az devcenter admin image list --dev-center-name CustomizationsImagingHQ --resource-group TeamCustomizationsImagingRG --query "[].name"
Testreszabási fájl létrehozása
Testreszabási fájlokat a VS Code használatával hozhat létre és kezelhet. A VS Code Microsoft Dev Box bővítményével felderítheti a csatolt katalógusban található feladatokat, és tesztelheti a testreszabási fájlt.
Hozzon létre egy fejlesztői dobozt (vagy használjon egy meglévő fejlesztői dobozt) a teszteléshez.
A teszt dev boxban telepítse a VS Code-ot, majd telepítse a Dev Box bővítményt.
Töltsön le egy példa YAML testreszabási fájlt a mintaadattárból, és nyissa meg a VS Code-ban.
A parancskatalógus használatával felderítheti a katalógusban elérhető feladatokat. Válassza a Nézet parancskatalógus dev box: List Available Tasks for this Dev Box(Parancskatalógus>megtekintése>) lehetőséget.
Tesztelje a testreszabást a VS Code-ban a parancskatalógus használatával. Válassza a Parancskatalógus>megtekintése>– Fejlesztői mező: Testreszabási feladatok alkalmazása lehetőséget.
A testreszabási fájl azonnal lefut, és alkalmazza a megadott feladatokat a teszt fejlesztői mezőjére. Vizsgálja meg a módosításokat, és ellenőrizze a VS Code-terminálon a feladat végrehajtása során keletkező hibákat vagy figyelmeztetéseket.
Ha a testreszabási fájl sikeresen lefut, töltse fel a katalógusba.
Privát adattár klónozása testreszabási fájl használatával
A YAML-testreszabásokban az Azure Key Vault titkos kulcsait használhatja magánadattárak klónozásához, vagy bármely olyan egyéni feladattal, amelyhez hozzáférési jogkivonatra van szükség. A csapat testreszabási fájljában egy kulcstartóban tárolt személyes hozzáférési jogkivonatot (PAT) használhat egy privát adattár eléréséhez.
Kulcstartó titkos kulcskódjainak használata a csapat testreszabási fájljaiban
Privát adattár klónozásához tárolja a PAT-t kulcstartó-titkos kulcsként, és használja azt, amikor a feladatot a git-clone
testreszabás során invokálja.
A kulcstartó titkos kulcsainak konfigurálása a YAML-testreszabásokban való használatra:
- Győződjön meg arról, hogy a fejlesztői központ projektjének felügyelt identitása rendelkezik a Key Vault Olvasó szerepkörével és a Key Vault titkos kulcstartójának felhasználói szerepkörével a kulcstartón.
- Adja meg a Key Vault titkos kulcsainak felhasználói szerepkörét minden olyan felhasználónak vagy felhasználói csoportnak, amely a dev box testreszabása során felhasználhatja a titkos kulcsot. A szerepkört kapó felhasználónak vagy csoportnak tartalmaznia kell a fejlesztői központ felügyelt identitását, a saját felhasználói fiókját, valamint minden olyan felhasználót vagy csoportot, akinek szüksége van a titkos kódra a fejlesztői doboz testreszabása során.
További információk:
- Felügyelt identitás konfigurálása fejlesztői központhoz
- A felügyelt identitás hozzáférésének biztosítása a kulcstartó titkos kulcsához
A YAML-testreszabás titkos kódjára a következő formátumban hivatkozhat, amely példaként használja a git-clone
feladatot:
$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}}'
Key Vault-titkos kulcsok használata egyéni testreszabási fájlokban
Ha privát Azure-adattárat szeretne klónozni egy egyéni testreszabási fájlból, nem kell titkos kulcsokat konfigurálnia az Azure Key Vaultban. Ehelyett használhatja {{ado}}
vagy {{ado://your-ado-organization-name}}
paraméterként is használhatja. Ez a paraméter lekéri a hozzáférési jogkivonatot az Ön nevében egy fejlesztői mező létrehozásakor. A hozzáférési jogkivonat írásvédett engedéllyel rendelkezik az adattárhoz.
A git-clone
rövid útmutatókatalógus feladata a hozzáférési jogkivonat használatával klónozza az adattárat. Példa:
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}}'
A fejlesztői központnak hozzá kell férnie a kulcstartóhoz. A fejlesztői központok nem támogatják a szolgáltatáscímkéket, ezért ha a kulcstartó privát marad, engedélyeznie kell a megbízható Microsoft-szolgáltatások a tűzfal megkerülését.
Ha tudni szeretné, hogyan engedélyezheti a megbízható Microsoft-szolgáltatások a tűzfal megkerülését, olvassa el az Azure Key Vault hálózati beállításainak konfigurálásával foglalkozó témakört.
A fejlesztői mező testreszabása meglévő WinGet-konfigurációs fájlok használatával
A WinGet-konfiguráció egy kódként való konfigurációs megközelítést alkalmaz a Windows-környezet kódra kész állapotba hozásához szükséges egyedi szoftver- és konfigurációs beállítások meghatározásához. Ezeket a konfigurációs fájlokat a Microsoft által biztosított gyorsútmutató-katalógusban található WinGet-feladattal is beállíthatja.
Az alábbi példa egy meglévő WinGet Desired State Configuration -fájlt (DSC) meghívó dev box testreszabási fájlt mutat be:
tasks:
- name: winget
parameters:
configure: "projectConfiguration.dsc.yaml"
További információ: WinGet-konfiguráció.
Testreszabási fájl megosztása kódtárból
Tegye elérhetővé a testreszabási fájlt a Dev Box-készletek számára az imagedefinition.yaml elnevezésével, majd a katalógust üzemeltető adattárba való feltöltésével. Dev Box-készlet létrehozásakor kiválaszthatja a katalógusból a testreszabási fájlt, amely a készlet fejlesztői mezőire vonatkozik.