Project

Profile

Help

Story #6225

Updated by bmbouter over 4 years ago

## Background 

 The example of mirror list feed can be found here: http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os. 

 ## Requirements 

 * The sync machinery should autodetect if it's a mirrorlist or not from the data returned. The user should not have a separate URL field or anything like that. 

 * Determine a closest mirror to download content from. The mirrorlist file returned by the URL provides the list of mirrors. [bmbouter] recommends using [aioping](https://github.com/stellarbit/aioping) against all mirrors in the list and sorting them in ascending "ping delay" order 

 * The mirrorlist should the repodata download content from the fastest mirror and proceed to use it with the same sync machinery we use today. mirrors mirrors first. 


 ## Mirrors not being up to date 

 One issue that needs to be accounted for is that some mirrors will not yet have all packages on them due to delay in the mirror network itself. For the first implementation [bmbouter] proposes that we treat a 404 as a 404 and let the task fail for now. As a second story we can implement roll-over support to try other mirrors, but let's do this story in pieces. 

Back