Module: FailFast::CheckActiveRecordDB
- Defined in:
- lib/fail_fast/extensions/check_active_record_db.rb
Instance Method Summary collapse
-
#has_active_record_db(*params) ⇒ Object
Ensure the ActiveRecord connection can be established :.
-
#has_active_record_db_for(key, *params) ⇒ Object
Ensure the ActiveRecord connection can be established :.
Instance Method Details
#has_active_record_db(*params) ⇒ Object
Ensure the ActiveRecord connection can be established :
Usage :
has_active_record_db :host => 'localhost', :adapter => 'sqlite3', :database=> 'prod_db'
has_active_record_db :host => 'localhost', :adapter => 'sqlite3', :database=> 'prod_db', :message => 'custom message'
12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/fail_fast/extensions/check_active_record_db.rb', line 12 def has_active_record_db(*params) = params.last.is_a?(Hash) ? params.pop : {} begin ActiveRecord::Base.establish_connection() @connection = ActiveRecord::Base.connection @success = @connection && @connection.active? rescue => e @success = false @error_message = e. end unless @success add_error ErrorDetails.new(nil, :active_record_db_connection_error, @error_message, [:message]) end end |
#has_active_record_db_for(key, *params) ⇒ Object
Ensure the ActiveRecord connection can be established :
Usage :
has_active_record_db_for 'production/database'
has_active_record_db_for 'production/database', :message => 'custom message'
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/fail_fast/extensions/check_active_record_db.rb', line 33 def has_active_record_db_for(key, *params) p = (key, params) key, = p.key, p. return unless has_value_for key , :message => [:message] return unless has_value_for "#{key}/adapter" , :message => [:message] return unless has_value_for "#{key}/database", :message => [:message] begin = p.value ActiveRecord::Base.establish_connection() @connection = ActiveRecord::Base.connection @success = @connection && @connection.active? rescue => e @success = false @error_message = e. end unless @success add_error ErrorDetails.new(key, :active_record_db_connection_error, @error_message, [:message]) end end |