Вложение конфигураций DSC

Вложенная конфигурация (также называемая составной конфигурацией) — это конфигурация, которая вызывается в составе другой конфигурации подобно ресурсу. Обе конфигурации должны быть определены в одном файле.

Давайте рассмотрим простой пример:

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'
        }
    }
}

В этом примере FileConfig принимает два обязательных параметра — CopyFrom и CopyTo, — которые используются как значения для свойств SourcePath и DestinationPath в блоке ресурсов File. Конфигурация NestedConfig вызывает конфигурацию FileConfig, как будто это ресурс. Свойства в блоке ресурсов NestedConfig (CopyFrom и CopyTo) — параметры конфигурации FileConfig.

Сейчас DSC не поддерживает вложенные конфигурации во вложенных конфигурациях. Допускается только один уровень вложенности конфигурации.

См. также