Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Synopsis
Appelle l’opération d’ensemble d’une ressource.
Syntax
Propriétés d’instance de stdin
<instance-properties> | dsc resource set [Options] --resource <RESOURCE>
Propriétés d’instance de l’option d’entrée
dsc resource set --input '<instance-properties>' --resource <RESOURCE>
Propriétés d’instance à partir d’un fichier
dsc resource set --path <instance-properties-filepath> --resource <RESOURCE>
Description
La set sous-commande applique l’état souhaité d’une ressource instance et retourne l’état final.
Cette sous-commande définit une instance d’une ressource DSC spécifique. Pour définir plusieurs ressources, utilisez un groupe de ressources ou la commande dsc config set .
L’état souhaité du instance à définir doit être passé à cette commande en tant qu’objet JSON ou YAML.
Les propriétés de l’objet doivent être des propriétés valides pour la ressource. Les propriétés instance peuvent être passées à cette commande à partir de stdin, sous la forme d’une chaîne avec l’option --input ou d’un fichier enregistré avec l’option --path .
Cette sous-commande ne peut être appelée que pour les ressources DSC basées sur des commandes qui définissent la set section de leur manifeste de ressource. Si cette sous-commande est appelée pour une ressource qui ne définit pas d’opération de jeu, DSC génère une erreur.
Important
La dsc resource set commande appelle toujours l’opération set pour la ressource. Les ressources peuvent, mais ne sont pas tenues d’implémenter une logique qui préteste un instance pour l’opérationset.
Cela diffère de la façon dont fonctionne le jeu de configuration dsc, où DSC teste toujours un instance, soit de manière synthétique, soit en appelant l’opération test pour la ressource, et appelle set uniquement pour un instance s’il n’est pas dans l’état souhaité.
Les ressources basées sur des commandes indiquent si elles implémentent le prétest pour l’opération set en définissant la propriété set.implementsPretest dans leur manifeste de ressource. Si cette propriété est définie comme true, cela indique que la ressource implémente le prétest. Si set.implementsPretest est défini sur false ou n’est pas défini, le manifeste indique que la ressource n’implémente pas le prétest.
Si une ressource indique qu’elle implémente le prétest, les utilisateurs doivent s’attendre à ce que la ressource ne modifie un instance pendant une set opération que si le prétest montre que le instance n’est pas dans l’état souhaité.
Si une ressource n’implémente pas le prétest, les utilisateurs doivent s’attendre à ce que la ressource modifie toujours un instance pendant une set opération.
Pour les ressources qui n’implémentent pas de prétest pour l’opérationset, Microsoft recommande de toujours appeler dsc resource test un instance pour voir s’il est dans l’état souhaité avant d’appeler dsc resource set. Cela permet d’éviter les erreurs accidentelles causées par des ressources qui n’implémentent pas une commande entièrement idempotente set .
Exemples
Exemple 1 - Définition d’une ressource avec les propriétés de stdin
La commande garantit que la Example clé existe dans la ruche de l’utilisateur actuel. Il spécifie la ressource instance propriétés au format JSON et les transmet à partir de stdin.
'{
"keyPath": "HKCU\\Example",
"_exist": true
}' | dsc resource set --resource Microsoft.Windows/Registry
Exemple 2 - Définition d’une ressource avec l’option d’entrée
La commande garantit que la Example clé existe dans la ruche de l’utilisateur actuel. Il spécifie la ressource instance propriétés au format JSON et les transmet avec l’option d’entrée.
dsc resource set --resource Microsoft.Windows/Registry --input '{
"keyPath": "HKCU\\Example",
"_exist": true
}'
Exemple 3 - Définition d’une ressource avec les propriétés d’un fichier YAML
La commande garantit que la Example clé existe dans la ruche de l’utilisateur actuel. Il spécifie le chemin d’accès à un fichier yaml définissant la ressource instance propriétés avec l’option chemin d’accès.
cat ./example.yaml
keyPath: HKCU\\Example
_exist: true
dsc resource set --resource Microsoft.Windows/Registry --path ./example.yaml
Options
-r, --resource
Spécifie le nom de type complet de la ressource DSC à utiliser, comme Microsoft.Windows/Registry.
La syntaxe complète du nom de type est : <owner>[.<group>][.<area>]/<name>, où :
-
ownerest l’auteur ou le organization de maintenance de la ressource. - Les et
areasont desgroupcomposants de nom facultatifs qui activent l’espacement des noms pour une ressource. - identifie
namele composant que la ressource gère.
Type: String
Mandatory: true
-i, --input
Spécifie un objet JSON ou YAML avec les propriétés qui définissent l’état souhaité d’une ressource DSC instance. DSC valide l’objet par rapport au schéma instance de la ressource. Si la validation échoue, DSC génère une erreur.
Cette option ne peut pas être utilisée avec instance propriétés sur stdin ou l’option --path . Choisissez de passer les propriétés instance à la commande sur stdin, à partir d’un fichier avec l’option --path ou avec l’option --input .
Type: String
Mandatory: false
-p, --path
Définit le chemin d’accès à un fichier texte à lire en tant qu’entrée pour la commande au lieu de passer l’entrée à partir de stdin ou de la passer sous forme de chaîne avec l’option --input . Le fichier spécifié doit contenir JSON ou YAML qui représente des propriétés valides pour la ressource. DSC valide l’objet par rapport au schéma instance de la ressource. Si la validation échoue ou si le fichier spécifié n’existe pas, DSC génère une erreur.
Cette option s’exclut mutuellement avec l’option --input . Lorsque vous utilisez cette option, DSC ignore toute entrée de stdin.
Type: String
Mandatory: false
-f, --format
L’option --format contrôle le format de sortie de la console pour la commande. Si la sortie de commande est redirigée ou capturée en tant que variable, la sortie est toujours JSON.
Type: String
Mandatory: false
DefaultValue: yaml
ValidValues: [json, pretty-json, yaml]
-h, --help
Affiche l’aide pour la commande ou la sous-commande actuelle. Lorsque vous spécifiez cette option, l’application ignore toutes les options et arguments après celle-ci.
Type: Boolean
Mandatory: false
Sortie
Cette commande retourne une sortie JSON qui inclut l’état réel de l’instance avant et après l’opération set, ainsi que la liste des propriétés modifiées par l’opération set. Pour plus d’informations, consultez Schéma de résultats du jeu de ressources dsc.