]> git.openstreetmap.org Git - rails.git/blobdiff - config/application.rb
Only take the STATUS configuration from the environment
[rails.git] / config / application.rb
index f05c6fa62175af86494356406381c6394a6f422b..2a0547a728f717e325012be7e87b64d69f88e7cf 100644 (file)
@@ -1,6 +1,21 @@
 require_relative "boot"
 
-require_relative "preinitializer"
+# Set the STATUS constant from the environment, if it matches a recognized value
+ALLOWED_STATUS = [
+  :online,            # online and operating normally
+  :api_readonly,      # site online but API in read-only mode
+  :api_offline,       # site online but API offline
+  :database_readonly, # database and site in read-only mode
+  :database_offline,  # database offline with site in emergency mode
+  :gpx_offline        # gpx storage offline
+].freeze
+
+status = if ENV["STATUS"] && ALLOWED_STATUS.include?(ENV["STATUS"].to_sym)
+           ENV["STATUS"].to_sym
+         else
+           :online
+         end
+Object.const_set("STATUS", status)
 
 if STATUS == :database_offline
   require "action_controller/railtie"