aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--railties/CHANGELOG2
-rw-r--r--railties/Rakefile4
-rw-r--r--railties/bin/switchtower15
3 files changed, 17 insertions, 4 deletions
diff --git a/railties/CHANGELOG b/railties/CHANGELOG
index 5b025f498f..911ad7dc78 100644
--- a/railties/CHANGELOG
+++ b/railties/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Make the rake tasks (like fresh_rails_without_docs_using_links) aware of switchtower
+
* Added -w flag to ps in process/reaper #1934 [Scott Barron]
* Add integration with SwitchTower (rake tasks, default deploy.rb recipe)
diff --git a/railties/Rakefile b/railties/Rakefile
index 4aa932faa2..b681f30d5b 100644
--- a/railties/Rakefile
+++ b/railties/Rakefile
@@ -33,9 +33,9 @@ TEST_DIRS = %w( fixtures unit functional mocks mocks/development mocks/test )
LOG_FILES = %w( server.log development.log test.log production.log )
HTML_FILES = %w( 404.html 500.html index.html robots.txt favicon.ico javascripts/prototype.js javascripts/effects.js javascripts/dragdrop.js javascripts/controls.js )
-BIN_FILES = %w( generate destroy breakpointer console server update runner profiler benchmarker process/reaper process/spinner process/spawner )
+BIN_FILES = %w( generate destroy breakpointer console server update runner profiler benchmarker process/reaper process/spinner process/spawner switchtower )
-VENDOR_LIBS = %w( actionpack activerecord actionmailer activesupport actionwebservice railties )
+VENDOR_LIBS = %w( actionpack activerecord actionmailer activesupport actionwebservice railties switchtower )
desc "Generates a fresh Rails package with documentation"
diff --git a/railties/bin/switchtower b/railties/bin/switchtower
index 741be775cc..82952a3f20 100644
--- a/railties/bin/switchtower
+++ b/railties/bin/switchtower
@@ -1,4 +1,15 @@
#!/usr/local/bin/ruby
-if not system "switchtower #{ARGV.join(" ")}"
- abort "Could not execute switchtower. Is it installed?"
+
+VENDOR = File.dirname(__FILE__) + "/../vendor"
+
+$:.unshift "#{VENDOR}/switchtower/lib"
+
+if File.directory?("#{VENDOR}/rails/switchtower")
+ $:.unshift "#{VENDOR}/rails/switchtower/lib"
+ load "#{VENDOR}/rails/switchtower/bin/switchtower"
+elsif File.directory?("#{VENDOR}/switchtower")
+ $:.unshift "#{VENDOR}/switchtower/lib"
+ load "#{VENDOR}/switchtower/bin/switchtower"
+elsif not system "switchtower #{ARGV.join(" ")}"
+ raise "could not locate switchtower to execute it"
end