Problem Statement
Currently a distribution can only point to a single remote for pull-through caching. There are use cases where a distribution needs to pull content from multiple upstream sources. A new MultiRemoteDistribution is needed that can point to multiple remotes. When the content app handles a pull-through cache request using such a distribution, it should try each remote in order until it finds one that has the requested artifact. Once found, the content should be streamed to the client and cached in Pulp.
Requirements
- Add a new
MultiRemoteDistribution model that can reference multiple remotes
- When serving a pull-through cache request, the content app must try each remote associated with the distribution until the artifact is found
- Once a remote with the content is found, stream the artifact to the client and cache the package in Pulp
- Each plugin must be able to inherit from
MultiRemoteDistribution and implement it for its specific content type
Problem Statement
Currently a distribution can only point to a single remote for pull-through caching. There are use cases where a distribution needs to pull content from multiple upstream sources. A new MultiRemoteDistribution is needed that can point to multiple remotes. When the content app handles a pull-through cache request using such a distribution, it should try each remote in order until it finds one that has the requested artifact. Once found, the content should be streamed to the client and cached in Pulp.
Requirements
MultiRemoteDistributionmodel that can reference multiple remotesMultiRemoteDistributionand implement it for its specific content type