newgem 0.8.1 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +25 -0
- data/Manifest.txt +22 -1
- data/Rakefile +38 -5
- data/bin/newgem +38 -26
- data/lib/newgem/version.rb +2 -2
- data/scripts/txt2html +68 -0
- data/scripts/txt2js +59 -0
- data/templates/History.txt +4 -0
- data/templates/Manifest.txt +8 -5
- data/templates/Rakefile +26 -5
- data/templates/app.rb +38 -0
- data/templates/scripts/txt2html +67 -0
- data/templates/website/index.txt +30 -0
- data/templates/website/javascripts/rounded_corners_lite.inc.js +285 -0
- data/templates/website/stylesheets/screen.css +129 -0
- data/templates/website/template.rhtml +48 -0
- data/website/index.html +287 -0
- data/website/index.txt +178 -0
- data/website/javascripts/rounded_corners_lite.inc.js +285 -0
- data/website/rubyforge.html +147 -0
- data/website/rubyforge.txt +72 -0
- data/website/stylesheets/screen.css +129 -0
- data/website/template.js +3 -0
- data/website/template.rhtml +53 -0
- data/website/version-raw.js +3 -0
- data/website/version-raw.txt +2 -0
- data/website/version.js +4 -0
- data/website/version.txt +3 -0
- metadata +44 -5
- data/CHANGELOG +0 -8
data/History.txt
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
+++ 0.9.0 12/4/2007
|
2
|
+
|
3
|
+
+ 3 major enhancements:
|
4
|
+
+ Includes a basic website template, with rake tasks for generation and upload to rubyforge
|
5
|
+
+ Generates a History.txt file, and automatically uses it in Hoe task
|
6
|
+
+ Generated applications include framework for supporting command line options
|
7
|
+
+ 3 minor enhancements:
|
8
|
+
+ Include History.txt in this gem
|
9
|
+
+ test files ordered correctly in generated Manifest.txt
|
10
|
+
+ no blank line in Manifest.txt if no bin apps
|
11
|
+
|
12
|
+
+++ 0.8.1
|
13
|
+
|
14
|
+
- Generated test file's class name now prefixed with Test, instead of suffixed
|
15
|
+
|
16
|
+
+++ 0.8.0
|
17
|
+
|
18
|
+
- Uses hoe itself - less hypocritical
|
19
|
+
- Generated test files use name 'test_<gemname>.rb' instead of '<gemname>_test.rb' to support
|
20
|
+
ZenTest's autotest expectations of naming. Manifest updated too.
|
21
|
+
|
22
|
+
+++ 0.7.1
|
23
|
+
|
24
|
+
- Installed gems now don't require 'hoe' (based on comments at http://blog.evanweaver.com/articles/2007/01/10/if-you-dont-want-to-hoe-echoe)
|
25
|
+
|
data/Manifest.txt
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
History.txt
|
2
2
|
Manifest.txt
|
3
3
|
README
|
4
4
|
Rakefile
|
@@ -6,10 +6,31 @@ bin/newgem
|
|
6
6
|
install.rb
|
7
7
|
lib/newgem.rb
|
8
8
|
lib/newgem/version.rb
|
9
|
+
scripts/txt2html
|
10
|
+
scripts/txt2js
|
9
11
|
setup.rb
|
12
|
+
templates/History.txt
|
10
13
|
templates/Manifest.txt
|
11
14
|
templates/Rakefile
|
15
|
+
templates/app.rb
|
16
|
+
templates/scripts/txt2html
|
12
17
|
templates/setup.rb
|
13
18
|
templates/test.rb
|
19
|
+
templates/website/index.txt
|
20
|
+
templates/website/javascripts/rounded_corners_lite.inc.js
|
21
|
+
templates/website/stylesheets/screen.css
|
22
|
+
templates/website/template.rhtml
|
14
23
|
test/test_helper.rb
|
15
24
|
test/test_newgem.rb
|
25
|
+
website/index.html
|
26
|
+
website/index.txt
|
27
|
+
website/javascripts/rounded_corners_lite.inc.js
|
28
|
+
website/rubyforge.html
|
29
|
+
website/rubyforge.txt
|
30
|
+
website/stylesheets/screen.css
|
31
|
+
website/template.js
|
32
|
+
website/template.rhtml
|
33
|
+
website/version-raw.js
|
34
|
+
website/version-raw.txt
|
35
|
+
website/version.js
|
36
|
+
website/version.txt
|
data/Rakefile
CHANGED
@@ -18,8 +18,8 @@ RUBYFORGE_PROJECT = "newgem"
|
|
18
18
|
HOMEPATH = "http://#{RUBYFORGE_PROJECT}.rubyforge.org"
|
19
19
|
|
20
20
|
REV = nil #File.read(".svn/entries")[/committed-rev="(\d+)"/, 1] rescue nil
|
21
|
-
|
22
|
-
CLEAN.include ['**/.*.sw?', '*.gem', '.config']
|
21
|
+
VERS = ENV['VERSION'] || (Newgem::VERSION::STRING + (REV ? ".#{REV}" : ""))
|
22
|
+
CLEAN.include ['**/.*.sw?', '*.gem', '.config', '**/.DS_Store']
|
23
23
|
RDOC_OPTS = ['--quiet', '--title', "newgem documentation",
|
24
24
|
"--opname", "index.html",
|
25
25
|
"--line-numbers",
|
@@ -28,7 +28,7 @@ RDOC_OPTS = ['--quiet', '--title', "newgem documentation",
|
|
28
28
|
|
29
29
|
# Generate all the Rake tasks
|
30
30
|
# Run 'rake -T' to see list of generated tasks (from gem root directory)
|
31
|
-
hoe = Hoe.new(GEM_NAME,
|
31
|
+
hoe = Hoe.new(GEM_NAME, VERS) do |p|
|
32
32
|
p.author = AUTHOR
|
33
33
|
p.description = DESCRIPTION
|
34
34
|
p.email = EMAIL
|
@@ -39,8 +39,41 @@ hoe = Hoe.new(GEM_NAME, VERSION) do |p|
|
|
39
39
|
p.clean_globs = CLEAN #An array of file patterns to delete on clean.
|
40
40
|
|
41
41
|
# == Optional
|
42
|
-
|
43
|
-
p.extra_deps = [
|
42
|
+
p.changes = p.paragraphs_of("History.txt", 0..1).join("\n\n")
|
43
|
+
p.extra_deps = [
|
44
|
+
['hoe', '>=1.2.0'],
|
45
|
+
['RedCloth','>=3.0.4'],
|
46
|
+
['syntax','>=1.0.0']
|
47
|
+
]
|
44
48
|
#p.spec_extras - A hash of extra values to set in the gemspec.
|
45
49
|
end
|
46
50
|
|
51
|
+
desc 'Generate website files'
|
52
|
+
task :website_generate => :load_consts do
|
53
|
+
(Dir['website/**/*.txt'] - Dir['website/version*.txt']).each do |txt|
|
54
|
+
sh %{ ruby scripts/txt2html #{txt} > #{txt.gsub(/txt$/,'html')} }
|
55
|
+
end
|
56
|
+
sh %{ ruby scripts/txt2js website/version.txt > website/version.js }
|
57
|
+
sh %{ ruby scripts/txt2js website/version-raw.txt > website/version-raw.js }
|
58
|
+
end
|
59
|
+
|
60
|
+
desc 'Upload website files to rubyforge'
|
61
|
+
task :website_upload do
|
62
|
+
config = YAML.load(File.read(File.expand_path("~/.rubyforge/user-config.yml")))
|
63
|
+
host = "#{config["username"]}@rubyforge.org"
|
64
|
+
remote_dir = "/var/www/gforge-projects/#{RUBYFORGE_PROJECT}/"
|
65
|
+
local_dir = 'website'
|
66
|
+
sh %{rsync -av #{local_dir}/ #{host}:#{remote_dir}}
|
67
|
+
end
|
68
|
+
|
69
|
+
desc 'Generate and upload website files'
|
70
|
+
task :website => [:website_generate, :website_upload]
|
71
|
+
|
72
|
+
task :load_consts do
|
73
|
+
ENV['AUTHOR'] = AUTHOR
|
74
|
+
ENV['EMAIL'] = EMAIL
|
75
|
+
ENV['DESCRIPTION'] = DESCRIPTION
|
76
|
+
ENV['GEM_NAME'] = GEM_NAME
|
77
|
+
ENV['RUBYFORGE_PROJECT'] = RUBYFORGE_PROJECT
|
78
|
+
ENV['HOMEPATH'] = HOMEPATH
|
79
|
+
end
|
data/bin/newgem
CHANGED
@@ -35,6 +35,7 @@ BANNER
|
|
35
35
|
opts.parse!(ARGV)
|
36
36
|
end
|
37
37
|
OPTIONS[:version] = OPTIONS[:version].to_s.split(/\./)
|
38
|
+
version_str = OPTIONS[:version].join('.')
|
38
39
|
|
39
40
|
gem_name = project_name = ARGV[0]
|
40
41
|
parser.parse!(["-h"]) unless gem_name
|
@@ -43,9 +44,11 @@ module_name = project_name.classify
|
|
43
44
|
lib = project_name + '/lib'
|
44
45
|
lib_project_name = project_name + '/lib/' + project_name
|
45
46
|
version = project_name + "/lib/" + project_name + "/version.rb"
|
46
|
-
|
47
|
-
%w(Rakefile CHANGELOG.txt README.txt setup.rb Manifest.txt History.txt).
|
47
|
+
readme, setup = %w(README.txt setup.rb).
|
48
48
|
collect {|f| project_name + '/' + f}
|
49
|
+
template_files = %w(Rakefile Manifest.txt History.txt scripts/txt2html website/index.txt website/template.rhtml)
|
50
|
+
copy_files = %w(website/javascripts/rounded_corners_lite.inc.js website/stylesheets/screen.css)
|
51
|
+
|
49
52
|
|
50
53
|
test = project_name + "/test"
|
51
54
|
main = project_name + "/lib/" + project_name + ".rb"
|
@@ -53,7 +56,8 @@ test_helper = test + "/test_helper.rb"
|
|
53
56
|
unit_test = test + "/test_" + project_name + ".rb"
|
54
57
|
|
55
58
|
examples = project_name + '/examples'
|
56
|
-
bin
|
59
|
+
bin = project_name + '/bin'
|
60
|
+
folders = %w( scripts website website/javascripts website/stylesheets)
|
57
61
|
|
58
62
|
# Rakefile variables
|
59
63
|
author = ENV['USERNAME'] || ENV['USER'] || 'you'
|
@@ -63,12 +67,6 @@ FileUtils.rm_rf project_name
|
|
63
67
|
puts "creating: " + project_name
|
64
68
|
Dir.mkdir project_name
|
65
69
|
|
66
|
-
puts "creating: " + changelog
|
67
|
-
FileUtils.touch changelog
|
68
|
-
|
69
|
-
puts "creating: " + history
|
70
|
-
FileUtils.touch history
|
71
|
-
|
72
70
|
puts "creating: " + readme
|
73
71
|
File.open(readme, 'w') do |file|
|
74
72
|
file << <<-eos
|
@@ -82,6 +80,12 @@ end
|
|
82
80
|
puts "creating: " + lib
|
83
81
|
Dir.mkdir lib
|
84
82
|
|
83
|
+
folders.each do |folder|
|
84
|
+
new_folder = project_name + '/' + folder
|
85
|
+
puts "creating: " + new_folder
|
86
|
+
Dir.mkdir new_folder
|
87
|
+
end
|
88
|
+
|
85
89
|
if OPTIONS[:import_path]
|
86
90
|
require 'fileutils'
|
87
91
|
OPTIONS[:import_path].chomp! if OPTIONS[:import_path][-1] == 47 # /
|
@@ -116,13 +120,12 @@ Dir.mkdir bin
|
|
116
120
|
|
117
121
|
if OPTIONS[:bin_name]
|
118
122
|
bin_names_list = OPTIONS[:bin_name].split(',')
|
123
|
+
template = File.open(templates + 'app.rb','r') {|f| f.readlines.join}
|
124
|
+
p template
|
119
125
|
bin_names_list.each do |bin_name|
|
120
126
|
puts "creating: " + bin + '/' + bin_name
|
121
127
|
File.open(bin + '/' + bin_name, 'w') do |file|
|
122
|
-
file <<
|
123
|
-
#!/usr/bin/env ruby
|
124
|
-
|
125
|
-
eos
|
128
|
+
file << eval('"' + template.gsub(/"/, '\"') + '"')
|
126
129
|
end
|
127
130
|
end
|
128
131
|
bin_names = bin_names_list.join(' ')
|
@@ -131,19 +134,6 @@ else
|
|
131
134
|
bin_names_list = []
|
132
135
|
end
|
133
136
|
|
134
|
-
puts "creating: " + rakefile
|
135
|
-
template = File.open(templates + 'Rakefile','r') {|f| f.readlines.join}
|
136
|
-
File.open(rakefile, 'w') do |file|
|
137
|
-
file << eval('"' + template.gsub(/"/, '\"') + '"')
|
138
|
-
end
|
139
|
-
|
140
|
-
puts "creating: " + manifest
|
141
|
-
template = File.open(templates + 'Manifest.txt','r') {|f| f.readlines.join}
|
142
|
-
File.open(manifest, 'w') do |file|
|
143
|
-
file << eval('"' + template.gsub(/"/, '\"') + '"')
|
144
|
-
end
|
145
|
-
|
146
|
-
|
147
137
|
|
148
138
|
puts "creating: " + test
|
149
139
|
Dir.mkdir test
|
@@ -171,4 +161,26 @@ File.open(setup, 'w') do |file|
|
|
171
161
|
file << template
|
172
162
|
end
|
173
163
|
|
164
|
+
bin_names_list = bin_names_list.collect {|name| 'bin/' + name }.join("\n")
|
165
|
+
bin_names_list += "\n" if bin_names_list.size > 0
|
166
|
+
test_names_list = ['helper.rb',"#{project_name}.rb"].sort.collect {|name| 'test/test_' + name }.join("\n")
|
167
|
+
|
168
|
+
template_files.each do |template_file|
|
169
|
+
puts "creating: " + project_name + '/' + template_file
|
170
|
+
template = File.open(templates + template_file,'r') {|f| f.readlines.join}
|
171
|
+
File.open(project_name + '/' + template_file, 'w') do |file|
|
172
|
+
file << eval('"' + template.gsub(/"/, '\"') + '"')
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
176
|
+
copy_files.each do |file|
|
177
|
+
puts "copying: " + project_name + '/' + file
|
178
|
+
template = File.open(templates + file,'r') {|f| f.readlines.join}
|
179
|
+
File.open(project_name + '/' + file, 'w') do |file|
|
180
|
+
file << template
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
|
185
|
+
|
174
186
|
puts "NOW - update #{gem_name}/Rakefile with gem description, etc"
|
data/lib/newgem/version.rb
CHANGED
data/scripts/txt2html
ADDED
@@ -0,0 +1,68 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'redcloth'
|
5
|
+
require 'syntax/convertors/html'
|
6
|
+
require 'erb'
|
7
|
+
|
8
|
+
class Fixnum
|
9
|
+
def ordinal
|
10
|
+
# teens
|
11
|
+
return 'th' if (10..19).include?(self % 100)
|
12
|
+
# others
|
13
|
+
case self % 10
|
14
|
+
when 1: return 'st'
|
15
|
+
when 2: return 'nd'
|
16
|
+
when 3: return 'rd'
|
17
|
+
else return 'th'
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
class Time
|
23
|
+
def pretty
|
24
|
+
return "#{mday}#{mday.ordinal} #{strftime('%B')} #{year}"
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def convert_syntax(syntax, source)
|
29
|
+
return Syntax::Convertors::HTML.for_syntax(syntax).convert(source).gsub(%r!^<pre>|</pre>$!,'')
|
30
|
+
end
|
31
|
+
|
32
|
+
require File.dirname(__FILE__) + '/../lib/newgem/version.rb'
|
33
|
+
|
34
|
+
version = Newgem::VERSION::STRING
|
35
|
+
download = ENV['HOMEPAGE']
|
36
|
+
|
37
|
+
if ARGV.length >= 1
|
38
|
+
src, template = ARGV
|
39
|
+
template ||= File.dirname(__FILE__) + '/../website/template.rhtml'
|
40
|
+
|
41
|
+
else
|
42
|
+
puts("Usage: #{File.split($0).last} source.txt [template.rhtml] > output.html")
|
43
|
+
exit!
|
44
|
+
end
|
45
|
+
|
46
|
+
template = ERB.new(File.open(template).read)
|
47
|
+
|
48
|
+
title = nil
|
49
|
+
body = nil
|
50
|
+
File.open(src) do |fsrc|
|
51
|
+
title_text = fsrc.readline
|
52
|
+
body_text = fsrc.read
|
53
|
+
syntax_items = []
|
54
|
+
body_text.gsub!(%r!<(pre|code)[^>]*?syntax=['"]([^'"]+)[^>]*>(.*?)</\1>!m){
|
55
|
+
ident = syntax_items.length
|
56
|
+
element, syntax, source = $1, $2, $3
|
57
|
+
syntax_items << "<#{element} class=\"syntax\">#{convert_syntax(syntax, source)}</#{element}>"
|
58
|
+
"syntax-temp-#{ident}"
|
59
|
+
}
|
60
|
+
title = RedCloth.new(title_text).to_html.gsub(%r!<.*?>!,'').strip
|
61
|
+
body = RedCloth.new(body_text).to_html
|
62
|
+
body.gsub!(%r!(?:<pre><code>)?syntax-temp-(\d+)(?:</code></pre>)?!){ syntax_items[$1.to_i] }
|
63
|
+
end
|
64
|
+
stat = File.stat(src)
|
65
|
+
created = stat.ctime
|
66
|
+
modified = stat.mtime
|
67
|
+
|
68
|
+
$stdout << template.result(binding)
|
data/scripts/txt2js
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'redcloth'
|
5
|
+
require 'syntax/convertors/html'
|
6
|
+
require 'erb'
|
7
|
+
require 'active_support'
|
8
|
+
require File.dirname(__FILE__) + '/../lib/newgem/version.rb'
|
9
|
+
|
10
|
+
version = Newgem::VERSION::STRING
|
11
|
+
download = 'http://rubyforge.org/projects/newgem'
|
12
|
+
|
13
|
+
class Fixnum
|
14
|
+
def ordinal
|
15
|
+
# teens
|
16
|
+
return 'th' if (10..19).include?(self % 100)
|
17
|
+
# others
|
18
|
+
case self % 10
|
19
|
+
when 1: return 'st'
|
20
|
+
when 2: return 'nd'
|
21
|
+
when 3: return 'rd'
|
22
|
+
else return 'th'
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
class Time
|
28
|
+
def pretty
|
29
|
+
return "#{mday}#{mday.ordinal} #{strftime('%B')} #{year}"
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def convert_syntax(syntax, source)
|
34
|
+
return Syntax::Convertors::HTML.for_syntax(syntax).convert(source).gsub(%r!^<pre>|</pre>$!,'')
|
35
|
+
end
|
36
|
+
|
37
|
+
if ARGV.length >= 1
|
38
|
+
src, template = ARGV
|
39
|
+
template ||= File.dirname(__FILE__) + '/../website/template.js'
|
40
|
+
else
|
41
|
+
puts("Usage: #{File.split($0).last} source.txt [template.js] > output.html")
|
42
|
+
exit!
|
43
|
+
end
|
44
|
+
|
45
|
+
template = ERB.new(File.open(template).read)
|
46
|
+
|
47
|
+
title = nil
|
48
|
+
body = nil
|
49
|
+
File.open(src) do |fsrc|
|
50
|
+
title_text = fsrc.readline
|
51
|
+
body_text = fsrc.read
|
52
|
+
title = RedCloth.new(title_text).to_html.gsub(%r!<.*?>!,'').strip
|
53
|
+
body = RedCloth.new(body_text)
|
54
|
+
end
|
55
|
+
stat = File.stat(src)
|
56
|
+
created = stat.ctime
|
57
|
+
modified = stat.mtime
|
58
|
+
|
59
|
+
$stdout << template.result(binding)
|
data/templates/Manifest.txt
CHANGED
@@ -1,11 +1,14 @@
|
|
1
|
-
CHANGELOG.txt
|
2
1
|
History.txt
|
3
2
|
Manifest.txt
|
4
3
|
README.txt
|
5
4
|
Rakefile
|
6
|
-
#{bin_names_list
|
7
|
-
lib/#{project_name}.rb
|
5
|
+
#{bin_names_list}lib/#{project_name}.rb
|
8
6
|
lib/#{project_name}/version.rb
|
7
|
+
scripts/txt2html
|
9
8
|
setup.rb
|
10
|
-
|
11
|
-
|
9
|
+
#{test_names_list}
|
10
|
+
website/index.html
|
11
|
+
website/index.txt
|
12
|
+
website/javascripts/rounded_corners_lite.inc.js
|
13
|
+
website/stylesheets/screen.css
|
14
|
+
website/template.rhtml
|
data/templates/Rakefile
CHANGED
@@ -22,7 +22,7 @@ HOMEPATH = "http://\#{RUBYFORGE_PROJECT}.rubyforge.org"
|
|
22
22
|
NAME = "#{gem_name}"
|
23
23
|
REV = nil # UNCOMMENT IF REQUIRED: File.read(".svn/entries")[/committed-rev="(\d+)"/, 1] rescue nil
|
24
24
|
VERS = ENV['VERSION'] || (#{module_name}::VERSION::STRING + (REV ? ".\#{REV}" : ""))
|
25
|
-
|
25
|
+
CLEAN.include ['**/.*.sw?', '*.gem', '.config', '**/.DS_Store']
|
26
26
|
RDOC_OPTS = ['--quiet', '--title', "#{gem_name} documentation",
|
27
27
|
"--opname", "index.html",
|
28
28
|
"--line-numbers",
|
@@ -44,11 +44,32 @@ hoe = Hoe.new(GEM_NAME, VERS) do |p|
|
|
44
44
|
p.summary = DESCRIPTION
|
45
45
|
p.url = HOMEPATH
|
46
46
|
p.rubyforge_name = RUBYFORGE_PROJECT if RUBYFORGE_PROJECT
|
47
|
-
p.test_globs = ["test
|
47
|
+
p.test_globs = ["test/**/test_*.rb"]
|
48
48
|
p.clean_globs = CLEAN #An array of file patterns to delete on clean.
|
49
49
|
|
50
50
|
# == Optional
|
51
|
-
|
52
|
-
#p.extra_deps
|
53
|
-
#p.spec_extras
|
51
|
+
p.changes = p.paragraphs_of("History.txt", 0..1).join("\\n\\n")
|
52
|
+
#p.extra_deps = [] # An array of rubygem dependencies [name, version], e.g. [ ['active_support', '>= 1.3.1'] ]
|
53
|
+
#p.spec_extras = {} # A hash of extra values to set in the gemspec.
|
54
54
|
end
|
55
|
+
|
56
|
+
|
57
|
+
desc 'Generate website files'
|
58
|
+
task :website_generate do
|
59
|
+
Dir['website/**/*.txt'].each do |txt|
|
60
|
+
sh %{ ruby scripts/txt2html \#{txt} > \#{txt.gsub(/txt$/,'html')} }
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
desc 'Upload website files to rubyforge'
|
65
|
+
task :website_upload do
|
66
|
+
config = YAML.load(File.read(File.expand_path("~/.rubyforge/user-config.yml")))
|
67
|
+
host = "\#{config["username"]}@rubyforge.org"
|
68
|
+
remote_dir = "/var/www/gforge-projects/\#{RUBYFORGE_PROJECT}/"
|
69
|
+
# remote_dir = "/var/www/gforge-projects/\#{RUBYFORGE_PROJECT}/#{GEM_NAME}"
|
70
|
+
local_dir = 'website'
|
71
|
+
sh %{rsync -av \#{local_dir}/ \#{host}:\#{remote_dir}}
|
72
|
+
end
|
73
|
+
|
74
|
+
desc 'Generate and upload website files'
|
75
|
+
task :website => [:website_generate, :website_upload]
|