[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Debian JP master SVN www commits (rev.530)
=======================================================
Repository: /org/svn.debian.or.jp/repos
Revision: 530
Commiter: yasu
Date: 2008-02-03 13:08:26 +0900 (日, 03 2月 2008)
=======================================================
Log:
cleanup
=======================================================
Changed:
D cdn/check-surrogates.rb
Deleted: cdn/check-surrogates.rb
===================================================================
--- cdn/check-surrogates.rb 2008-02-03 04:08:00 UTC (rev 529)
+++ cdn/check-surrogates.rb 2008-02-03 04:08:26 UTC (rev 530)
@@ -1,127 +0,0 @@
-#!/usr/bin/env ruby
-
-require 'socket'
-require 'syslog'
-require 'timeout'
-require 'net/http'
-require 'uri'
-require 'resolv'
-require 'find'
-require 'time'
-
-class CheckSurrogate
- attr :lines
-
- def initialize
- @lines = ''
- @slog = Syslog.open(__FILE__,
- Syslog::Constants::LOG_PID |
- Syslog::Constants::LOG_CONS,
- Syslog::Constants::LOG_DAEMON)
- @last_modified = nil
- end
-
- def checkhttp(host, tracefile, first_surrogate=nil, port=80)
- begin
- h = Net::HTTP.new(host, port)
- h.open_timeout = 8
- h.read_timeout = 8
- case response = h.head("/debian/project/trace/#{tracefile}", {"User-Agent" => "Debian-cdn-mirror-ping/1.0"})
- when Net::HTTPSuccess
- if first_surrogate
- @last_modified = Time.parse(response['last-modified'])
- @slog.info("#{host} return #{response.code} #{@last_modified} set")
- return true
- elsif @last_modified && @last_modified == Time.parse(response['last-modified'])
- @slog.info("#{host} return #{response.code} #{@last_modified} equal")
- return true
- elsif @last_modified && @last_modified != Time.parse(response['last-modified'])
- @slog.info("#{host} return #{response.code} #{response['last-modified']} different timestamp. Ignore this host.")
- return nil
- else
- @slog.info("#{host} return #{response.code} (please set $first_surrogate")
- return true
- end
- else
- @slog.info("#{host} return #{response.code}")
- return nil
- end
- rescue Timeout::Error
- @slog.info("#{host} timeout (#{$!})")
- return nil
- rescue Errno::ECONNREFUSED
- @slog.info("#{host} refused open (#{$!})")
- return nil
- rescue
- @slog.info("#{host} some error (#{$!})")
- return nil
- end
- end
-
- def make_surrogate_line(listfile)
- domain = listfile.gsub(/\.\/lists_/, '')
- domain.gsub!(/_/, '.')
-
- surrogates = ''
- @last_modified = nil
- $surrogates = ''
- $tracefile = ''
- $first_surrogate = ''
- require listfile
-
- if $tracefile && $first_surrogate
- checkhttp($first_surrogate, $tracefile, true)
- end
-
- surrogates = $surrogates
-
- s_active = Hash.new
- surrogates.each do |t_ip, t_value|
- if checkhttp(t_ip, $tracefile)
- s_active[t_ip.gsub('.',',')] = t_value
- else
- end
- end
-
- @lines += "\t\"#{domain}\" => [\n"
- s_active.each do |k,v|
- @lines += "\t\t" + '[[' + k + '], ' + v + '],' + "\n"
- end
- @lines += "\t],\n"
-
- end
-end
-
-domains = Array.new
-listfiles = Array.new
-Find.find(File.dirname(__FILE__)) do |f|
- if f =~ /^\.\/lists_([\w_]+)\.rb$/
- cl = $1
- listfiles.push f.gsub(/\.rb$/,'')
- end
-end
-
-cs = CheckSurrogate.new
-
-listfiles.each do |f|
- cs.make_surrogate_line(f)
-end
-
-foo = File.open("addr", 'w')
-foo.puts "##" + Time.now.to_s + "\n\n"
-foo.puts '$addr_db = {
- "default" => {
- "ns.cdn.araki.net" => [
- [[210,157,158,38], 0],
- ],
- "localhost" => [
- [[127,0,0,1], 0],
- ],
-'
-foo.puts cs.lines
-
-foo.puts '
- },
-}'
-
-foo.close