如何在同一脚本中调用 DSC 之前安装和导入模块?

How to install and import module before call DSC in the same script?

我正在尝试创建一个脚本来准备我的网络服务器。 VM 是 Windows Server 2016 全新安装,没有任何调整和导入的模块和配置。在脚本中,我混合了用于安装 .NET、创建目录、加入域的函数和 DSC 配置。 在脚本的开头,我调用:

Install-PackageProvider -Name Nuget... Install-Module xWebAdmin... Import-Module ...

然后是一些功能,以及DSC配置。 当我 运行 脚本时,首先转到 DSC 配置并显示下图中的错误。

我不知道我的脚本如何以及在哪里,首先安装所有必要的包和模块,然后执行脚本和配置的其余部分。

因为我没有安装和导入模块 xWindowsUpdate、xWebAdministration,即使我将 import-module 放在脚本的开头,它也不会执行。

Install-Module -Name xWebAdministration -Force
Install-Module -Name xWindowsUpdate -Force 

Configuration IIS
{  
Import-DscResource –ModuleName PSDesiredStateConfiguration, xWindowsUpdate, 
xWebAdministration

Node "localhost"
{  
    {
        Ensure = "Present" 
        Type = "Directory" 
        DestinationPath = "C:\DSCDeployment"    
    }

有什么提示和建议吗?

似乎无法在同一个文件中安装模块和调用 DSC 配置。首先,PowerShell 将解析配置并尝试解析 Import-DSCResource 关键字(并失败,因为它们不可用)。 它必须在 2 个单独的文件中完成...