, -, , , ... ... sha url, . , - .
xml = Builder::XmlMarkup.new(:indent => 2,:escape_attrs => true)
xml.instruct!
xml.catalogs(:version=>2) {list_entries("#{CATALOG_PATH}", xml)}
File.open("#{RAILS_ROOT}/public/catalogs.xml", 'w') {|f| f.write(xml.target!) }
def list_entries(dir,xml)
Dir.glob("#{dir}/*") do |entry|
if File::directory?(entry)
xml.directory(:name=>File.basename(entry)) {
list_entries(entry, xml)
}
else
xml.file(:name=>File.basename(entry),:sha => Digest::SHA256.hexdigest(entry),
:url=>entry.gsub("#{CATALOG_PATH}","#{CATALOG_URL}"))
end
end
end