我正在尝试编写通过 PackageManagement(又名 OneGet)安装包的所需状态配置。包“notepadplusplus”来自 Chocolatey 存储库,但我想使用 PackageManagement 而不是 Chocolatey 客户端。我找不到 DSC 资源来做这件事,所以我正在使用脚本资源。
DSC 运行没有错误,Notepad++ 显示在包列表中,但从未真正安装(Notepad++.exe
系统上无处)。
我在 Windows 10 虚拟机上运行。
这是我正在做的一个简化示例。有人发现我做错了什么吗?
dscConfig.ps1
Configuration BuildProvisioning
{
param(
[string[]]$computerName="localhost"
)
Import-DscResource -ModuleName PSDesiredStateConfiguration
Node $computerName
{
Script PackageManagementTest
{
SetScript = {
Get-PackageProvider NuGet -Force | Out-Null
Get-PackageProvider Chocolatey -Force | Out-Null
Install-Package notepadplusplus -Force
}
TestScript = { $false }
GetScript = { @{} }
}
}
}
这就是我在虚拟机上启动它的方式
. .\dscConfig.ps1
BuildProvisioning
winrm quickconfig -quiet
Start-DscConfiguration -Verbose -Force -Wait -ComputerName "localhost" -Path ".\BuildProvisioning\"