我已经将以下Powershell脚本作为Octopus Deploy的一部分运行。
但是,如果尚未安装它们,我只希望它们安装。
我已安装它们,最好只安装它们,如果它们低于某个版本。
有人可以建议这样做的最佳方法吗?
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Confirm:$False -Force
Install-Module -Name SqlServer -AllowClobber -Confirm:$False -Force
答案 0 :(得分:2)
这样的事情应该有效:
if (Get-Module -ListAvailable -Name SqlServer) {
Write-Host "SQL Already Installed"
}
else {
try {
Install-Module -Name SqlServer -AllowClobber -Confirm:$False -Force
}
catch [Exception] {
$_.message
exit
}
}
if ((Get-PackageProvider -Name NuGet).version -lt 2.8.5.201 ) {
try {
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Confirm:$False -Force
}
catch [Exception]{
$_.message
exit
}
}
else {
Write-Host "Version of NuGet installed = " (Get-PackageProvider -Name NuGet).version
}