Class: Parse::Hyperdrive
- Inherits:
- Object
- Object
- Parse::Hyperdrive
- Defined in:
- lib/parse/stack.rb
Overview
Special class to support Modernistik Hyperdrive server.
Class Method Summary collapse
- .config!(url = nil) ⇒ Boolean
Applies a remote JSON hash containing the ENV keys and values from a remote URL.
Class Method Details
.config!(url = nil) ⇒ Boolean
Applies a remote JSON hash containing the ENV keys and values from a remote URL. Values from the JSON hash are only applied to the current ENV hash ONLY if it does not already have a value. Therefore local ENV values will take precedence over remote ones. By default, it uses the url in environment value in 'CONFIG_URL' or 'HYPERDRIVE_URL'.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | # File 'lib/parse/stack.rb', line 24 def self.config!(url = nil) url ||= ENV["HYPERDRIVE_URL"] || ENV["CONFIG_URL"] if url.present? begin remote_config = JSON.load open(url) remote_config.each do |key, value| k = key.upcase next unless ENV[k].nil? ENV[k] ||= value.to_s end return true rescue => e warn "[Parse::Stack] Error loading config: #{url} (#{e})" end end false end |