rabal 0.2.3 → 0.3.3
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/{CHANGES → HISTORY} +23 -7
- data/README +96 -66
- data/bin/rabal +6 -7
- data/gemspec.rb +47 -0
- data/lib/rabal.rb +63 -19
- data/lib/rabal/application.rb +4 -4
- data/lib/rabal/plugin/foundation.rb +4 -3
- data/lib/rabal/version.rb +16 -14
- data/resources/trees/bin/rabal.project +7 -8
- data/resources/trees/core/HISTORY.erb +4 -0
- data/resources/trees/core/README.erb +6 -0
- data/resources/trees/core/Rakefile.erb +53 -7
- data/resources/trees/core/gemspec.rb.erb +48 -0
- data/resources/trees/core/lib/rabal.project.rb.erb +52 -20
- data/resources/trees/core/lib/rabal.project/version.rb.erb +21 -13
- data/resources/trees/core/tasks/announce.rake.erb +36 -54
- data/resources/trees/core/tasks/config.rb.erb +107 -0
- data/resources/trees/core/tasks/distribution.rake.erb +19 -13
- data/resources/trees/core/tasks/documentation.rake.erb +25 -19
- data/resources/trees/core/tasks/utils.rb.erb +80 -0
- data/resources/trees/ext/tasks/extension.rake.erb +42 -10
- data/resources/trees/rubyforge/tasks/rubyforge.rake.erb +48 -40
- data/resources/trees/spec/spec/rabal.project_spec.rb.erb +10 -10
- data/resources/trees/spec/tasks/rspec.rake.erb +23 -18
- data/resources/trees/test/tasks/testunit.rake.erb +14 -9
- data/resources/trees/test/test/rabal.project_test.rb.erb +6 -6
- data/resources/trees/website/tasks/site.rake.erb +5 -5
- data/spec/application_spec.rb +3 -3
- data/spec/bin_plugin_spec.rb +1 -1
- data/spec/core_plugin_spec.rb +1 -1
- data/spec/license_plugin_spec.rb +1 -1
- data/spec/plugin_tree_spec.rb +1 -1
- data/spec/spec_helper.rb +3 -6
- data/spec/spec_plugin_spec.rb +1 -1
- data/spec/test_plugin_spec.rb +1 -1
- data/tasks/announce.rake +40 -0
- data/tasks/config.rb +99 -0
- data/tasks/distribution.rake +45 -0
- data/tasks/documentation.rake +31 -0
- data/tasks/rspec.rake +29 -0
- data/tasks/rubyforge.rake +52 -0
- data/tasks/utils.rb +80 -0
- metadata +105 -59
- data/Rakefile +0 -12
- data/lib/rabal/specification.rb +0 -128
- data/resources/trees/core/CHANGES.erb +0 -4
- data/resources/trees/core/lib/rabal.project/gemspec.rb.erb +0 -51
- data/resources/trees/core/lib/rabal.project/specification.rb.erb +0 -128
- data/resources/trees/core/tasks/setup.rb.erb +0 -40
@@ -1,24 +1,29 @@
|
|
1
|
-
require 'spec/rake/spectask'
|
2
1
|
|
3
|
-
|
4
|
-
# Testing - this is either test or spec, include the appropriate one
|
5
|
-
#-----------------------------------------------------------------------
|
6
|
-
namespace :test do
|
2
|
+
require 'tasks/config'
|
7
3
|
|
8
|
-
|
4
|
+
#--------------------------------------------------------------------------------
|
5
|
+
# configuration for running rspec. This shows up as the test:default task
|
6
|
+
#--------------------------------------------------------------------------------
|
7
|
+
if spec_config = Configuration.for_if_exist?("test") then
|
8
|
+
if spec_config.mode == "spec" then
|
9
|
+
namespace :test do
|
9
10
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
r.
|
15
|
-
|
11
|
+
task :default => :spec
|
12
|
+
|
13
|
+
require 'spec/rake/spectask'
|
14
|
+
Spec::Rake::SpecTask.new do |r|
|
15
|
+
r.ruby_opts = spec_config.ruby_opts
|
16
|
+
r.libs = [ <%= project_name.camelize %>.lib_path,
|
17
|
+
<%= project_name.camelize %>.root_dir ]
|
18
|
+
r.spec_files = spec_config.files
|
19
|
+
r.spec_opts = spec_config.options
|
16
20
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
end
|
21
|
+
if rcov_config = Configuration.for_if_exist?('rcov') then
|
22
|
+
r.rcov = true
|
23
|
+
r.rcov_dir = rcov_config.output_dir
|
24
|
+
r.rcov_opts = rcov_config.rcov_opts
|
25
|
+
end
|
26
|
+
end
|
22
27
|
end
|
23
|
-
|
28
|
+
end
|
24
29
|
end
|
@@ -1,14 +1,19 @@
|
|
1
|
-
require '
|
2
|
-
|
3
|
-
#
|
4
|
-
|
5
|
-
namespace :test do
|
1
|
+
require 'tasks/config'
|
2
|
+
#-------------------------------------------------------------------------------
|
3
|
+
# configuration for running unit tests. This shows up as the test:default task
|
4
|
+
#-------------------------------------------------------------------------------
|
6
5
|
|
7
|
-
|
6
|
+
if test_config = Configuration.for_if_exist?('test') then
|
7
|
+
if test_config.mode == "testunit" then
|
8
|
+
namespace :test do
|
8
9
|
|
9
|
-
|
10
|
-
|
10
|
+
task :default => :test
|
11
|
+
|
12
|
+
require 'rake/testtask'
|
13
|
+
Rake::TestTask.new do |t|
|
14
|
+
t.libs = <%= project_name.camelize %>.lib_path
|
11
15
|
t.test_files= FileList["test/**/*.rb"]
|
16
|
+
end
|
12
17
|
end
|
13
|
-
|
18
|
+
end
|
14
19
|
end
|
@@ -1,10 +1,10 @@
|
|
1
|
-
require File.join(File.dirname(__FILE__),"test_helper.rb")
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__),"test_helper.rb"))
|
2
2
|
|
3
3
|
class Test<%= project_name.camelize %> < Test::Unit::TestCase
|
4
|
-
|
5
|
-
|
4
|
+
def setup
|
5
|
+
end
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
def test_has_tests
|
8
|
+
flunk("Oh Please test me!")
|
9
|
+
end
|
10
10
|
end
|
@@ -6,12 +6,12 @@ namespace :site do
|
|
6
6
|
|
7
7
|
desc "Remove all the files from the local deployment of the site"
|
8
8
|
task :clobber do
|
9
|
-
rm_rf <%= project_name.camelize %>::
|
9
|
+
rm_rf <%= project_name.camelize %>::GEM_SPEC.local_site_dir
|
10
10
|
end
|
11
11
|
|
12
|
-
desc "Update the website on #{<%= project_name.camelize %>::
|
12
|
+
desc "Update the website on #{<%= project_name.camelize %>::GEM_SPEC.remote_site_location}"
|
13
13
|
task :deploy => :build do
|
14
|
-
sh "rsync -zav --delete #{<%= project_name.camelize %>::
|
14
|
+
sh "rsync -zav --delete #{<%= project_name.camelize %>::GEM_SPEC.local_site_dir}/ #{<%= project_name.camelize %>::GEM_SPEC.remote_site_location}"
|
15
15
|
end
|
16
16
|
|
17
17
|
if HAVE_WEBBY then
|
@@ -32,8 +32,8 @@ namespace :site do
|
|
32
32
|
if HAVE_HEEL then
|
33
33
|
desc "View the website locally"
|
34
34
|
task :view => :build do
|
35
|
-
sh "heel --root #{<%= project_name.camelize %>::
|
35
|
+
sh "heel --root #{<%= project_name.camelize %>::GEM_SPEC.local_site_dir}"
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
39
|
-
end
|
39
|
+
end
|
data/spec/application_spec.rb
CHANGED
@@ -6,9 +6,9 @@ describe Rabal::Application do
|
|
6
6
|
before(:each) do
|
7
7
|
@working_dir = my_temp_dir
|
8
8
|
@before = Dir.pwd
|
9
|
-
@base_tree = Set.new(%w[README Rakefile
|
10
|
-
lib lib/spec-proj lib/spec_proj.rb lib/spec-proj/version.rb
|
11
|
-
tasks tasks/announce.rake tasks/distribution.rake tasks/documentation.rake tasks/
|
9
|
+
@base_tree = Set.new(%w[README Rakefile HISTORY LICENSE
|
10
|
+
lib lib/spec-proj lib/spec_proj.rb lib/spec-proj/version.rb gemspec.rb
|
11
|
+
tasks tasks/announce.rake tasks/distribution.rake tasks/documentation.rake tasks/config.rb tasks/utils.rb ])
|
12
12
|
@stdin = StringIO.new
|
13
13
|
@stdout = StringIO.new
|
14
14
|
@stderr = StringIO.new
|
data/spec/bin_plugin_spec.rb
CHANGED
@@ -5,7 +5,7 @@ describe Rabal::Plugin::Bin do
|
|
5
5
|
@working_dir = my_temp_dir
|
6
6
|
@before = Dir.pwd
|
7
7
|
@core = Rabal::Plugin::Core.new({:project => "new-spec-proj", :author => "Foo Bar", :email => "foobar@example.com"})
|
8
|
-
@base_tree = Set.new(%w(README Rakefile
|
8
|
+
@base_tree = Set.new(%w(README Rakefile HISTORY lib lib/new-spec-proj lib/new_spec_proj.rb lib/new-spec-proj/version.rb bin bin/new_spec_proj gemspec.rb tasks tasks/config.rb tasks/announce.rake tasks/distribution.rake tasks/documentation.rake tasks/utils.rb ))
|
9
9
|
Dir.chdir(@working_dir)
|
10
10
|
end
|
11
11
|
|
data/spec/core_plugin_spec.rb
CHANGED
@@ -4,7 +4,7 @@ describe Rabal::Plugin::Core do
|
|
4
4
|
@working_dir = my_temp_dir
|
5
5
|
@before = Dir.pwd
|
6
6
|
@core = Rabal::Plugin::Core.new({:project => "new-spec-proj", :author => "Foo Bar", :email => "foobar@example.com"})
|
7
|
-
@base_tree = Set.new(%w(README Rakefile
|
7
|
+
@base_tree = Set.new(%w(README Rakefile HISTORY lib lib/new-spec-proj lib/new_spec_proj.rb lib/new-spec-proj/version.rb gemspec.rb tasks tasks/config.rb tasks/announce.rake tasks/utils.rb tasks/distribution.rake tasks/documentation.rake))
|
8
8
|
Dir.chdir(@working_dir)
|
9
9
|
end
|
10
10
|
|
data/spec/license_plugin_spec.rb
CHANGED
@@ -4,7 +4,7 @@ describe Rabal::Plugin::License do
|
|
4
4
|
@working_dir = my_temp_dir
|
5
5
|
@before = Dir.pwd
|
6
6
|
@core = Rabal::Plugin::Core.new({:project => "new-spec-proj", :author => "Foo Bar", :email => "foobar@example.com"})
|
7
|
-
@base_tree = Set.new(%w(README Rakefile
|
7
|
+
@base_tree = Set.new(%w(README Rakefile HISTORY COPYING LICENSE lib lib/new-spec-proj lib/new_spec_proj.rb lib/new-spec-proj/version.rb gemspec.rb tasks tasks/config.rb tasks/announce.rake tasks/distribution.rake tasks/documentation.rake tasks/utils.rb ))
|
8
8
|
Dir.chdir(@working_dir)
|
9
9
|
end
|
10
10
|
|
data/spec/plugin_tree_spec.rb
CHANGED
@@ -8,7 +8,7 @@ describe Rabal::PluginTree do
|
|
8
8
|
@tree = ProjectTree.new('new-spec-proj', {:author => "Some Author", :email => "author@example.com"})
|
9
9
|
@tree << PluginTree.new({:data1 => "some_data" },resource_handle("core"))
|
10
10
|
|
11
|
-
@base_tree = Set.new(%w(README Rakefile
|
11
|
+
@base_tree = Set.new(%w(README Rakefile HISTORY lib lib/new-spec-proj lib/new_spec_proj.rb lib/new-spec-proj/version.rb gemspec.rb tasks tasks/utils.rb tasks/announce.rake tasks/distribution.rake tasks/documentation.rake tasks/config.rb))
|
12
12
|
|
13
13
|
@before = Dir.pwd
|
14
14
|
Dir.chdir(@working_dir)
|
data/spec/spec_helper.rb
CHANGED
@@ -1,9 +1,6 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
$: << File.expand_path(File.join(File.dirname(__FILE__),"..","lib"))
|
5
|
-
require 'rabal'
|
6
|
-
end
|
1
|
+
$: << File.expand_path(File.join(File.dirname(__FILE__),"..","lib"))
|
2
|
+
require 'rabal'
|
3
|
+
|
7
4
|
require 'set'
|
8
5
|
require 'rubygems'
|
9
6
|
require 'tmpdir'
|
data/spec/spec_plugin_spec.rb
CHANGED
@@ -5,7 +5,7 @@ describe Rabal::Plugin::Spec do
|
|
5
5
|
@working_dir = my_temp_dir
|
6
6
|
@before = Dir.pwd
|
7
7
|
@core = Rabal::Plugin::Core.new({:project => "new-spec-proj", :author => "Foo Bar", :email => "foobar@example.com"})
|
8
|
-
@base_tree = Set.new(%w(README Rakefile
|
8
|
+
@base_tree = Set.new(%w(README Rakefile HISTORY lib lib/new-spec-proj lib/new_spec_proj.rb lib/new-spec-proj/version.rb spec spec/new_spec_proj_spec.rb spec/spec_helper.rb gemspec.rb tasks tasks/utils.rb tasks/rspec.rake tasks/announce.rake tasks/distribution.rake tasks/documentation.rake tasks/config.rb))
|
9
9
|
Dir.chdir(@working_dir)
|
10
10
|
end
|
11
11
|
|
data/spec/test_plugin_spec.rb
CHANGED
@@ -5,7 +5,7 @@ describe Rabal::Plugin::Test do
|
|
5
5
|
@working_dir = my_temp_dir
|
6
6
|
@before = Dir.pwd
|
7
7
|
@core = Rabal::Plugin::Core.new({:project => "new-spec-proj", :author => "Foo Bar", :email => "foobar@example.com"})
|
8
|
-
@base_tree = Set.new(%w(README Rakefile
|
8
|
+
@base_tree = Set.new(%w(README Rakefile HISTORY lib lib/new-spec-proj lib/new_spec_proj.rb lib/new-spec-proj/version.rb test test/new_spec_proj_test.rb test/test_helper.rb gemspec.rb tasks tasks/testunit.rake tasks/announce.rake tasks/distribution.rake tasks/documentation.rake tasks/config.rb tasks/utils.rb ))
|
9
9
|
Dir.chdir(@working_dir)
|
10
10
|
end
|
11
11
|
|
data/tasks/announce.rake
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
require 'tasks/config'
|
2
|
+
#-------------------------------------------------------------------------------
|
3
|
+
# announcement methods
|
4
|
+
#-------------------------------------------------------------------------------
|
5
|
+
|
6
|
+
proj_config = Configuration.for('project')
|
7
|
+
namespace :announce do
|
8
|
+
desc "create email for ruby-talk"
|
9
|
+
task :email do
|
10
|
+
info = Utils.announcement
|
11
|
+
|
12
|
+
File.open("email.txt", "w") do |mail|
|
13
|
+
mail.puts "From: #{proj_config.author} <#{proj_config.email}>"
|
14
|
+
mail.puts "To: ruby-talk@ruby-lang.org"
|
15
|
+
mail.puts "Date: #{Time.now.rfc2822}"
|
16
|
+
mail.puts "Subject: [ANN] #{info[:subject]}"
|
17
|
+
mail.puts
|
18
|
+
mail.puts info[:title]
|
19
|
+
mail.puts
|
20
|
+
mail.puts " gem install #{Rabal::GEM_SPEC.name}"
|
21
|
+
mail.puts
|
22
|
+
mail.puts info[:urls]
|
23
|
+
mail.puts
|
24
|
+
mail.puts info[:description]
|
25
|
+
mail.puts
|
26
|
+
mail.puts "{{ Release notes for Version #{Rabal::VERSION} }}"
|
27
|
+
mail.puts
|
28
|
+
mail.puts info[:release_notes]
|
29
|
+
mail.puts
|
30
|
+
mail.puts info[:urls]
|
31
|
+
end
|
32
|
+
puts "Created the following as email.txt:"
|
33
|
+
puts "-" * 72
|
34
|
+
puts File.read("email.txt")
|
35
|
+
puts "-" * 72
|
36
|
+
end
|
37
|
+
|
38
|
+
CLOBBER << "email.txt"
|
39
|
+
end
|
40
|
+
|
data/tasks/config.rb
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
require 'configuration'
|
2
|
+
|
3
|
+
require 'rake'
|
4
|
+
require 'tasks/utils'
|
5
|
+
|
6
|
+
#-----------------------------------------------------------------------
|
7
|
+
# General project configuration
|
8
|
+
#-----------------------------------------------------------------------
|
9
|
+
Configuration.for('project') {
|
10
|
+
name "rabal"
|
11
|
+
version Rabal::Version.to_s
|
12
|
+
author "Jeremy Hinegardner"
|
13
|
+
email "jeremy at copiousfreetime dot org"
|
14
|
+
homepage "http://copiousfreetime.rubyforge.org/rabal/"
|
15
|
+
description Utils.section_of("README", "description")
|
16
|
+
summary description.split(".").first
|
17
|
+
history "HISTORY"
|
18
|
+
license FileList["LICENSE", "COPYING"]
|
19
|
+
readme FileList["README", "README.PLUGIN"]
|
20
|
+
}
|
21
|
+
|
22
|
+
#-----------------------------------------------------------------------
|
23
|
+
# Packaging
|
24
|
+
#-----------------------------------------------------------------------
|
25
|
+
Configuration.for('packaging') {
|
26
|
+
# files in the project
|
27
|
+
proj_conf = Configuration.for('project')
|
28
|
+
files {
|
29
|
+
bin FileList["bin/*"]
|
30
|
+
lib FileList["lib/**/*.rb"]
|
31
|
+
test FileList["spec/**/*.rb", "test/**/*.rb"]
|
32
|
+
data FileList["data/**/*", "resources/**/*"]
|
33
|
+
tasks FileList["tasks/**/*.r{ake,b}"]
|
34
|
+
rdoc FileList[proj_conf.readme, proj_conf.history,
|
35
|
+
proj_conf.license] + lib
|
36
|
+
all bin + lib + test + data + rdoc + tasks
|
37
|
+
}
|
38
|
+
|
39
|
+
# ways to package the results
|
40
|
+
formats {
|
41
|
+
tgz true
|
42
|
+
zip true
|
43
|
+
gem Configuration::Table.has_key?('gem')
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
#-----------------------------------------------------------------------
|
48
|
+
# Gem packaging
|
49
|
+
#-----------------------------------------------------------------------
|
50
|
+
Configuration.for("gem") {
|
51
|
+
spec "gemspec.rb"
|
52
|
+
Configuration.for('packaging').files.all << spec
|
53
|
+
}
|
54
|
+
|
55
|
+
#-----------------------------------------------------------------------
|
56
|
+
# Testing
|
57
|
+
# - change mode to 'testunit' to use unit testing
|
58
|
+
#-----------------------------------------------------------------------
|
59
|
+
Configuration.for('test') {
|
60
|
+
mode "spec"
|
61
|
+
files Configuration.for("packaging").files.test
|
62
|
+
options %w[ --format specdoc --color ]
|
63
|
+
ruby_opts %w[ ]
|
64
|
+
}
|
65
|
+
|
66
|
+
#-----------------------------------------------------------------------
|
67
|
+
# Rcov
|
68
|
+
#-----------------------------------------------------------------------
|
69
|
+
Configuration.for('rcov') {
|
70
|
+
output_dir "coverage"
|
71
|
+
libs %w[ lib ]
|
72
|
+
rcov_opts %w[ --html ]
|
73
|
+
ruby_opts %w[ ]
|
74
|
+
test_files Configuration.for('packaging').files.test
|
75
|
+
}
|
76
|
+
|
77
|
+
#-----------------------------------------------------------------------
|
78
|
+
# Rdoc
|
79
|
+
#-----------------------------------------------------------------------
|
80
|
+
Configuration.for('rdoc') {
|
81
|
+
files Configuration.for('packaging').files.rdoc
|
82
|
+
#puts "Files! : #{files.join("\n")}"
|
83
|
+
main_page files.first
|
84
|
+
title Configuration.for('project').name
|
85
|
+
options %w[ --line-numbers --inline-source ]
|
86
|
+
output_dir "doc"
|
87
|
+
}
|
88
|
+
|
89
|
+
#-----------------------------------------------------------------------
|
90
|
+
# Rubyforge
|
91
|
+
#-----------------------------------------------------------------------
|
92
|
+
Configuration.for('rubyforge') {
|
93
|
+
project "copiousfreetime"
|
94
|
+
user "jjh"
|
95
|
+
host "rubyforge.org"
|
96
|
+
rdoc_location "#{user}@#{host}:/var/www/gforge-projects/#{project}/rabal/"
|
97
|
+
}
|
98
|
+
|
99
|
+
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'tasks/config'
|
2
|
+
|
3
|
+
#-------------------------------------------------------------------------------
|
4
|
+
# Distribution and Packaging
|
5
|
+
#-------------------------------------------------------------------------------
|
6
|
+
if pkg_config = Configuration.for_if_exist?("packaging") then
|
7
|
+
|
8
|
+
require 'gemspec'
|
9
|
+
require 'rake/gempackagetask'
|
10
|
+
require 'rake/contrib/sshpublisher'
|
11
|
+
|
12
|
+
namespace :dist do
|
13
|
+
|
14
|
+
Rake::GemPackageTask.new(Rabal::GEM_SPEC) do |pkg|
|
15
|
+
pkg.need_tar = pkg_config.formats.tgz
|
16
|
+
pkg.need_zip = pkg_config.formats.zip
|
17
|
+
end
|
18
|
+
|
19
|
+
desc "Install as a gem"
|
20
|
+
task :install => [:clobber, :package] do
|
21
|
+
sh "sudo gem install -y pkg/#{Rabal::GEM_SPEC.full_name}.gem"
|
22
|
+
end
|
23
|
+
|
24
|
+
desc "Uninstall gem"
|
25
|
+
task :uninstall do
|
26
|
+
sh "sudo gem uninstall -i #{Rabal::GEM_SPEC.name} -x"
|
27
|
+
end
|
28
|
+
|
29
|
+
desc "dump gemspec"
|
30
|
+
task :gemspec do
|
31
|
+
puts Rabal::GEM_SPEC.to_ruby
|
32
|
+
end
|
33
|
+
|
34
|
+
desc "reinstall gem"
|
35
|
+
task :reinstall => [:uninstall, :repackage, :install]
|
36
|
+
|
37
|
+
desc "distribute copiously"
|
38
|
+
task :copious => [:package] do
|
39
|
+
Rake::SshFilePublisher.new('jeremy@copiousfreetime.org',
|
40
|
+
'/var/www/vhosts/www.copiousfreetime.org/htdocs/gems/gems',
|
41
|
+
'pkg',"#{Rabal::GEM_SPEC.full_name}.gem").upload
|
42
|
+
sh "ssh jeremy@copiousfreetime.org rake -f /var/www/vhosts/www.copiousfreetime.org/htdocs/gems/Rakefile"
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'tasks/config'
|
2
|
+
|
3
|
+
#-----------------------------------------------------------------------
|
4
|
+
# Documentation
|
5
|
+
#-----------------------------------------------------------------------
|
6
|
+
|
7
|
+
if rdoc_config = Configuration.for_if_exist?('rdoc') then
|
8
|
+
|
9
|
+
namespace :doc do
|
10
|
+
|
11
|
+
require 'rake/rdoctask'
|
12
|
+
|
13
|
+
# generating documentation locally
|
14
|
+
Rake::RDocTask.new do |rdoc|
|
15
|
+
rdoc.rdoc_dir = rdoc_config.output_dir
|
16
|
+
rdoc.options = rdoc_config.options
|
17
|
+
rdoc.rdoc_files = rdoc_config.files
|
18
|
+
rdoc.title = rdoc_config.title
|
19
|
+
rdoc.main = rdoc_config.main_page
|
20
|
+
end
|
21
|
+
|
22
|
+
if rubyforge_config = Configuration.for_if_exist?('rubyforge') then
|
23
|
+
desc "Deploy the RDoc documentation to #{rubyforge_config.rdoc_location}"
|
24
|
+
task :deploy => :rerdoc do
|
25
|
+
sh "rsync -zav --delete #{rdoc_config.output_dir}/ #{rubyforge_config.rdoc_location}"
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
data/tasks/rspec.rake
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
|
2
|
+
require 'tasks/config'
|
3
|
+
|
4
|
+
#--------------------------------------------------------------------------------
|
5
|
+
# configuration for running rspec. This shows up as the test:default task
|
6
|
+
#--------------------------------------------------------------------------------
|
7
|
+
if spec_config = Configuration.for_if_exist?("test") then
|
8
|
+
if spec_config.mode == "spec" then
|
9
|
+
namespace :test do
|
10
|
+
|
11
|
+
task :default => :spec
|
12
|
+
|
13
|
+
require 'spec/rake/spectask'
|
14
|
+
Spec::Rake::SpecTask.new do |r|
|
15
|
+
r.ruby_opts = spec_config.ruby_opts
|
16
|
+
r.libs = [ Rabal.lib_path,
|
17
|
+
Rabal.root_dir ]
|
18
|
+
r.spec_files = spec_config.files
|
19
|
+
r.spec_opts = spec_config.options
|
20
|
+
|
21
|
+
if rcov_config = Configuration.for_if_exist?('rcov') then
|
22
|
+
r.rcov = true
|
23
|
+
r.rcov_dir = rcov_config.output_dir
|
24
|
+
r.rcov_opts = rcov_config.rcov_opts
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|