Schachteln von DSC-Konfigurationen
Eine geschachtelte Konfiguration (auch zusammengesetzte Konfiguration genannt) ist eine Konfiguration, die in einer anderen Konfiguration aufgerufen wird, als handele es sich um eine Ressource. Beide Konfigurationen müssen in derselben Datei definiert werden.
Sehen wir uns ein einfaches Beispiel an:
Configuration FileConfig
{
param (
[Parameter(Mandatory = $true)]
[String] $CopyFrom,
[Parameter(Mandatory = $true)]
[String] $CopyTo
)
Import-DscResource -ModuleName PSDesiredStateConfiguration
File FileTest
{
SourcePath = $CopyFrom
DestinationPath = $CopyTo
Ensure = 'Present'
}
}
Configuration NestedFileConfig
{
Node localhost
{
FileConfig NestedConfig
{
CopyFrom = 'C:\Test\TestFile.txt'
CopyTo = 'C:\Test2'
}
}
}
In diesem Beispiel akzeptiert FileConfig
zwei erforderliche Parameter – CopyFrom und CopyTo–, die als Werte für die Eigenschaften SourcePath und DestinationPath im Ressourcenblock File
verwendet werden. Die Konfiguration NestedConfig
ruft FileConfig
auf, als handele es sich um eine Ressource. Die Eigenschaften im Ressourcenblock NestedConfig
(CopyFrom und CopyTo) sind die Parameter der Konfiguration FileConfig
.
DSC unterstützt aktuell keine geschachtelten Konfigurationen innerhalb von geschachtelten Konfigurationen. Sie können eine Konfiguration nur eine Ebene tief schachteln.