diff options
author | Robert Adam <dev@robert-adam.de> | 2021-03-04 20:49:53 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-04 20:49:53 +0300 |
commit | fb9df6ee6b393a268e6bda28f98fa09e291f795d (patch) | |
tree | 0717c3c79c7d02ed025667bb1c17ebf5ddbd0332 | |
parent | 761294be182f9f707a2cdee7ac672f76148d23e4 (diff) | |
parent | e64c46e74cf29ba2e6a929256d3ce48552412d59 (diff) |
Merge pull request #4828: CI(windows): Use aria2 for downloading
The powershell download is incredibly slow, so we use aria2 instead that
promises to be fast.
This cuts the download times from usually ~20 minutes to ~10 minutes.
-rw-r--r-- | .ci/azure-pipelines/install-environment_windows.ps1 | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/.ci/azure-pipelines/install-environment_windows.ps1 b/.ci/azure-pipelines/install-environment_windows.ps1 index a4d0a8ada..b1b8dea6d 100644 --- a/.ci/azure-pipelines/install-environment_windows.ps1 +++ b/.ci/azure-pipelines/install-environment_windows.ps1 @@ -33,9 +33,7 @@ # Always quit on encountered errors $ErrorActionPreference = 'Stop' -# According to https://github.com/PowerShell/PowerShell/issues/2138 disabling the -# progress bar can significantly increase the speed of Invoke-Web-Request. -$ProgressPreference = 'SilentlyContinue' +choco install aria2 # We require a separate function that makes sure the run command's exit code # is properly checked, so we can mimmick Bash's -e flag. @@ -69,7 +67,12 @@ function Download { Write-Host "Attempt #$iterations" - Invoke-WebRequest -Uri "$source" -OutFile "$destination" + # Separate directory from filename (needed as we have to feed them separately + # into aria2c) + $destDir = Split-Path -Path "$destination" -Parent + $destName = Split-Path -Path "$destination" -Leaf + + aria2c "$source" --dir="$destDir" --out="$destName" Write-Host "Download succeeded" |