Windows
如何控制在 Windows 上執行哪個版本的 Powershell Puppet?
Microsoft 最近更改了他們的 Windows Powershell 下載儲存庫以要求 TLS 1.2+,如果沒有執行時設置更改為
Net.ServicePointManager
.我可以更改 Puppet 以使用 Pwsh (7.x) 作為預設值,還是可以更改一些 Puppet 程式碼以將
Net.ServicePointManager
程式碼段注入到配置的 5.1 以在所有 Puppet 啟動的 Windows Powershell 會話中支持 TLS 1.2?我試圖解決的根本問題是失敗並出現與此類
package
似的錯誤。
問題出在舊
windowspowershell
提供商中。修復記錄在此處。
puppetlabs-powershell 模組在自述文件中有一個簡短範例,說明如何通過使用
pwsh
提供程序而不是powershell
提供程序來使用 PowerShell6/7 而不是 5.1:https ://github.com/puppetlabs/puppetlabs-powershell#requirements要使用
pwsh
提供程序,請將provider
行更改為pwsh
並設置path
如果您的 pwsh 安裝不在 PATH 上。exec { 'RESOURCENAME': ... path => '/usr/alice/pscore', provider => pwsh, }