Composite DSC resources with parameters

This topic contains 5 replies, has 2 voices, and was last updated by  Robert Westerlund 4 years, 4 months ago.

  • Author
  • #13688

    Bas Tichelaar

    Hi all,

    I'm having troubles supplying a composite resource with parameters. See Has anyone encountered the same problem?


  • #13689

    Robert Westerlund

    I have tried running the following, based on your example, and it works perfectly fine on the test computer (WIn8.1).


    Configuration BaseConfig
        PARAM (
            [Parameter(Mandatory = $true)]
        File testfile
            DestinationPath = "C:\testfile.txt";
            Contents = $teststring;


    import-module baseconfig -force
    configuration testconfig
        import-dscresource -modulename baseconfig
        node localhost
            BaseConfig common
                TestString = "some value for the test string"
  • #13692

    Robert Westerlund

    I've asked for a little more detailed information on your stackoverflow question, to see if I can successfully recreate the issue locally on my computer. Could you please edit your question there with the above mentioned information and the information I request in my comment there.

    Also, it'd be nice if you'd provide a name on stackoverflow instead of being named 'user1559544'. 🙂

  • #13693

    Bas Tichelaar

    Hi Robert, thanks for your help. I changed my name and added more details 🙂

  • #13723

    Robert Westerlund

    Wrote a blog post based on your StackOverflow question. The blog post holds a guide on creating a composite DSC configuration. Thought I should post a link to the blog post here, in case someone finds this thread through an internet search.

  • #13690

    Bas Tichelaar

    Hi Robert,

    I did exactly that. But when running it, it complains about the parameters:

    cmdlet BaseConfig at command pipeline position 1
    Supply values for the following parameters:
    PSDesiredStateConfiguration\node : The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
    At E:\Dev\DSCResources\Modules\testconfig.ps1:7 char:5
    +     node localhost
    +     ~~~~
        + CategoryInfo          : MetadataError: (:) [PSDesiredStateConfiguration\node], ParentContainsErrorRecordException
        + FullyQualifiedErrorId : ArgumentIsEmpty,PSDesiredStateConfiguration\node
    Errors occurred while processing configuration 'testconfig'.
    At C:\Windows\system32\WindowsPowerShell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:2088 char:5
    +     throw $errorRecord
    +     ~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidOperation: (testconfig:String) [], InvalidOperationException
        + FullyQualifiedErrorId : FailToProcessConfiguration

    BTW, I'm running Windows 2012R2 with all the latest updates. How important is the directory structure? I'm running the modules from a path included in the $psModulePath environment variable, in a subdir Modules\BaseConfig:


    Is this the correct way? Moving the tree to C:\Program Files\WindowsPowerShell\Modules\BaseConfig did not help.

You must be logged in to reply to this topic.