diff --git a/manifests/install.pp b/manifests/install.pp index 4a7fb9c7..044db873 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -2,12 +2,20 @@ class chocolatey::install { assert_private() - $download_url = $::chocolatey::chocolatey_download_url - $unzip_type = $::chocolatey::use_7zip ? { + $_download_url = $::chocolatey::chocolatey_download_url + $chocolatey_version = $::chocolatey::chocolatey_version + $unzip_type = $::chocolatey::use_7zip ? { true => '7zip', default => 'windows' } + if "${_download_url}" =~ /^http(s):\/\/.*api\/v2\/package.*\/$/ and "${chocolatey_version}" =~ /\d+\./ { + # Assume a nuget server source and we want to download a specific version instead the most current + $download_url = "${_download_url}${chocolatey_version}" + } else { + $download_url = $_download_url + } + registry_value { 'ChocolateyInstall environment value': ensure => present, path => 'HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\ChocolateyInstall',