Udostępnij za pośrednictwem


Dokumentacja schematu właściwości karty manifestu zasobu DSC

Streszczenie

Definiuje zasób DSC jako kartę zasobów DSC.

Metadane

SchemaDialect: https://json-schema.org/draft/2020-12/schema
SchemaID:      https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2024/04/resource/manifest.adapter.json
Type:          object

Opis

Karty zasobów DSC muszą definiować adapter właściwość w manifeście. Ta właściwość identyfikuje zasób jako kartę i definiuje sposób, w jaki DSC może wywołać kartę, aby uzyskać zasoby obsługiwane przez kartę i jak przekazywać wystąpienia zasobów do karty.

Przykłady

Przykład 1 — Microsoft.DSC/PowerShell

Ten przykład pochodzi z Microsoft.DSC/PowerShell karty zasobów DSC.

"adapter": {
  "list": {
    "executable": "pwsh",
    "args": [
      "-NoLogo",
      "-NonInteractive",
      "-NoProfile",
      "-Command",
      "./powershell.resource.ps1 List"
    ]
    },
  "config": "full"
},

Manifest ustawia wartość configfull, co oznacza, że karta oczekuje obiektu blob JSON reprezentującego pełną i nieprzetworzoną konfigurację z klasy stdin.

Definiuje list.executable jako pwsh. Argumenty zdefiniowane w list.args programie zapewniają, że rozszerzenie DSC uruchamia program PowerShell:

  • Bez baneru logo
  • W trybie nieinterakcyjnym
  • Bez ładowania skryptów profilu
  • Aby wywołać powershell.resource.ps1 skrypt w tym samym folderze co dsc polecenie i przekazać List argument.

Z tą definicją rozszerzenie DSC wywołuje metodę list dla tej karty, uruchamiając polecenie:

pwsh -NoLogo -NonInteractive -NoProfile -Command "./powershellgroup.resource.ps1 List"

Wymagane właściwości

Definicja adapter musi zawierać następujące właściwości:

Właściwości

config

Właściwość config określa sposób, w jaki adapter oczekuje odbierania konfiguracji zasobów. Wartość musi być jedną z następujących opcji:

  • full — Wskazuje, że karta oczekuje obiektu blob JSON zawierającego pełną i nieprzetworzoną konfigurację jako pojedynczy obiekt blob JSON w ciągu stdin.
  • sequence — Wskazuje, że karta oczekuje konfiguracji każdego zasobu jako linii JSON przez stdin.
Type:        string
ValidValues: [full, sequence]

list

Właściwość list definiuje sposób wywoływania karty w celu wyświetlenia listy zasobów, które obsługuje. Wartość tej właściwości musi być obiektem i zdefiniować właściwość podrzędną executable .

Type:               object
Required:           true
RequiredProperties: [executable]

Pliku wykonywalnego

Właściwość podrzędna executable definiuje nazwę polecenia do uruchomienia. Wartość musi być nazwą polecenia wykrywalnego w zmiennej środowiskowej systemu PATH lub pełną ścieżką do polecenia. Rozszerzenie pliku jest wymagane tylko wtedy, gdy polecenie nie jest rozpoznawalne przez system operacyjny jako plik wykonywalny.

Type:     string
Required: true

args

Właściwość podrzędna args definiuje tablicę ciągów, które mają być przekazywane jako argumenty do polecenia. Rozszerzenie DSC przekazuje argumenty do polecenia w kolejności, w której są określone.

Type:     array
Required: false
Default:  []