在下载并解压缩目标节点后,我无法找到有关如何执行我的PowerShell脚本的任何示例。
我使用DSC xRemoteFile下载软件包然后存档以解压缩我的msi和powershell脚本。
我可以使用一个DSC脚本资源来调用我的powershell脚本,你们中的任何人都可以为我提供任何示例吗?我的PS脚本和MSI位于C:\ Installations。
示例:
Script install
{
GetScript = {
}
SetScript = {
}
TestScript = {
}
}
答案 0 :(得分:2)
首先,你应该使用脚本扩展,它将下载文件并执行它。
在您的情况下,您只需编写powershell代码来执行脚本:
. .\script.ps1
你只需要放入适当的路径
答案 1 :(得分:1)
发生了类似的问题,这就是我们团队解决该问题的方式:
xRemoteFile DownloadHelloWorldScript
{
DestinationPath = "c:\Temp\Hello-World.ps1"
Uri = "https://<account>.blob.core.windows.net/public/Temp/Hello-World.ps1"
MatchSource = $false
}
Script RunHelloWorldScript
{
SetScript = { . "c:\Temp\Hello-World.ps1" }
TestScript = { $false }
GetScript = { @{ Result = (Get-Content "c:\Temp\Hello-World.ps1") } }
DependsOn = "[xRemoteFile]DownloadHelloWorldScript"
}
当我使用TestScript = { Test-Path "c:\Temp\Hello-World.ps1" }
而不是{ $false }
时,DSC会看到文件已下载,并跳过了运行脚本的过程。我想我最终将用一些东西代替它来进行检查,以验证以前的脚本是否成功运行。