wd_sinatra_active_record 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -18,6 +18,13 @@ Or install it yourself as:
18
18
 
19
19
  $ gem install wd_sinatra_active_record
20
20
 
21
+
22
+ Don't forget to set a gem dependency for the DB adapter you need.
23
+ For instance:
24
+
25
+ activerecord-mysql2-adapter
26
+
27
+
21
28
  ## Usage
22
29
 
23
30
  Add an ActiveRecord `database.yml` file in your config folder and then require this
@@ -7,6 +7,13 @@ ActiveRecord::Base.default_timezone = :utc
7
7
 
8
8
  module WdSinatraActiveRecord
9
9
 
10
+ # Path to the rake task file so it can be loaded as such:
11
+ # load WdSinatraActiveRecord.task_path
12
+ #
13
+ def self.task_path
14
+ File.join(File.expand_path(File.dirname(__FILE__), ".."), "wd_sinatra_active_record", "db.rake")
15
+ end
16
+
10
17
  ##### DB Connection ########
11
18
  module DBConnector
12
19
  DB_CONFIG = YAML.load_file(File.join(WDSinatra::AppLoader.root_path, "config", "database.yml"))
@@ -1,10 +1,11 @@
1
1
  # require 'active_support/core_ext/object/inclusion'
2
+ require 'wd_sinatra_active_record'
2
3
 
3
4
  db_namespace = namespace :db do
4
5
 
5
6
  task :load_config => :setup_app do
6
7
  require 'active_record'
7
- ActiveRecord::Base.configurations = DBConnector.db_configuration
8
+ ActiveRecord::Base.configurations = WdSinatraActiveRecord::DBConnector.db_configuration
8
9
  ActiveRecord::Migrator.migrations_paths = [File.join(WDSinatra::AppLoader.root_path, 'db/migrate')]
9
10
  end
10
11
 
@@ -13,7 +14,7 @@ db_namespace = namespace :db do
13
14
  old_connect_env = ENV['DONT_CONNECT'] ? 'true' : nil
14
15
  ENV['DONT_CONNECT'] = 'true'
15
16
  Rake::Task["db:load_config"].invoke
16
- create_database(DBConnector.db_configuration)
17
+ create_database(WdSinatraActiveRecord::DBConnector.db_configuration)
17
18
  ENV['DONT_CONNECT'] = old_connect_env
18
19
  end
19
20
 
@@ -96,7 +97,7 @@ db_namespace = namespace :db do
96
97
  desc 'Drops the database for the current RACK_ENV (use db:drop:all to drop all databases)'
97
98
  task :drop do
98
99
  Rake::Task["db:load_config"].invoke
99
- config = DBConnector.db_configuration
100
+ config = WdSinatraActiveRecord::DBConnector.db_configuration
100
101
  begin
101
102
  drop_database(config)
102
103
  rescue Exception => e
@@ -160,7 +161,7 @@ db_namespace = namespace :db do
160
161
 
161
162
  desc 'Display status of migrations'
162
163
  task :status => [:environment, :load_config] do
163
- config = DBConnector.db_configuration
164
+ config = WdSinatraActiveRecord::DBConnector.db_configuration
164
165
  ActiveRecord::Base.establish_connection(config)
165
166
  unless ActiveRecord::Base.connection.table_exists?(ActiveRecord::Migrator.schema_migrations_table_name)
166
167
  puts 'Schema migrations table does not exist yet.'
@@ -208,7 +209,7 @@ db_namespace = namespace :db do
208
209
 
209
210
  # desc "Retrieves the charset for the current environment's database"
210
211
  task :charset => :setup_app do
211
- config = DBConnector.db_configuration
212
+ config = WdSinatraActiveRecord::DBConnector.db_configuration
212
213
  case config['adapter']
213
214
  when /mysql/
214
215
  ActiveRecord::Base.establish_connection(config)
@@ -226,7 +227,7 @@ db_namespace = namespace :db do
226
227
 
227
228
  # desc "Retrieves the collation for the current environment's database"
228
229
  task :collation => :setup_app do
229
- config = DBConnector.db_configuration
230
+ config = WdSinatraActiveRecord::DBConnector.db_configuration
230
231
  case config['adapter']
231
232
  when /mysql/
232
233
  ActiveRecord::Base.establish_connection(config)
@@ -319,16 +320,14 @@ db_namespace = namespace :db do
319
320
  require 'active_record/schema_dumper'
320
321
  filename = ENV['SCHEMA'] || "#{WDSinatra::AppLoader.root_path}/db/schema.rb"
321
322
  File.open(filename, "w:utf-8") do |file|
322
- ActiveRecord::Base.establish_connection(DBConnector.db_configuration)
323
+ ActiveRecord::Base.establish_connection(WdSinatraActiveRecord::DBConnector.db_configuration)
323
324
  ActiveRecord::SchemaDumper.dump(ActiveRecord::Base.connection, file)
324
325
  end
325
326
  db_namespace['schema:dump'].reenable
326
327
  end
327
328
 
328
329
  desc 'Load a schema.rb file into the database'
329
- task :load do
330
- root = File.expand_path('../..', File.dirname(__FILE__))
331
- WDSinatra::AppLoader.console(root)
330
+ task :load => :environment do
332
331
  file = ENV['SCHEMA'] || "#{WDSinatra::AppLoader.root_path}/db/schema.rb"
333
332
  if File.exists?(file)
334
333
  load(file)
@@ -341,7 +340,7 @@ db_namespace = namespace :db do
341
340
  namespace :structure do
342
341
  desc 'Dump the database structure to an SQL file'
343
342
  task :dump => :setup_app do
344
- abcs = DBConnector.db_configuration
343
+ abcs = WdSinatraActiveRecord::DBConnector.db_configuration
345
344
  case abcs[RACK_ENV]['adapter']
346
345
  when /mysql/, 'oci', 'oracle'
347
346
  ActiveRecord::Base.establish_connection(config)
@@ -378,7 +377,7 @@ db_namespace = namespace :db do
378
377
  namespace :test do
379
378
  # desc "Recreate the test database from the current schema.rb"
380
379
  task :load => 'db:test:purge' do
381
- ActiveRecord::Base.establish_connection(DBConnector.db_configuration('test'))
380
+ ActiveRecord::Base.establish_connection(WdSinatraActiveRecord::DBConnector.db_configuration('test'))
382
381
  ActiveRecord::Schema.verbose = false
383
382
  db_namespace['schema:load'].invoke
384
383
  end
@@ -422,7 +421,7 @@ db_namespace = namespace :db do
422
421
 
423
422
  # desc "Empty the test database"
424
423
  task :purge => :setup_app do
425
- abcs = DBConnector.db_configuration('test')
424
+ abcs = WdSinatraActiveRecord::DBConnector.db_configuration('test')
426
425
  case abcs['adapter']
427
426
  when /mysql/
428
427
  ActiveRecord::Base.establish_connection(abcs)
@@ -1,3 +1,3 @@
1
1
  module WdSinatraActiveRecord
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wd_sinatra_active_record
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: