Class: Rails::Server
- Inherits:
-
Rack::Server
- Object
- Rack::Server
- Rails::Server
- Defined in:
- lib/rails/commands/server.rb
Defined Under Namespace
Classes: Options
Instance Method Summary collapse
- #default_options ⇒ Object
-
#initialize ⇒ Server
constructor
A new instance of Server.
- #log_path ⇒ Object
- #middleware ⇒ Object
- #opt_parser ⇒ Object
- #set_environment ⇒ Object
- #start ⇒ Object
Constructor Details
#initialize ⇒ Server
Returns a new instance of Server.
40 41 42 43 |
# File 'lib/rails/commands/server.rb', line 40 def initialize(*) super set_environment end |
Instance Method Details
#default_options ⇒ Object
83 84 85 86 87 88 89 90 91 92 |
# File 'lib/rails/commands/server.rb', line 83 def super.merge({ :Port => 3000, :environment => (ENV['RAILS_ENV'] || "development").dup, :daemonize => false, :debugger => false, :pid => File.("tmp/pids/server.pid"), :config => File.("config.ru") }) end |
#log_path ⇒ Object
79 80 81 |
# File 'lib/rails/commands/server.rb', line 79 def log_path "log/#{[:environment]}.log" end |
#middleware ⇒ Object
72 73 74 75 76 77 |
# File 'lib/rails/commands/server.rb', line 72 def middleware middlewares = [] middlewares << [Rails::Rack::LogTailer, log_path] unless [:daemonize] middlewares << [Rails::Rack::Debugger] if [:debugger] Hash.new(middlewares) end |
#opt_parser ⇒ Object
45 46 47 |
# File 'lib/rails/commands/server.rb', line 45 def opt_parser Options.new end |
#set_environment ⇒ Object
49 50 51 |
# File 'lib/rails/commands/server.rb', line 49 def set_environment ENV["RAILS_ENV"] ||= [:environment] end |
#start ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/rails/commands/server.rb', line 53 def start puts "=> Booting #{ActiveSupport::Inflector.demodulize(server)}" puts "=> Rails #{Rails.version} application starting in #{Rails.env} on http://#{[:Host]}:#{[:Port]}" puts "=> Call with -d to detach" unless [:daemonize] trap(:INT) { exit } puts "=> Ctrl-C to shutdown server" unless [:daemonize] #Create required tmp directories if not found %w(cache pids sessions sockets).each do |dir_to_make| FileUtils.mkdir_p(Rails.root.join('tmp', dir_to_make)) end super ensure # The '-h' option calls exit before @options is set. # If we call 'options' with it unset, we get double help banners. puts 'Exiting' unless @options && [:daemonize] end |