Retry Chocolatey install to workaround failures
authorShane Synan <digitalcircuit36939@gmail.com>
Mon, 28 Nov 2016 11:39:49 +0000 (05:39 -0600)
committerShane Synan <digitalcircuit36939@gmail.com>
Mon, 28 Nov 2016 11:39:49 +0000 (05:39 -0600)
Automatically retry up to 3 times on failure when installing
Chocolatey modules, using the 'appveyor-retry' script.  This can be
removed later if needed.

Sometimes Chocolatey returns a 404 for a package that exists.  This
happens a lot.  The official fix is to get the Business edition for
the more-stable private CDN, but since we're an open-source community
effort, sometimes a little kludgery goes a long way.

See http://help.appveyor.com/discussions/suggestions/816-generic-wrapper-for-retry#comment_40579488
And https://github.com/appveyor/ci/issues/418

scripts/build/appveyorHelp.psm1

index 3cbf468..a802a00 100644 (file)
@@ -122,7 +122,10 @@ function SETUP-QT()
 function Install-ChocolatelyModule([string] $module, [string[]] $myargs)
 {
     Write-Host "Install chocolately package $module"
-    LogExec cinst $module @myargs -y
+    LogExec appveyor-retry cinst $module @myargs -y
+    # Retry installation in case it fails; remove 'appveyor-retry' to run in a generic manner
+    # See http://help.appveyor.com/discussions/suggestions/816-generic-wrapper-for-retry#comment_40579488
+    # And https://github.com/appveyor/ci/issues/418
 }
 
 function Install-CmakeGitModule([string] $url, [hashtable] $arguments)