Script

Synopsis

Exécuter des blocs de script PowerShell.

Syntaxe

Script [String] #ResourceName
{
    GetScript = [string]
    SetScript = [string]
    TestScript = [string]
    [Credential = [PSCredential]]
    [DependsOn = [string[]]]
    [PsDscRunAsCredential = [PSCredential]]
}

Description

La Script ressource vous permet d’écrire du code PowerShell pour obtenir, tester et définir une ressource lorsqu’une ressource DSC spécifique n’est pas disponible. Vous devez fournir le code pour ces méthodes, gérer toutes les dépendances et vérifier que votre code est idempotent.

Conseil

Lorsque cela est possible, il est recommandé d’utiliser une ressource DSC définie au lieu de celle-ci. La Script ressource présente des inconvénients qui la rendent plus difficile à tester, à gérer et à prédire.

Contrairement aux autres ressources DSC, chaque propriété d’une Script ressource est une propriété de clé et la méthode Get de cette ressource ne peut retourner qu’une seule chaîne pour l’état actuel. Il n’existe aucune garantie que cette ressource est implémentée de manière idempotente ou qu’elle fonctionnera comme prévu sur n’importe quel système, car elle utilise du code personnalisé. Il ne peut pas être testé sans être appelé sur un système cible.

Avant d’utiliser la Script ressource, déterminez si vous pouvez créer une ressource à la place. L’utilisation de ressources DSC bien définies rend vos configurations plus lisibles et plus faciles à gérer.

Configuration requise

Aucun.

Propriétés

Propriétés de la clé

GetScript

Spécifiez un scriptblock PowerShell qui récupère l’état actuel de la ressource. Ce scriptblock s’exécute lorsque la méthode Get de cette ressource est appelée.

Ce scriptblock doit retourner une table de hachage contenant une clé nommée Result avec une valeur de chaîne.

Type: System.String

SetScript

Spécifiez un script PowerShell qui configure la ressource à l’état souhaité. Ce bloc de script s’exécute lorsque la méthode Set de cette ressource est appelée.

Ce bloc de script ne doit pas générer d’objets. Ce bloc de script doit être écrit de manière idempotente, de sorte que l’appel de la méthode Set à deux reprises laisse la cible dans le même état que l’appel d’une seule fois.

Type: System.String

TestScript

Spécifiez un script PowerShell qui valide si la ressource est dans l’état souhaité. Ce bloc de script s’exécute lorsque la méthode Test de cette ressource est appelée.

Ce bloc de script doit retourner $true si la ressource est dans l’état souhaité et $false si elle n’est pas dans l’état souhaité.

Type: System.String

Propriétés facultatives

Informations d'identification

Spécifiez les informations d’identification d’un compte sous lequel exécuter les scriptsblocks si nécessaire.

Type: System.Management.Automation.PSCredential
Default Value: None

Propriétés en lecture seule

Résultats

Résultat du bloc de script GetScript .

Type: System.String

Exemples