Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento referenční článek obsahuje podrobné informace o souborech imagedefinition.yaml
, task.yaml
které se používají k přizpůsobení Microsoft Dev Boxu. Vývojáři můžou tyto soubory YAML použít k definování úloh pro zřizování a konfiguraci vývojových polí. Soubory pomáhají zajistit konzistenci a efektivitu napříč vývojovými prostředími. Tento článek popisuje schéma, požadované atributy a příklady pro oba typy souborů spolu s integrovanými úlohami, jako je PowerShell a WinGet.
Soubory Imagedefinition.yaml
Soubor YAML dev Boxu můžete použít k definování úloh přizpůsobení, které by se měly spouštět při vytváření Dev Boxu.
devbox.yaml
Soubor může být ve stejném úložišti jako primární zdroj, který používá vývojový tým, nebo soubor může být v centralizovaném úložišti konfigurací.
Příklad definice obrázku YAML:
$schema: 1.0
name: project-sample-1
image: MicrosoftWindowsDesktop_windows-ent-cpc_win11-21h2-ent-cpc-m365
tasks:
- name: "powershell"
inputs:
command:
název
Požadovaný: Tento popisný název definice obrázku je přidružený k tomuto devbox.yaml
souboru. Toto nastavení řídí název definice obrázku, která je k dispozici při vytváření a aktualizaci fondů.
name: myVSDevBox
obrázek
Požadovaný: Image, kterou chcete použít jako základní image pro definici image, může být image marketplace:
image: MicrosoftWindowsDesktop_windows-ent-cpc_win11-21h2-ent-cpc-m365
Nebo to může být vlastní image z připojené instance Galerie výpočetních prostředků Azure:
image: galleryname/imagename@version
Informace o připojení instance Galerie výpočetních prostředků Azure k vývojovému centru najdete v tématu Konfigurace galerie výpočetních prostředků Azure pro Microsoft Dev Box.
Pokud chcete získat seznam imagí, ke kterým má vaše vývojové centrum přístup, použijte tento az cli
příkaz:
az devcenter admin image list --dev-center-name CustomizationsImagingHQ --resource-group TeamCustomizationsImagingRG --query "[].name"
Potřebujete rozšíření dev Center az cli
:
az extension add --name devcenter
úkoly
Požadovaný: Tato kolekce objektů se skládá z úloh přizpůsobení Dev Boxu, které se mají spustit při zřizování vývojového pole. Konkrétní vstupy poskytované úkolu se liší podle úkolu.
Příklad:
tasks:
- name: winget
parameters:
package: GitHub.GitHubDesktop
Všechny úkoly podporují timeout
vlastnost, která je volitelná.
Příklad:
tasks:
- name: powershell
timeout: 1800 # in seconds
parameters:
command: <command>
Předdefinované úkoly
PowerShell a WinGet jsou k dispozici jako předdefinované úlohy. Můžete je vyvolat přímo bez připojení katalogu na úrovni vývojového centra, která definuje implementaci těchto úloh.
Předdefinovaná úloha WinGet
Tato integrovaná úloha použije konfiguraci WinGet do vývojového pole.
Parametry:
configurationFile
:- Typ:
string
- Cesta k souboru YAML konfigurace WinGet. Soubor musí být umístěn v místním počítači.
- Požadovaný:
false
- Typ:
downloadUrl
:- Typ:
string
- Veřejně přístupná adresa URL, kde je uložený konfigurační soubor YAML. Soubor se stáhne do cesty, která
configurationFile
určuje. - Požadovaný:
false
- Typ:
inlineConfigurationBase64
:- Typ:
string
- Řetězec kódování Base64 konfiguračního souboru YAML winGet. Soubor je dekódován do cesty, která
configurationFile
určuje nebo do dočasného souboru, pokud není zadán. - Požadovaný:
false
- Typ:
package
:- Typ:
string
- Název balíčku, který se má nainstalovat.
- Pokud je konfigurační soubor YAML zadaný pod jinými parametry, název balíčku není potřeba.
- Požadovaný:
false
- Typ:
version
- Typ:
string
- Verze balíčku, který se má nainstalovat.
- Pokud je konfigurační soubor YAML k dispozici v rámci jiných parametrů, není potřeba verze balíčku.
- Požadovaný:
false
- Typ:
Integrovaná úloha PowerShellu
Tato integrovaná úloha spustí příkaz PowerShellu.
Parametry:
-
command
:- Typ:
string
- Příkaz, který se má spustit.
- Požadovaný:
true
- Typ:
soubory task.yaml
Úlohy přizpůsobení jsou opakovaně použitelné jednotky instalačního kódu nebo konfigurace prostředí. Vývojáři k jejich zápisu používají skripty PowerShellu a k jejich popisu používají task.yaml
soubor metadat. Vývojáři tyto úlohy používají k přizpůsobení vývojového pole tak, že na ně odkazují ze devbox.yaml
souboru.
Při definování úloh přizpůsobení můžete identifikovat úlohy, které jsou k dispozici vývojářům pro použití v devbox.yaml
souborech. Můžete omezit akce s vysokou úrovní oprávnění, například možnost spustit libovolný příkaz PowerShellu.
Následující příklad definice úlohy spustí příkaz PowerShellu v konkrétním pracovním adresáři:
name: powershell
description: Execute a powershell command
author: Microsoft Corporation
command: ".\runcommand.ps1 -command {{command}} -workingDirectory {{workingDirectory}}"
inputs:
command:
type: string
defaultValue: ""
required: true
description: The command to execute
workingDirectory:
type: string
defaultValue: ""
required: false
description: The working directory to execute the command in
Atributy
název
Požadovaný: Tento jedinečný identifikátor se používá k odkazu na úkol z devbox.yaml
. Název musí být jedinečný v kontextu katalogu, ve kterém úloha existuje.
Pojmenování musí odpovídat existujícím omezením prostředků Azure. Název musí mít délku 3 až 63 znaků. Musí začínat alfanumerickým znakem. Název musí obsahovat pouze alfanumerické znaky a "-", ".", nebo "_". Znak /je vyhrazen.
name: powershell
popis
Volitelný: Tento atribut popisuje úkol.
description: This task executes a powershell command
vstupy
Požadovaný: Tento atribut uvádí parametry, které tento úkol přebírá jako vstup ze devbox.yaml
souboru a používá se při spuštění příkazu. Každá nadřazená položka představuje název parametru a podporuje tyto klíče:
-
type
(povinné): Vstupní datový typ pro tento parametr. Může býtstring
neboint
. -
defaultValue
(povinné): Výchozí hodnota, kterou tento parametr přebírá. -
required
(povinné): Klíč, který určuje, jestli je tento parametr volitelný nebo povinný. -
description
(povinné): Popis, co tento parametr představuje.
inputs:
command:
type: string
defaultValue: ""
required: true
description: The command to execute
příkaz
Požadovaný: Tento příkaz slouží k plnění tohoto úkolu. Zadaný příkazový řetězec běží v prostředí Windows PowerShell na místním počítači.
command: ".\runcommand.ps1
Referenční proměnné v příkazech
Pokud chcete odkazovat na parametry v příkazu, zadejte název proměnné v dvojitých složených závorkách, {{parameter_name}}
například . Hodnoty těchto proměnných se interpolují před spuštěním příkazu.
command: ".\runcommand.ps1 -command {{command}} -workingDirectory {{workingDirectory}}"
časový limit
Volitelný: Tato proměnná určuje maximální dobu (v minutách), po kterou se má čekat na dokončení úkolu před vypršením časového limitu úkolu. Výchozí hodnota je 30 minut.
timeout: 30
autor
Volitelný: Tato proměnná identifikuje autora úkolu, který vám pomůže s audity a řešením potíží.
author: Contoso Corporation
documentationURL
Volitelný: Tato proměnná odkazuje na dokumentaci pro tuto úlohu.
documentationURL: "https://link.to/documentation"
licenseURL
Volitelný: Tato proměnná odkazuje na licenci pro tento úkol.
licenseURL: "https://link.to/license"