Testing: add missing file
[GitX.git] / Site / Rakefile
blobb225469117a39f1290f0d21744a3d3f66b10400a
1 require 'fileutils'
2 require 'erb'
4 task :generate => [:generate_usermanual] do
5   require 'rdiscount'
6   require 'lib/release_notes'
8   `rm -rf output`
9   FileUtils.mkdir("output")
10   `cat text/*.markdown > output/UserManual.markdown`
11   `cp -r assets/* output`
13   template = ERB.new(File.read("templates/site.html"))
15   Dir.glob("text/*.markdown").each do |file|
16     contents = File.read(file)
17                 @body = Markdown.new(ERB.new(contents).result(binding)).to_html
18                 @filename = File.basename(file).gsub(/markdown$/,"html")
19                 File.open("output/" + @filename, "w") do |f|
20                         f.puts template.result(binding)
21                 end
22   end
24         # Add the user manual
25         FileUtils.mkdir("output/images/UserManual")
26         `cp -r UserManual/output/images/* output/images/UserManual`
27         @filename = 'user_manual.html'
28         @body = File.read("UserManual/output/UserManual.html")
29         @title = "User Manual"
30         File.open("output/user_manual.html", "w") do |f|
31                 f.puts template.result(binding)
32         end
34   `open output/index.html`
35 end
37 task :generate_usermanual do
38   require 'rdiscount'
39   `rm -rf UserManual/output`
40   FileUtils.mkdir("UserManual/output")
41   `cat UserManual/text/*.markdown > output/UserManual.markdown`
42   `cp -r UserManual/assets/images UserManual/output`
44   source = Dir.glob("UserManual/text/**/*.markdown").map do |file|
45     File.read(file)
46   end.join("\n")
47   body = Markdown.new(source).to_html
48   File.open("UserManual/output/UserManual.html", "w") do |f|
49     f.puts body
50   end
51 end
53 task :generate_appcast do
54     require 'lib/release_notes.rb'
55     require 'rdiscount'
56     FileUtils.mkdir_p("output/Downloads")
57     template = ERB.new(File.read("templates/sparkle.xml"))
59     filename = ENV["STABLE"] ? "appcast.xml" : "appcast_DEBUG.xml"
60     File.open("output/Downloads/#{filename}", "w") do |f|
61         f.puts template.result(binding)
62     end
63 end
65 task :upload do
66   `rsync -a output/ sydney:public_html/gitx/`
67 end