Rework HTTP downloader retry logic

Apply retries as global, config-level option `downloadRetries` so that
it can be applied to any aptly command which downloads objects.

Unwrap `errors.Wrap` which is used in downloader.

Unwrap `*url.Error` which should be the actual error returned from the
HTTP client, catch more cases, be more specific around failures.
This commit is contained in:
Andrey Smirnov
2019-08-06 00:41:14 +03:00
committed by Andrey Smirnov
parent 2e7f624b34
commit f0a370db24
22 changed files with 123 additions and 63 deletions

View File

@@ -98,6 +98,7 @@ class BaseTest(object):
"rootDir": "%s/.aptly" % os.environ["HOME"],
"downloadConcurrency": 4,
"downloadSpeedLimit": 0,
"downloadRetries": 5,
"architectures": [],
"dependencyFollowSuggests": False,
"dependencyFollowRecommends": False,

View File

@@ -2,6 +2,7 @@
"rootDir": "${HOME}/.aptly",
"downloadConcurrency": 4,
"downloadSpeedLimit": 0,
"downloadRetries": 5,
"architectures": [],
"dependencyFollowSuggests": false,
"dependencyFollowRecommends": false,

View File

@@ -2,6 +2,7 @@
"rootDir": "${HOME}/.aptly",
"downloadConcurrency": 4,
"downloadSpeedLimit": 0,
"downloadRetries": 0,
"architectures": [],
"dependencyFollowSuggests": false,
"dependencyFollowRecommends": false,

View File

@@ -6,6 +6,6 @@ gpgv: Good signature from "Package Maintainer (PagerDuty, Inc.) <packages@pagerd
Downloading & parsing package files...
Downloading http://packages.pagerduty.com/pdagent/deb/Packages.gz...
Building download queue...
Download queue: 15 items (1.87 MiB)
Download queue: 16 items (2.08 MiB)
Mirror `pagerduty` has been successfully updated.

View File

@@ -6,6 +6,6 @@ openpgp: Good signature from "Package Maintainer (PagerDuty, Inc.) <packages@pag
Downloading & parsing package files...
Downloading http://packages.pagerduty.com/pdagent/deb/Packages.gz...
Building download queue...
Download queue: 15 items (1.87 MiB)
Download queue: 16 items (2.08 MiB)
Mirror `pagerduty` has been successfully updated.