Module: PgSqlTriggers::RakeDevelopmentBoot
- Defined in:
- lib/pg_sql_triggers/rake_development_boot.rb
Class Method Summary collapse
Class Method Details
.boot! ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/pg_sql_triggers/rake_development_boot.rb', line 24 def boot! return if @booted ENV["RAILS_ENV"] ||= "development" require_relative "../pg_sql_triggers" unless Rails.application PgSqlTriggersRakeDevApp::Application.config.paths["app/views"] << PgSqlTriggers::Engine.root.join("app/views").to_s PgSqlTriggersRakeDevApp::Application.initialize! end establish_connection_from_env! load_engine_models @booted = true end |
.establish_connection_from_env! ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/pg_sql_triggers/rake_development_boot.rb', line 42 def establish_connection_from_env! return if ::ActiveRecord::Base.connected? test_db_config = ENV["DATABASE_URL"] || { adapter: "postgresql", database: ENV["TEST_DATABASE"] || "pg_sql_triggers_test", username: ENV["TEST_DB_USER"] || "postgres", password: ENV["TEST_DB_PASSWORD"] || "", host: ENV["TEST_DB_HOST"] || "localhost" } ::ActiveRecord::Base.establish_connection(test_db_config) ::ActiveRecord::Base.connection rescue StandardError => e warn "PgSqlTriggers: could not connect to PostgreSQL for Rake tasks: #{e.}" raise end |
.load_engine_models ⇒ Object
60 61 62 63 |
# File 'lib/pg_sql_triggers/rake_development_boot.rb', line 60 def load_engine_models engine_root = PgSqlTriggers::Engine.root Dir[engine_root.join("app/models/**/*.rb")].each { |f| require f } end |