storage.retry: Implement remaining `_add_endpoint` with retry policy
This will allow to align the loader package's implementations with the loader-core's regarding retry policy (no retry policy on the package ones).
Also, as a next step, this will allow again to simplify the loader-core's implementation.
This should help in fixing or at least decreasing the frequency of [1] (which happens for all package loaders, not only cran's).
endpoints:
- origin_visit_add
- origin_metadata_add
- origin_visit_update
- directory_add
- revision_add
- release_add
- snapshot_add
- tool_add
- metadata_provider_add
Note: The diff is a tad big because of tests.
Related to !307 (closed) (which only added content_add
)
Test Plan
tox
Migrated from D2518 (view on Phabricator)