sinatra-activerecord 1.4.0 → 1.5.0
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.
- checksums.yaml +4 -4
- data/lib/sinatra/activerecord/rake.rb +11 -1
- data/lib/sinatra/activerecord/tasks.rake +22 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55dde46fae3e419004fc3d736d20cc9f3a264dfb
|
4
|
+
data.tar.gz: cedff4d701cc24e94c1709cf9260a63b4173a72d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d13de960d2b4110c257c2997227930e009f302523f0a69743d12b9fbb5ae53247b0cbdc8165f945263e1abdcbee474e4248d21f772b516061247521bc5152547
|
7
|
+
data.tar.gz: 30137e9fe91ea7207c05db286bb94d691177dbbac6cd5d3255482627e912523ce7a6a1065f87fecd9d5f7ffac381cab265cd57f09f2878e84449e517e1e8e6ea
|
@@ -78,6 +78,10 @@ module Sinatra
|
|
78
78
|
end
|
79
79
|
end
|
80
80
|
|
81
|
+
def dump_structure(file_name = 'db/structure.sql')
|
82
|
+
ActiveRecord::Tasks::DatabaseTasks.structure_dump(config, file_name)
|
83
|
+
end
|
84
|
+
|
81
85
|
def purge
|
82
86
|
if config
|
83
87
|
ActiveRecord::Tasks::DatabaseTasks.purge(config)
|
@@ -90,6 +94,10 @@ module Sinatra
|
|
90
94
|
load(file_name)
|
91
95
|
end
|
92
96
|
|
97
|
+
def load_structure(file_name = 'db/structure.sql')
|
98
|
+
ActiveRecord::Tasks::DatabaseTasks.structure_load(config, file_name)
|
99
|
+
end
|
100
|
+
|
93
101
|
def with_config_environment(environment, &block)
|
94
102
|
previous_environment = config_environment
|
95
103
|
begin
|
@@ -111,7 +119,9 @@ module Sinatra
|
|
111
119
|
end
|
112
120
|
|
113
121
|
def config
|
114
|
-
ActiveRecord::Base.configurations[config_environment]
|
122
|
+
ActiveRecord::Base.configurations[config_environment] ||
|
123
|
+
#active record expects the keys to be strings, but connection_config returns them as symbols
|
124
|
+
Hash[ActiveRecord::Base.connection_config.map{|key, value| [key.to_s, value]}]
|
115
125
|
end
|
116
126
|
|
117
127
|
def migrations_dir
|
@@ -29,13 +29,21 @@ namespace :db do
|
|
29
29
|
desc "migrate the database (use version with VERSION=n)"
|
30
30
|
task :migrate do
|
31
31
|
Sinatra::ActiveRecordTasks.migrate(ENV["VERSION"])
|
32
|
-
|
32
|
+
|
33
|
+
case ActiveRecord::Base.schema_format
|
34
|
+
when :ruby then Rake::Task["db:schema:dump"].invoke
|
35
|
+
when :sql then Rake::Task["db:structure:dump"].invoke
|
36
|
+
end
|
33
37
|
end
|
34
38
|
|
35
39
|
desc "roll back the migration (use steps with STEP=n)"
|
36
40
|
task :rollback do
|
37
41
|
Sinatra::ActiveRecordTasks.rollback(ENV["STEP"])
|
38
|
-
|
42
|
+
|
43
|
+
case ActiveRecord::Base.schema_format
|
44
|
+
when :ruby then Rake::Task["db:schema:dump"].invoke
|
45
|
+
when :sql then Rake::Task["db:structure:dump"].invoke
|
46
|
+
end
|
39
47
|
end
|
40
48
|
|
41
49
|
namespace :schema do
|
@@ -50,6 +58,18 @@ namespace :db do
|
|
50
58
|
end
|
51
59
|
end
|
52
60
|
|
61
|
+
namespace :structure do
|
62
|
+
desc "dump schema into a file as SQL"
|
63
|
+
task :dump do
|
64
|
+
Sinatra::ActiveRecordTasks.dump_structure()
|
65
|
+
end
|
66
|
+
|
67
|
+
desc "load schema into database"
|
68
|
+
task :load do
|
69
|
+
Sinatra::ActiveRecordTasks.load_structure()
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
53
73
|
namespace :test do
|
54
74
|
task :purge do
|
55
75
|
Sinatra::ActiveRecordTasks.with_config_environment 'test' do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sinatra-activerecord
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Blake Mizerany
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-03-
|
12
|
+
date: 2014-03-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sinatra
|