diff --git a/GPUUpdaterTool.ps1 b/GPUUpdaterTool.ps1 index 23e4041..9c1b978 100644 --- a/GPUUpdaterTool.ps1 +++ b/GPUUpdaterTool.ps1 @@ -239,6 +239,11 @@ function validDriver { } } +# We hard code the google cloud driver version since the google storage bucket can no longer be listed. +# See: https://github.com/parsec-cloud/Parsec-Cloud-Preparation-Tool/issues/101 +$GoogleCloudNvidiaDriverVersion = '512.78' +$GoogleCloudNvidiaDriverUrl = 'https://storage.googleapis.com/nvidia-drivers-us-public/GRID/vGPU14.1/512.78_grid_win10_win11_server2016_server2019_server2022_64bit_international.exe' + Function webDriver { #checks the latest available graphics driver from nvidia.com if (($gpu.supported -eq "No") -eq $true) {"Sorry, this GPU (" + $gpu.name + ") is not yet supported by this tool." @@ -261,8 +266,7 @@ Function webDriver { $G4WebDriver.tostring().split('/')[1].split('-')[0] } Elseif ((($gpu.supported -eq "UnOfficial") -and ($gpu.cloudprovider -eq "Google"))-eq $true) { - $googlestoragedriver =([xml](invoke-webrequest -uri https://storage.googleapis.com/nvidia-drivers-us-public).content).listbucketresult.contents.key -like "*GRID1*server2016*.exe" | select -Last 1 - $googlestoragedriver.split('/')[2].split('_')[0] + $GoogleCloudNvidiaDriverVersion } Elseif((($gpu.Supported -eq "yes") -and ($gpu.cloudprovider -eq "azure")) -eq $true){ $azuresupportpage = (Invoke-WebRequest -Uri https://docs.microsoft.com/en-us/azure/virtual-machines/windows/n-series-driver-setup -UseBasicParsing).links.outerhtml -like "*GRID*" @@ -482,8 +486,7 @@ function DownloadDriver { $GPU.AMDExtractedPath = Get-ChildItem -Path "$($system.Path)\ExtractedGPUDriver\" -recurse -Directory | Where-Object name -like '*WT6A_INF*' | % FullName } Elseif ((($gpu.supported -eq "UnOfficial") -and ($gpu.cloudprovider -eq "Google"))-eq $true) { - $googlestoragedriver =([xml](invoke-webrequest -uri https://storage.googleapis.com/nvidia-drivers-us-public).content).listbucketresult.contents.key -like "*GRID1*server2016*.exe" | select -last 1 - (New-Object System.Net.WebClient).DownloadFile($("https://storage.googleapis.com/nvidia-drivers-us-public/" + $googlestoragedriver), "C:\ParsecTemp\Drivers\GoogleGRID.exe") + (New-Object System.Net.WebClient).DownloadFile($GoogleCloudNvidiaDriverUrl, "C:\ParsecTemp\Drivers\GoogleGRID.exe") } Elseif((($gpu.Supported -eq "yes") -and ($gpu.cloudprovider -eq "aws") -and ($gpu.Device_ID -ne "DEV_118A") -and ($gpu.Device_ID -ne "DEV_1EB8")) -eq $true) { $s3path = $(([xml](invoke-webrequest -uri https://ec2-windows-nvidia-drivers.s3.amazonaws.com).content).listbucketresult.contents.key -like "latest/*server2016*")