aboutsummaryrefslogtreecommitdiff
path: root/buildtools/packman/bootstrap/download_file_from_url.ps1
diff options
context:
space:
mode:
authorBryan Galdrikian <[email protected]>2024-12-20 16:15:12 -0800
committerBryan Galdrikian <[email protected]>2024-12-20 16:15:12 -0800
commitb16fdc73d55b467b15595e32c70418ea55c1fe2b (patch)
tree4213c6fe17aafd8bdf23e66d376ca03ccb33ae86 /buildtools/packman/bootstrap/download_file_from_url.ps1
parentRemoving reference to deprecated documentation server (diff)
downloadblast-b16fdc73d55b467b15595e32c70418ea55c1fe2b.tar.xz
blast-b16fdc73d55b467b15595e32c70418ea55c1fe2b.zip
Updating packman
Diffstat (limited to 'buildtools/packman/bootstrap/download_file_from_url.ps1')
-rw-r--r--buildtools/packman/bootstrap/download_file_from_url.ps153
1 files changed, 53 insertions, 0 deletions
diff --git a/buildtools/packman/bootstrap/download_file_from_url.ps1 b/buildtools/packman/bootstrap/download_file_from_url.ps1
new file mode 100644
index 0000000..df55745
--- /dev/null
+++ b/buildtools/packman/bootstrap/download_file_from_url.ps1
@@ -0,0 +1,53 @@
+<#
+Copyright 2019 NVIDIA CORPORATION
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+#>
+
+param(
+[Parameter(Mandatory=$true)][string]$source=$null,
+[string]$output="out.exe"
+)
+$filename = $output
+
+$triesLeft = 4
+$delay = 2
+do
+{
+ $triesLeft -= 1
+
+ try
+ {
+ Write-Host "Downloading from bootstrap.packman.nvidia.com ..."
+ $wc = New-Object net.webclient
+ $wc.Downloadfile($source, $fileName)
+ exit 0
+ }
+ catch
+ {
+ Write-Host "Error downloading $source!"
+ Write-Host $_.Exception|format-list -force
+ if ($triesLeft)
+ {
+ Write-Host "Retrying in $delay seconds ..."
+ Start-Sleep -seconds $delay
+ }
+ $delay = $delay * $delay
+ }
+} while ($triesLeft -gt 0)
+# We only get here if the retries have been exhausted, remove any left-overs:
+if (Test-Path $fileName)
+{
+ Remove-Item $fileName
+}
+exit 1 \ No newline at end of file