Parancsalapú DSC-erőforrásjegyzék sémahivatkozása
Áttekintés
A parancsalapú DSC-erőforrást meghatározó adatfájl.
Metaadatok
SchemaDialect: https://json-schema.org/draft/2020-12/schema
SchemaID: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/resource/manifest.json
Type: object
Leírás
Minden parancsalapú DSC-erőforrásnak rendelkeznie kell egy jegyzékfájlval. A jegyzékfájlnak a következőnek kell lennie:
- A
PATH
környezeti változóban is felfedezhető. - Legyen JSON vagy YAML formátumban formázva.
- Kövesse az elnevezési konvenció
<name>.dsc.resource.<extension>
. Az érvényes bővítmények közé tartozik ajson
, ayml
és ayaml
. - Érvényesnek kell lennie a dokumentumban leírt sémára.
A dokumentum többi része a jegyzék sémáját írja le.
Kötelező tulajdonságok
A jegyzéknek tartalmaznia kell az alábbi tulajdonságokat:
Kellékek
$schema
A $schema
tulajdonság a séma URI-ját jelzi, amelyet a jegyzék érvényesít. Ez a tulajdonság kötelező. A DSC ezzel az értékkel ellenőrzi a jegyzékfájlt a megfelelő JSON-sémával.
A séma minden verziójához három érvényes URL-cím található:
.../resource/manifest.json
A canonical non-bundled séma URL-címe. Ha érvényesítésre használják, az érvényesítő ügyfélnek le kell kérnie ezt a sémát és minden hivatkozott sémát.
.../bundled/resource/manifest.json
A csomagolt séma URL-címe. Ha érvényesítésre használják, az érvényesítő ügyfélnek csak le kell kérnie ezt a sémát.
Ez a séma a JSON Schema 2020-12-hez bevezetett csomagküldő modellt használja. Bár a DSC továbbra is érvényesíteni tudja a dokumentumot, amikor ezt a sémát használja, más eszközök nem várt módon hibát vagy viselkedést okozhatnak.
.../bundled/resource/manifest.vscode.json
A bővített szerzői séma URL-címe. Ez a séma sokkal nagyobb, mint a többi séma, mivel további definíciókat tartalmaz, amelyek környezeti segítséget és kódrészleteket biztosítanak, amelyeket a többiek nem tartalmaznak.
Ez a séma olyan kulcsszavakat használ, amelyeket csak a VS Code ismer fel. Bár a DSC továbbra is érvényesíteni tudja a dokumentumot, amikor ezt a sémát használja, más eszközök nem várt módon hibát vagy viselkedést okozhatnak.
Type: string
Required: true
Format: URI
ValidValues: [
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/resource/manifest.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/bundled/resource/manifest.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/bundled/resource/manifest.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/10/resource/manifest.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/10/bundled/resource/manifest.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/10/bundled/resource/manifest.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/08/resource/manifest.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/08/bundled/resource/manifest.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/08/bundled/resource/manifest.vscode.json
]
típus
A type
tulajdonság az erőforrás teljes típusnevét jelöli. Az erőforrás konfigurációs dokumentumokban való megadására szolgál, valamint a --resource
jelölő értékeként a dsc resource *
parancsok használatakor. További információ az erőforrástípusnevekről: DSC-erőforrás teljes típusnévséma-referencia.
Type: string
Required: true
Pattern: ^\w+(\.\w+){0,2}\/\w+$
verzió
A version
tulajdonságnak érvényes szemantikai (szemantikai) sztringként az erőforrás aktuális verziójának kell lennie. A verzió az erőforrásra vonatkozik, nem az általa kezelt szoftverre.
Type: string
Required: true
Pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
leírás
A description
tulajdonság az erőforrás céljának szinopszisát határozza meg. A tulajdonság értékének rövid sztringnek kell lennie.
Type: string
Required: false
fajta
A kind
tulajdonság határozza meg, hogy a DSC hogyan kezelje az erőforrást. A DSC háromféle parancsalapú DSC-erőforrást támogat: Resource
, Group
és Adapter
.
Ha kind
nincs definiálva az erőforrásjegyzékben, a DSC a tulajdonság értékét keresi. Ha a adapter
tulajdonság az erőforrásjegyzékben van definiálva, a DSC a kind
értékét Adapter
. Ha a adapter
tulajdonság nincs definiálva, a DSC a kind
értékét Resource
.
A DSC nem tudja megállapítani, hogy a jegyzék egy csoporterőforráshoz tartozik-e.
Csoporterőforrás definiálásakor mindig explicit módon határozza meg a jegyzékben szereplő kind
tulajdonságot Group
.
További információ: DSC-erőforrástípus sémahivatkozása.
Type: string
Required: false
ValidValues: [Resource, Adapter, Group]
Címkék
A tags
tulajdonság az erőforrás kereshető kifejezéseinek listáját határozza meg. A tulajdonság értékének sztringtömbnek kell lennie. Minden címke csak alfanumerikus karaktereket és aláhúzásjeleket tartalmazhat. Más karakterek nem engedélyezettek. Minden címkének egyedinek kell lennie.
Type: array
Required: false
ItemsMustBeUnique: true
ItemsType: string
ItemsPattern: ^\w+$
kivitel
A export
tulajdonság határozza meg, hogyan hívhatja meg az erőforrást az egyes példányok aktuális állapotának lekéréséhez.
Ha ez a tulajdonság meg van határozva, a felhasználók a következőt tehetik:
- Adja meg az erőforrás egy példányát a dsc konfiguráció exportálási parancs bemeneti konfigurációjában használható konfigurációs dokumentum létrehozásához.
- Adja meg az erőforrást a dsc erőforrásexportálási paranccsal az erőforrás minden példányát meghatározó konfigurációs dokumentum létrehozásához.
- Adja meg az erőforrást a dsc erőforrás get parancsával és a --all beállítással, amely az erőforrás minden példányának aktuális állapotát adja vissza.
A tulajdonság értékének objektumnak kell lennie. Az objektum executable
tulajdonsága, amely meghatározza a meghívandó parancs nevét, kötelező. A args
tulajdonság megadása nem kötelező. További információ: DSC-erőforrásjegyzék exportálási tulajdonságséma-referencia.
Type: object
Required: true
kap
A get
tulajdonság határozza meg, hogyan hívhatja meg az erőforrást egy példány aktuális állapotának lekéréséhez. Ez a tulajdonság minden erőforrás esetében kötelező.
A tulajdonság értékének objektumnak kell lennie. Az objektum executable
tulajdonsága, amely meghatározza a meghívandó parancs nevét, kötelező. A args
és input
tulajdonságok megadása nem kötelező. További információ: DSC-erőforrásjegyzék tulajdonságséma-referencia.
Type: object
Required: true
beállít
A set
tulajdonság határozza meg, hogyan hívhatja meg az erőforrást egy példány kívánt állapotának beállításához. Azt is meghatározza, hogyan dolgozza fel az erőforrás kimenetét ehhez a metódushoz. Ha ez a tulajdonság nincs definiálva, a DSC nem tudja kezelni az erőforrás példányait. Csak az aktuális állapotukat tudja lekérni, és tesztelni, hogy a példány a kívánt állapotban van-e.
A tulajdonság értékének objektumnak kell lennie. A meghívandó parancs nevét meghatározó executable
tulajdonság megadása kötelező. A args
input
, implementsPretest
és returns
tulajdonságok megadása nem kötelező. További információ: DSC-erőforrásjegyzék-készlet tulajdonságséma-referencia.
Type: object
Required: false
whatIf
Meghatározza, hogy a DSC-nek hogyan kell meghívnia a DSC-erőforrást annak jelzéséhez, hogy a beállított parancs módosít-e egy példányt, és hogyan dolgozza fel a DSC-erőforrás kimenetét. Ha egy erőforrás nem definiálja ezt a metódust a jegyzékben, a DSC szintetizálja ezt a viselkedést az erőforrás tesztműveletének eredményének a beállított eredményké alakításával.
A tulajdonság értékének objektumnak kell lennie. A meghívandó parancs nevét meghatározó executable
tulajdonság megadása kötelező. A args
input
, implementsPretest
és returns
tulajdonságok megadása nem kötelező. További információ: DSC-erőforrásjegyzék whatIf tulajdonságséma-referencia.
teszt
A test
tulajdonság határozza meg, hogyan hívhatja meg az erőforrást annak teszteléséhez, hogy egy példány a kívánt állapotban van-e. Azt is meghatározza, hogyan dolgozza fel az erőforrás kimenetét ehhez a metódushoz. Ha ez a tulajdonság nincs definiálva, a DSC egy alapszintű szintetikus tesztet végez a DSC-erőforrás példányaihoz.
A tulajdonság értékének objektumnak kell lennie. Az objektum executable
tulajdonsága, amely meghatározza a meghívandó parancs nevét, kötelező. A args
input
és returns
tulajdonságok megadása nem kötelező.
További információ: DSC-erőforrásjegyzék-teszt tulajdonságséma-referencia.
Type: object
Required: false
érvényesít
A validate
tulajdonság határozza meg, hogyan hívhat meg egy DSC-csoporterőforrást a példányok ellenőrzéséhez. Ez a tulajdonság a DSC-csoporterőforrások esetében kötelező. A DSC figyelmen kívül hagyja ezt a tulajdonságot az összes többi erőforrás esetében.
A tulajdonság értékének objektumnak kell lennie. Az objektum executable
tulajdonsága, amely meghatározza a meghívandó parancs nevét, kötelező. A args
tulajdonság megadása nem kötelező. További információ: DSC-erőforrásjegyzék tulajdonságséma-referenciájának ellenőrzése.
Type: object
Required: false
szolgáltató
Ha meg van adva, a provider
tulajdonság DSC-erőforrás-szolgáltatóként határozza meg az erőforrást.
A tulajdonság értékének objektumnak kell lennie. Az objektum list
és config
tulajdonságai kötelezőek. A list
tulajdonság határozza meg, hogyan hívhatja meg a szolgáltatót a szolgáltató által kezelhető erőforrások visszaadására. A config
tulajdonság határozza meg, hogy a szolgáltató hogyan vár bemenetet. További információ: DSC-erőforrásjegyzék-szolgáltató tulajdonságséma-referenciája.
exitCodes
A exitCodes
tulajdonság érvényes kilépési kódok készletét határozza meg az erőforráshoz és jelentésükhöz.
Adja meg ezt a tulajdonságot kulcs-érték párok készleteként, ahol:
- A kulcs egy aláírt egész számot tartalmazó sztring, amely az erőforrás ismert kilépési kódjára képez le.
A kilépési kódnak konstans aláírt egész számnak kell lennie. A kilépési kódhoz nem használhat alternatív formátumokat. Például a "Hozzáférés megtagadva"
0x80070005
hexadecimális értéke helyett adja meg a kilépési kódot-2147024891
. - Az érték egy sztring, amely az emberi olvasó kilépési kódjának szemantikai jelentését írja le.
A DSC a 0
kilépési kódot sikeres műveletként, a többi kilépési kódot pedig hibaként értelmezi.
Borravaló
Ha az erőforrásjegyzéket yaml-ben szerkeszti, ügyeljen arra, hogy a kilépési kódot egyetlen idézőjelbe burkolja, hogy a YAML-fájl megfelelően elemezhető legyen. Például:
exitCodes:
'0': Success
'1': Invalid parameter
'2': Invalid input
'3': Registry error
'4': JSON serialization failed
Type: object
Required: false
PropertyNamePattern: ^-?[0-9]+#
PropertyValueType: string
séma
A schema
tulajdonság határozza meg, hogyan szerezheti be az erőforrás egy példányát érvényesítő JSON-sémát. Ennek a tulajdonságnak mindig olyan objektumnak kell lennie, amely az alábbi tulajdonságok egyikét határozza meg:
-
command
– Acommand
tulajdonság megadásakor a DSC meghívja a megadott parancsot a JSON-séma lekéréséhez. -
embedded
– Aembedded
tulajdonság megadásakor a DSC a definiált értéket használja JSON-sémaként.
További információ: DSC-erőforrásjegyzék sématulajdonság-referenciája.
Type: object
Required: true