Skip to content

Commit bb6edf7

Browse files
author
Mat Brown
committed
Move Sunspot gem tasks into top-level directory
1 parent 343c19d commit bb6edf7

8 files changed

Lines changed: 31 additions & 9 deletions

File tree

README.rdoc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,11 @@ You can change the URL at which Sunspot accesses Solr with:
6666

6767
== Rails Integration
6868

69-
The {Sunspot::Rails}[http://github.com/outoftime/sunspot_rails] plugin makes
70-
integrating Sunspot into Rails drop-in easy.
69+
The Sunspot::Rails plugin makes integrating Sunspot into Rails drop-in easy.
70+
71+
gem install sunspot_rails
72+
73+
See the README for that gem or the Sunspot Wiki for more information.
7174

7275
== Using Sunspot
7376

sunspot/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ pkg
77

88
.yardoc
99
sunspot.gemspec
10+
README.rdoc

sunspot/Rakefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ task :environment do
44
require File.dirname(__FILE__) + '/lib/sunspot'
55
end
66

7+
require File.join(File.dirname(__FILE__), 'lib', 'sunspot', 'version')
8+
79
Dir['tasks/**/*.rake'].each { |t| load t }
810

911
task :default => 'spec:api'

sunspot/lib/sunspot/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module Sunspot
2-
VERSION = '1.0.0pre1'
2+
VERSION = '1.0.0'
33
end

sunspot/pkg/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
*

sunspot/tasks/gemspec.rake

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
require File.join(File.dirname(__FILE__), '..', 'lib', 'sunspot', 'gem_tasks')
1+
require File.join(File.dirname(__FILE__), '..', '..', 'tools', 'gem_tasks')
22

3-
Sunspot::GemTasks.new do |s|
3+
Sunspot::GemTasks.new(:build => :copy_rdoc) do |s|
44
s.name = 'sunspot'
55
s.version = Sunspot::VERSION
66
s.executables = ['sunspot-solr', 'sunspot-configure-solr']
@@ -22,3 +22,11 @@ TEXT
2222
'--main' << 'README.rdoc'
2323

2424
end
25+
26+
task :copy_rdoc do
27+
sunspot_root = File.join(File.dirname(__FILE__), '..')
28+
FileUtils.cp(
29+
File.join(sunspot_root, '..', 'README.rdoc'),
30+
sunspot_root
31+
)
32+
end

sunspot/tasks/rdoc.rake

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ rescue LoadError
1010
# It's OK if hanna isn't installed.
1111
end
1212

13-
require File.join(File.dirname(__FILE__), '..', 'sunspot', 'version')
14-
1513
Rake::RDocTask.new(:doc) do |rdoc|
1614
version = Sunspot::VERSION
1715
rdoc.title = "Sunspot #{version} - Solr-powered search for Ruby objects - API Documentation"
Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
require 'rubygems/specification'
2-
require File.join(File.dirname(__FILE__), 'version')
32

43
module Sunspot
54
class GemTasks
65
PROJECT_ROOT = File.dirname(Rake.application.rakefile_location)
76

8-
def initialize(&block)
7+
def initialize(dependencies = {}, &block)
8+
@dependencies = dependencies
99
@gemspec_block = block
1010

1111
task(:gemspec, "Write gemspec")
@@ -15,6 +15,7 @@ def initialize(&block)
1515
end
1616

1717
def build
18+
run_dependencies(:build)
1819
filename = Gem::Builder.new(spec).build
1920
FileUtils.mv(filename, File.join(PROJECT_ROOT, 'pkg'))
2021
File.join('pkg', filename)
@@ -56,5 +57,13 @@ def task(name, description)
5657
Rake.application.last_description = description
5758
Rake::Task.define_task(name) { send(name) }
5859
end
60+
61+
def run_dependencies(task)
62+
if @dependencies[task]
63+
Array(@dependencies[task]).each do |dependency|
64+
Rake::Task[dependency].invoke
65+
end
66+
end
67+
end
5968
end
6069
end

0 commit comments

Comments
 (0)