Multiple ConfigurationNames

As ConfigurationNames is specified as an array/list/tuple it makes sense that you could specify multiple configuration names and the LCM would pull each to apply. However when multiple configurationames are specified it is accepted by the LCM but on attempt to pull the configuration with Update-DscConfiguration results in the following error;

PS C:\Users\Administrator> Update-DscConfiguration -Wait -verbose
VERBOSE: Perform operation 'Invoke CimMethod' with following parameters, ''methodName' = PerformRequiredConfigurationChecks,'className' = MSFT_DSCLocalConfigurationManager,'namespaceName'
 = root/Microsoft/Windows/DesiredStateConfiguration'.
VERBOSE: An LCM method call arrived from computer SERVER1 with user sid S-1-5-21-2452166624-891109983-2593238649-500.
VERBOSE: [SERVER1]:                            [] Executing Get-Action with configuration 's checksum: 8BFEE365265912410002ED42E1E230612321359340A4558E12C363150CEEDD0F.
VERBOSE: [SERVER1]:                            [] Executing Get-Action with configuration 's checksum failed. Please check the availability of pull server.
A generic exception occurred during the invocation of the Get-DSCAction cmdlet by Download Manager WebDownloadManager.
    + CategoryInfo          : InvalidResult: (root/Microsoft/...gurationManager:String) [], CimException
    + FullyQualifiedErrorId : GetActionException
    + PSComputerName        : localhost
VERBOSE: Operation 'Invoke CimMethod' complete.
VERBOSE: Time taken for configuration job to complete is 1.24 seconds

I’m clearly missing something or really getting the wrong end of the stick. Can anyone point me in the right direction?

So, this is only supported in WMF5, and you have to provide more than just a configuration name in most cases. You also have to specify a shared secret that the pull server uses, and you obviously need to provide checksum files for each configuration. This is usually all configured in a meta-configuration MOF.

Thank you for the response.

All machines involved in this are running WMF5 and the pull clients have successfully registered to the server. I know part of it’s working because I have tested each configuration name individually (by only specify one configuration name) and they work (both passing the checksum checks). As soon as I attempt to use more than one I get the above error.

I probably should have provided more information in the first post, please see the example LCM config below;

            RefreshFrequencyMins = 30;
            RefreshMode = "PULL";
            ConfigurationMode = "ApplyAndAutocorrect";
            AllowModuleOverwrite  = $true;
            RebootNodeIfNeeded = $true;

        ConfigurationRepositoryWeb ConfigurationManager
            ServerURL = "http://server1:8080/PSDSCPullServer.svc";
            AllowUnsecureConnection = $true;
            RegistrationKey = "466d06ae-6c63-4636-a0cb-39b66a966649";
            ConfigurationNames = @("BaseServerConfig","WebServer");

Ah. So, for multiple configurations, you’d actually have one ConfigurationRepositoryWeb section. I’ve not seen an example where ConfigurationName being set to an array worked. It’s possible they meant it to, but I can’t say for sure.

I’ve honestly been trying to steer as clear as possible from partial configurations for design reasons.