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
Fichier YAML ou JSON qui définit une configuration DSC.
Métadonnées
SchemaDialect: https://json-schema.org/draft/2020-12/schema
SchemaID: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1.0/config/document.json
Type: object
Descriptif
Les configurations DSC permettent aux utilisateurs de définir l’état en combinant différentes ressources DSC. Un document de configuration utilise des paramètres et des variables à transmettre à un ensemble d’une ou plusieurs ressources qui définissent l’état souhaité.
Un document de configuration peut être défini au format YAML ou JSON. Pour faciliter la création, Microsoft recommande de rédiger les documents de configuration au format YAML.
Pour que les outils de création de DSC reconnaissent un fichier en tant que document de configuration DSC, le nom de fichier doit se terminer par l’une des valeurs suivantes :
.dsc.config.json.dsc.config.yml-
.dsc.config.yaml. .dsc.json.dsc.yml.dsc.yaml
Vous pouvez utiliser les fonctions de document de configuration pour déterminer dynamiquement les valeurs du document au moment de l’exécution. Pour plus d’informations, reportez-vous au document de référence sur les fonctions du document de configuration DSC
Le reste de ce document décrit le schéma utilisé par DSC pour valider les documents de configuration.
Exemples
Propriétés requises
Chaque document de configuration doit inclure les propriétés suivantes :
Propriétés
$schema
La $schema propriété indique l’URI qui correspond à la version de ce schéma à laquelle le document adhère. DSC utilise cette propriété lors de la validation et du traitement du document de configuration.
Les schémas JSON pour DSC sont publiés dans plusieurs versions et formulaires. Cette documentation concerne la dernière version du schéma. Pour plus de commodité, vous pouvez spécifier l’URI complet pour le schéma hébergé dans GitHub ou utiliser l’URI plus court aka.ms . Vous pouvez spécifier le schéma d’une version sémantique spécifique, le dernier schéma d’une version mineure ou le dernier schéma d’une version majeure de DSC. Pour plus d’informations sur les URI de schéma et la gestion des versions, consultez URI de schéma JSON DSC.
Pour chaque version du schéma, il existe trois URL valides :
.../config/document.jsonURL du schéma non groupé canonique. Lorsqu’il est utilisé pour la validation, le client de validation doit récupérer ce schéma et chaque schéma qu’il référence.
.../bundled/config/document.jsonURL du schéma canoniquement regroupé. Lorsqu’il est utilisé pour la validation, le client de validation doit uniquement récupérer ce schéma.
Ce schéma utilise le modèle de regroupement introduit pour le schéma JSON 2020-12. Bien que DSC puisse toujours valider le document lorsqu’il utilise ce schéma, d’autres outils peuvent commettre des erreurs ou se comporter de manière inattendue s’ils ne prennent pas entièrement en charge la spécification 2020-12.
.../bundled/config/document.vscode.jsonURL du schéma de création amélioré. Ce schéma est beaucoup plus grand que les autres schémas, car il inclut des définitions supplémentaires qui fournissent de l’aide contextuelle et des extraits de code que les autres n’incluent pas.
Ce schéma utilise des mots clés qui sont reconnus uniquement par VS Code. Bien que DSC puisse toujours valider le document lorsqu’il utilise ce schéma, d’autres outils peuvent se tromper ou se comporter de manière inattendue.
Type: string
Required: true
Format: URI
ValidValues: [
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3/bundled/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3/bundled/config/document.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1/bundled/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1/bundled/config/document.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1.0/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1.0/bundled/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1.0/bundled/config/document.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0/bundled/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0/bundled/config/document.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.2/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.2/bundled/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.2/bundled/config/document.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.1/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.1/bundled/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.1/bundled/config/document.vscode.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.0/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.0/bundled/config/document.json
https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.0/bundled/config/document.vscode.json
https://aka.ms/dsc/schemas/v3/config/document.json
https://aka.ms/dsc/schemas/v3/bundled/config/document.json
https://aka.ms/dsc/schemas/v3/bundled/config/document.vscode.json
https://aka.ms/dsc/schemas/v3.1/config/document.json
https://aka.ms/dsc/schemas/v3.1/bundled/config/document.json
https://aka.ms/dsc/schemas/v3.1/bundled/config/document.vscode.json
https://aka.ms/dsc/schemas/v3.1.0/config/document.json
https://aka.ms/dsc/schemas/v3.1.0/bundled/config/document.json
https://aka.ms/dsc/schemas/v3.1.0/bundled/config/document.vscode.json
https://aka.ms/dsc/schemas/v3.0/config/document.json
https://aka.ms/dsc/schemas/v3.0/bundled/config/document.json
https://aka.ms/dsc/schemas/v3.0/bundled/config/document.vscode.json
https://aka.ms/dsc/schemas/v3.0.2/config/document.json
https://aka.ms/dsc/schemas/v3.0.2/bundled/config/document.json
https://aka.ms/dsc/schemas/v3.0.2/bundled/config/document.vscode.json
https://aka.ms/dsc/schemas/v3.0.1/config/document.json
https://aka.ms/dsc/schemas/v3.0.1/bundled/config/document.json
https://aka.ms/dsc/schemas/v3.0.1/bundled/config/document.vscode.json
https://aka.ms/dsc/schemas/v3.0.0/config/document.json
https://aka.ms/dsc/schemas/v3.0.0/bundled/config/document.json
https://aka.ms/dsc/schemas/v3.0.0/bundled/config/document.vscode.json
]
métadonnées
La metadata propriété définit un ensemble de paires clé-valeur en tant qu’annotations pour la configuration. DSC ne valide pas les métadonnées. Une configuration peut inclure n’importe quelle information arbitraire dans cette propriété.
Type: object
Required: false
paramètres
La parameters propriété définit un ensemble d’options d’exécution pour la configuration. Chaque paramètre est défini sous la forme d’une paire clé-valeur. La clé de chaque paire définit le nom du paramètre. La valeur de chaque paire doit être un objet qui définit le type mot-clé pour indiquer comment DSC doit traiter le paramètre.
Les paramètres peuvent être remplacés au moment de l’exécution, ce qui permet de réutiliser le même document de configuration pour différents contextes.
Pour plus d’informations sur la définition de paramètres dans une configuration, consultez le schéma de paramètres du document de configuration DSC.
Type: object
Required: false
ValidPropertySchema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.0/config/document.parameter.json
Variables
La variables propriété définit un ensemble de valeurs réutilisables pour les ressources du document sous forme de paires clé-valeur. La clé de chaque paire définit le nom de la variable. Les ressources qui font référence à la variable par son nom peuvent accéder à la valeur de la variable.
Cela peut aider à réduire la quantité de valeurs copiées et d’options pour les ressources dans la configuration, ce qui facilite la lecture et la maintenance du document. Contrairement aux paramètres, les variables ne peuvent être définies que dans la configuration et ne peuvent pas être remplacées au moment de l’exécution.
Type: object
Required: false
Ressources
La resources propriété définit une liste d’instances de ressources DSC gérées par la configuration.
Chaque instance de la liste doit être unique, mais les instances peuvent partager le même type de ressource DSC.
Pour plus d’informations sur la définition d’une instance de ressource valide dans une configuration, consultez Schéma de ressource du document de configuration DSC.
Type: array
Required: true
MinimumItemCount: 1
ValidItemSchema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.0.0/config/document.resource.json