]> git.openstreetmap.org Git - rails.git/blobdiff - config/environment.rb
autocomplete (not compiled for now) and start of tile support
[rails.git] / config / environment.rb
index b96c1a872e79d58236b2b5b9250d2a0b0abaaef0..2bc029767b0e0043017e1a00e3e5577df212477a 100644 (file)
@@ -1,5 +1,8 @@
 # Be sure to restart your web server when you modify this file.
 
+# Limit each rails process to a 512Mb resident set size
+Process.setrlimit Process::RLIMIT_AS, 640*1024*1024, Process::RLIM_INFINITY
+
 # Uncomment below to force Rails into production mode when 
 # you don't control web/app server and can't set it the proper way
 ENV['RAILS_ENV'] ||= 'production'
@@ -11,7 +14,7 @@ RAILS_GEM_VERSION = '1.2.3'
 require File.join(File.dirname(__FILE__), 'boot')
 
 # Application constants needed for routes.rb - must go before Initializer call
-API_VERSION = ENV['OSM_API_VERSION'] || '0.4'
+API_VERSION = ENV['OSM_API_VERSION'] || '0.5'
 
 # Custom logger class to format messages sensibly
 class OSMLogger < Logger
@@ -35,15 +38,23 @@ Rails::Initializer.run do |config|
 
   # Use our custom logger
   config.logger = OSMLogger.new(config.log_path)
+  config.logger.level = Logger.const_get(config.log_level.to_s.upcase)
 
   # Use the database for sessions instead of the file system
   # (create the session table with 'rake db:sessions:create')
-  # config.action_controller.session_store = :active_record_store
+  # config.action_controller.session_store = :sql_session_store
+
+  # Unfortunately SqlSessionStore is a plugin which has not been
+  # loaded yet, so we have to do things the hard way...
+  config.after_initialize do
+    ActionController::Base.session_store = :sql_session_store
+    SqlSessionStore.session_class = MysqlSession
+  end
 
   # Use SQL instead of Active Record's schema dumper when creating the test database.
   # This is necessary if your schema can't be completely dumped by the schema dumper, 
   # like if you have constraints or database-specific column types
-  config.active_record.schema_format = :sql
+  config.active_record.schema_format = :sql
 
   # Activate observers that should always be running
   # config.active_record.observers = :cacher, :garbage_collector
@@ -63,6 +74,28 @@ end
 #   inflect.uncountable %w( fish sheep )
 # end
 
+# Hack the AssetTagHelper to make asset tagging work better
+module ActionView
+  module Helpers
+    module AssetTagHelper
+      private
+        alias :old_compute_public_path :compute_public_path
+
+        def compute_public_path(source, dir, ext)
+          path = old_compute_public_path(source, dir, ext)
+          if path =~ /(.+)\?(\d+)\??$/
+            path = "#{$1}/#{$2}"
+          end
+          path
+        end
+    end
+  end
+end
+
+# Set to :readonly to put the API in read-only mode or :offline to
+# take it completely offline
+API_STATUS = :online
+
 # Include your application configuration below
 SERVER_URL = ENV['OSM_SERVER_URL'] || 'www.openstreetmap.org'
 
@@ -72,18 +105,6 @@ ActionMailer::Base.smtp_settings = {
   :domain  => 'localhost',
 } 
 
-
-# HTTP CODES
-
-# 200's
-
-HTTP_OK = 200
-
-# 400's
-
-HTTP_PRECONDITION_FAILED = 412
-HTTP_EXPECTATION_FAILED = 417
-
 #Taming FCGI
 #
 COUNT = 0