secondbase 2.0.0 → 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/VERSION +1 -1
- data/lib/second_base/databases.rake +1 -1
- data/lib/second_base/databases_rails_five.rake +1 -1
- data/lib/second_base/databases_rails_four.rake +1 -1
- data/lib/second_base/railtie.rb +5 -0
- data/test/cases/dbtask_test.rb +10 -0
- data/test/dummy_apps/rails_five/init.rb +3 -1
- data/test/dummy_apps/rails_four/init.rb +3 -1
- data/test/test_helpers/dummy_app_helpers.rb +2 -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: 78a47d016139857a1c9b4167e4b2960dd833ba78
|
4
|
+
data.tar.gz: 7bf629b8e5bb03a805c67ffc04daee46d4635be2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e300a7436d8528aa1342b4b5a9aa14a0d129668b38dace6a9c27bb1cd4bf4272fb8e6d2f899eead5c2fc8afd1b0b47aab80b46af49d56b8237b8fd223e40409b
|
7
|
+
data.tar.gz: 78f37cc71147a09b0fcac2f6582a0ce5d36f30286a68ce7b549b436b6d161dceea51b0b8a3a0fe3e715d0f388a7b212c8a4c601ffaed42d11921ec0f9dde5e71
|
data/README.md
CHANGED
@@ -34,7 +34,7 @@ secondbase:
|
|
34
34
|
|
35
35
|
#### Database Tasks
|
36
36
|
|
37
|
-
SecondBase aims to work seamlessly within your Rails application. When it makes sense, we run a mirrored `db:second_base` task for matching ActiveRecord base database task. For example:
|
37
|
+
SecondBase aims to work seamlessly within your Rails application. When it makes sense, we run a mirrored `db:second_base` task for matching ActiveRecord base database task. These can all be deactivated by setting `config.second_base.run_with_db_tasks = false` in your Application's configuration. For example:
|
38
38
|
|
39
39
|
```shell
|
40
40
|
$ rake db:create
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.1.0
|
@@ -113,7 +113,7 @@ end
|
|
113
113
|
test:purge test:load_schema test:load_structure test:prepare
|
114
114
|
}.each do |name|
|
115
115
|
task = Rake::Task["db:#{name}"] rescue nil
|
116
|
-
next unless task
|
116
|
+
next unless task && SecondBase::Railtie.run_with_db_tasks?
|
117
117
|
task.enhance do
|
118
118
|
Rake::Task["db:load_config"].invoke
|
119
119
|
Rake::Task["db:second_base:#{name}"].invoke
|
@@ -14,7 +14,7 @@ end
|
|
14
14
|
drop:_unsafe
|
15
15
|
}.each do |name|
|
16
16
|
task = Rake::Task["db:#{name}"] rescue nil
|
17
|
-
next unless task
|
17
|
+
next unless task && SecondBase::Railtie.run_with_db_tasks?
|
18
18
|
task.enhance do
|
19
19
|
Rake::Task["db:load_config"].invoke
|
20
20
|
Rake::Task["db:second_base:#{name}"].invoke
|
@@ -14,7 +14,7 @@ end
|
|
14
14
|
drop
|
15
15
|
}.each do |name|
|
16
16
|
task = Rake::Task["db:#{name}"] rescue nil
|
17
|
-
next unless task
|
17
|
+
next unless task && SecondBase::Railtie.run_with_db_tasks?
|
18
18
|
task.enhance do
|
19
19
|
Rake::Task["db:load_config"].invoke
|
20
20
|
Rake::Task["db:second_base:#{name}"].invoke
|
data/lib/second_base/railtie.rb
CHANGED
@@ -4,6 +4,7 @@ module SecondBase
|
|
4
4
|
config.second_base = ActiveSupport::OrderedOptions.new
|
5
5
|
config.second_base.path = 'db/secondbase'
|
6
6
|
config.second_base.config_key = 'secondbase'
|
7
|
+
config.second_base.run_with_db_tasks = true
|
7
8
|
|
8
9
|
config.after_initialize do |app|
|
9
10
|
secondbase_dir = app.root.join(config.second_base.path)
|
@@ -38,6 +39,10 @@ module SecondBase
|
|
38
39
|
config.second_base.config_key
|
39
40
|
end
|
40
41
|
|
42
|
+
def run_with_db_tasks?
|
43
|
+
config.second_base.run_with_db_tasks
|
44
|
+
end
|
45
|
+
|
41
46
|
def fullpath(extra=nil)
|
42
47
|
path = Rails.root.join(config.second_base.path)
|
43
48
|
(extra ? path.join(path, extra) : path).to_s
|
data/test/cases/dbtask_test.rb
CHANGED
@@ -207,9 +207,19 @@ class DbTaskTest < SecondBase::TestCase
|
|
207
207
|
assert_match(/version: 20151202075826/, run_secondbase(:version))
|
208
208
|
end
|
209
209
|
|
210
|
+
def test_secondbase_db_tasks_disabled
|
211
|
+
refute_dummy_databases
|
212
|
+
run_db :create, :stdout, false
|
213
|
+
assert_dummy_created_but_not_secondbase
|
214
|
+
end
|
210
215
|
|
211
216
|
private
|
212
217
|
|
218
|
+
def assert_dummy_created_but_not_secondbase
|
219
|
+
assert_equal 'base.sqlite3', dummy_database_sqlite
|
220
|
+
refute_match(/secondbase_test/, `mysql -uroot -e "SHOW DATABASES"`)
|
221
|
+
end
|
222
|
+
|
213
223
|
def assert_no_tables
|
214
224
|
if ActiveRecord::Base.connection.respond_to? :data_sources
|
215
225
|
assert_equal [], ActiveRecord::Base.connection.data_sources
|
@@ -66,9 +66,9 @@ module SecondBase
|
|
66
66
|
'rake'
|
67
67
|
end
|
68
68
|
|
69
|
-
def run_db(args, stream=:stdout)
|
69
|
+
def run_db(args, stream=:stdout, with_secondbase_tasks=true)
|
70
70
|
capture(stream) do
|
71
|
-
Dir.chdir(dummy_root) { Kernel.system "#{run_cmd} db:#{args}" }
|
71
|
+
Dir.chdir(dummy_root) { Kernel.system "env WITH_SECONDBASE_TASKS=#{with_secondbase_tasks} #{run_cmd} db:#{args}" }
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: secondbase
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Karle Durante
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2016-05-
|
13
|
+
date: 2016-05-14 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rails
|