【问题标题】:How to install and import module before call DSC in the same script?如何在同一脚本中调用 DSC 之前安装和导入模块?
【发布时间】:2023-04-05 04:07:02
【问题描述】:

我正在尝试创建一个脚本来准备我的网络服务器。 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 配置之前被导入?
  • 我将 import 放在脚本的开头,但执行星形成了位于脚本中间某处的 DSC 配置。我试图在调用 DSC 配置之前放置某个位置,但我无法管理它,因为我不知道该放置在哪里。
  • 你能用完整的错误文本编辑你的帖子吗?我怀疑这里发生了其他事情。
  • 我不确定我缺少什么以及为什么跳过第一步。另外,我在 DSC 配置之前添加了 Import-Module,但错误消息是一样的。
  • 你能运行Get-Module xWebAdministration吗?您不需要在每次运行脚本时都安装它。

标签: powershell dsc


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-08
    • 2018-03-25
    • 2016-05-12
    • 1970-01-01
    • 1970-01-01
    • 2018-06-26
    • 2016-12-23
    • 2013-06-18
    相关资源
    最近更新 更多