aboutsummaryrefslogtreecommitdiffstats
path: root/modules/mga-mirrors/files/check_mirrors_status
diff options
context:
space:
mode:
Diffstat (limited to 'modules/mga-mirrors/files/check_mirrors_status')
-rwxr-xr-xmodules/mga-mirrors/files/check_mirrors_status11
1 files changed, 9 insertions, 2 deletions
diff --git a/modules/mga-mirrors/files/check_mirrors_status b/modules/mga-mirrors/files/check_mirrors_status
index 5361dfad..43df23b4 100755
--- a/modules/mga-mirrors/files/check_mirrors_status
+++ b/modules/mga-mirrors/files/check_mirrors_status
@@ -32,12 +32,19 @@ end
def get_mirrors
# TODO Get it from the DB
mirrors = []
+ url = nil
fetch_url("http://mirrors.mageia.org/").each_line{|l|
- next unless l =~ /http:.*>http/
+ if l =~ /rsync.mageia.org/ then
+ mirrors.prepend url
+ url = nil
+ next
+ end
+ next unless l =~ /http:.*>http/
+ mirrors.append url unless url.nil?
url = l.sub(/<a href="(http[^"]*)".*\n/, '\1')
url += "/" unless url =~ /\/$/
- mirrors << url
}
+ mirrors.append url unless url.nil?
mirrors
end