mirror of
https://github.com/puma/puma.git
synced 2022-11-09 13:48:40 -05:00
reenable site feed, with autodiscovery link, by scraping feed43 instead of using the broken atom.xml
git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@868 19e92222-5c0b-0410-8929-a290d50e31e9
This commit is contained in:
parent
efef53f223
commit
6e58b5d68f
3 changed files with 38 additions and 125 deletions
4
Rakefile
4
Rakefile
|
@ -210,8 +210,8 @@ namespace :site do
|
||||||
|
|
||||||
desc "Upload the website"
|
desc "Upload the website"
|
||||||
task :web do
|
task :web do
|
||||||
# Requires the 'webgem' gem and the 'atom-tools' gem
|
# Requires the 'webgem' gem
|
||||||
sh "cd site; webgen; webgen; ruby atom.rb > output/feed.atom; rsync -azv --no-perms --no-times output/* rubyforge.org:/var/www/gforge-projects/mongrel/"
|
sh "cd site; webgen; webgen; curl 'http://feed43.com/mongrel.xml' > output/rss.xml; rsync -azv --no-perms --no-times output/* rubyforge.org:/var/www/gforge-projects/mongrel/"
|
||||||
end
|
end
|
||||||
|
|
||||||
desc "Upload the rdocs"
|
desc "Upload the rdocs"
|
||||||
|
|
86
site/atom.rb
86
site/atom.rb
|
@ -1,86 +0,0 @@
|
||||||
require 'rubygems'
|
|
||||||
require 'atom/collection'
|
|
||||||
require 'find'
|
|
||||||
require 'yaml'
|
|
||||||
require 'redcloth'
|
|
||||||
|
|
||||||
$site ="http://mongrel.rubyforge.org/"
|
|
||||||
|
|
||||||
zed = Atom::Author.new
|
|
||||||
zed.name = "Zed A. Shaw"
|
|
||||||
zed.uri = $site
|
|
||||||
zed.email = "zedNOSPAMshaw A-T zedNOSPAMshaw.com"
|
|
||||||
|
|
||||||
|
|
||||||
f = Atom::Feed.new
|
|
||||||
f.id = $site
|
|
||||||
f.authors << zed
|
|
||||||
|
|
||||||
link = Atom::Link.new
|
|
||||||
link["href"] = $site + "/feed.atom"
|
|
||||||
link["rel"] = "self"
|
|
||||||
f.links << link
|
|
||||||
link = Atom::Link.new
|
|
||||||
link["href"] = $site
|
|
||||||
link["rel"] = "via"
|
|
||||||
f.links << link
|
|
||||||
|
|
||||||
f.title = "Mongrel Web Server"
|
|
||||||
f.subtitle = "Faster Is Possible"
|
|
||||||
f.updated = Time.now
|
|
||||||
f.generator = "atom-tools"
|
|
||||||
f.rights = "Copyright Zed A. Shaw with contributors. All rights reserved."
|
|
||||||
|
|
||||||
class Page
|
|
||||||
attr_accessor :path
|
|
||||||
attr_accessor :stat
|
|
||||||
attr_accessor :uri
|
|
||||||
attr_accessor :info
|
|
||||||
|
|
||||||
def initialize(path)
|
|
||||||
@path = path
|
|
||||||
@stat = File.stat(path)
|
|
||||||
@uri = $site + path.match(/^src(.*)\.page/)[1] + ".html"
|
|
||||||
@info = YAML.load_file(path)
|
|
||||||
end
|
|
||||||
|
|
||||||
def <=>(other)
|
|
||||||
other.stat.mtime <=> self.stat.mtime
|
|
||||||
end
|
|
||||||
|
|
||||||
def to_html
|
|
||||||
if not @html
|
|
||||||
content = open(path) { |f| f.read(1024) }
|
|
||||||
content.gsub!(/^---.*---/m,"")
|
|
||||||
content = content + "...\n\"Read more\":#{uri}"
|
|
||||||
r = RedCloth.new(content)
|
|
||||||
@html = r.to_html
|
|
||||||
end
|
|
||||||
|
|
||||||
@html
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
pages = []
|
|
||||||
|
|
||||||
Find.find("src") do |path|
|
|
||||||
if /.page$/ === path and !path.index("index.page")
|
|
||||||
pages << Page.new(path)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
pages.sort!
|
|
||||||
|
|
||||||
pages[0 .. 30].each do |p|
|
|
||||||
e = Atom::Entry.new
|
|
||||||
e.id = p.uri
|
|
||||||
e.title = p.info["title"]
|
|
||||||
link = Atom::Link.new
|
|
||||||
link["href"] = p.uri
|
|
||||||
e.links << link
|
|
||||||
e.updated = p.stat.mtime
|
|
||||||
f.entries << e
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
puts f.to_s
|
|
|
@ -4,10 +4,9 @@
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||||
<head>
|
<head>
|
||||||
<title>Mongrel: {title: }</title>
|
<title>Mongrel: {title: }</title>
|
||||||
<link rel="stylesheet" href="{relocatable: default.css}" type="text/css" media=
|
<link rel="stylesheet" href="{relocatable: default.css}" type="text/css" media="screen" />
|
||||||
"screen" />
|
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://mongrel.rubyforge.org/rss.xml" />
|
||||||
<meta http-equiv="Content-Type" content=
|
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
|
||||||
"text/html; charset=us-ascii" />
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
Loading…
Add table
Reference in a new issue