data_migrate 9.0.0 → 10.0.3.rc
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/.github/workflows/gempush.yml +1 -0
- data/.gitignore +3 -1
- data/Appraisals +0 -4
- data/Changelog.md +31 -0
- data/README.md +9 -7
- data/lib/data_migrate/{data_migrator_five.rb → data_migrator.rb} +0 -11
- data/lib/data_migrate/database_tasks.rb +12 -72
- data/lib/data_migrate/{schema_migration_six.rb → schema_migration.rb} +4 -2
- data/lib/data_migrate/{status_service_five.rb → status_service.rb} +12 -6
- data/lib/data_migrate/tasks/data_migrate_tasks.rb +19 -39
- data/lib/data_migrate/version.rb +1 -1
- data/lib/data_migrate.rb +3 -8
- data/spec/data_migrate/config_spec.rb +13 -10
- data/spec/data_migrate/data_migrator_spec.rb +11 -32
- data/spec/data_migrate/data_spec.rb +0 -11
- data/spec/data_migrate/database_tasks_spec.rb +10 -58
- data/spec/data_migrate/legacy_migrator_spec.rb +6 -18
- data/spec/data_migrate/migration.rb +11 -13
- data/spec/data_migrate/migration_context_spec.rb +11 -37
- data/spec/data_migrate/schema_dumper_spec.rb +10 -23
- data/spec/data_migrate/schema_migration_spec.rb +40 -42
- data/spec/data_migrate/status_service_spec.rb +26 -55
- data/spec/data_migrate/tasks/data_migrate_tasks_spec.rb +37 -71
- data/spec/db/data/20091231235959_some_name.rb +1 -1
- data/spec/db/data/20171231235959_super_update.rb +1 -1
- data/spec/spec_helper.rb +2 -8
- data/tasks/databases.rake +38 -5
- metadata +9 -21
- data/.ruby-version +0 -1
- data/.travis.yml +0 -17
- data/Gemfile.rails5.2 +0 -10
- data/gemfiles/rails_5.2.gemfile +0 -8
- data/lib/data_migrate/schema_migration_five.rb +0 -31
- data/spec/db/6.0/20091231235959_some_name.rb +0 -9
- data/spec/db/6.0/20171231235959_super_update.rb +0 -9
- data/spec/db/data-6.0/20091231235959_some_name.rb +0 -9
- data/spec/db/data-6.0/20171231235959_super_update.rb +0 -9
- data/spec/db/data-6.0/20181128000207_excluded_file.rb.other_ext +0 -1
- data/spec/db/migrate/5.2/20131111111111_late_migration.rb +0 -9
- data/spec/db/migrate/5.2/20202020202011_db_migration.rb +0 -9
- /data/spec/db/migrate/{6.0/20131111111111_late_migration.rb → 20131111111111_late_migration.rb} +0 -0
- /data/spec/db/migrate/{6.0/20202020202011_db_migration.rb → 20202020202011_db_migration.rb} +0 -0
@@ -3,33 +3,40 @@
|
|
3
3
|
require "spec_helper"
|
4
4
|
|
5
5
|
describe DataMigrate::Tasks::DataMigrateTasks do
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
}
|
6
|
+
let(:connection_db_config) do
|
7
|
+
if Gem::Dependency.new("railties", ">= 6.1").match?("railties", Gem.loaded_specs["railties"].version)
|
8
|
+
ActiveRecord::Base.connection_db_config
|
9
|
+
else
|
10
|
+
ActiveRecord::Base.configurations.configs_for.first
|
12
11
|
end
|
12
|
+
end
|
13
|
+
|
14
|
+
before do
|
15
|
+
ActiveRecord::SchemaMigration.create_table
|
16
|
+
DataMigrate::DataSchemaMigration.create_table
|
17
|
+
end
|
13
18
|
|
19
|
+
after do
|
20
|
+
ActiveRecord::Migration.drop_table("data_migrations") rescue nil
|
21
|
+
ActiveRecord::Migration.drop_table("schema_migrations") rescue nil
|
22
|
+
end
|
23
|
+
|
24
|
+
describe :dump do
|
14
25
|
before do
|
15
|
-
allow(DataMigrate::DataMigrator).to receive(:db_config) { db_config }
|
16
26
|
allow(DataMigrate::DatabaseTasks).to receive(:db_dir).and_return("spec/db")
|
17
|
-
|
18
|
-
|
19
|
-
after do
|
20
|
-
ActiveRecord::Migration.drop_table("data_migrations")
|
27
|
+
DataMigrate::Tasks::DataMigrateTasks.migrate
|
21
28
|
end
|
22
29
|
|
23
30
|
context 'when not given a separate db config' do
|
24
|
-
it 'does not override the default connection' do
|
25
|
-
DataMigrate::Tasks::DataMigrateTasks.migrate
|
31
|
+
it 'does not override the default connection' do
|
26
32
|
expect(ActiveRecord::Base).not_to receive(:establish_connection)
|
27
33
|
expect(DataMigrate::SchemaDumper).to receive(:dump)
|
28
|
-
|
34
|
+
|
35
|
+
DataMigrate::Tasks::DataMigrateTasks.dump(connection_db_config)
|
29
36
|
end
|
30
37
|
end
|
31
38
|
|
32
|
-
context 'when given ' do
|
39
|
+
context 'when given a separate db config' do
|
33
40
|
let(:override_config) do
|
34
41
|
{
|
35
42
|
'host' => '127.0.0.1',
|
@@ -39,6 +46,7 @@ describe DataMigrate::Tasks::DataMigrateTasks do
|
|
39
46
|
'password' => nil,
|
40
47
|
}
|
41
48
|
end
|
49
|
+
let(:paths) { ["spec/db/migrate"] }
|
42
50
|
|
43
51
|
before do
|
44
52
|
DataMigrate.configure do |config|
|
@@ -47,40 +55,20 @@ describe DataMigrate::Tasks::DataMigrateTasks do
|
|
47
55
|
end
|
48
56
|
|
49
57
|
it 'overrides the default connection' do
|
50
|
-
DataMigrate::Tasks::DataMigrateTasks.migrate
|
51
58
|
expect(ActiveRecord::Base).to receive(:establish_connection).with(override_config)
|
52
|
-
|
59
|
+
|
60
|
+
DataMigrate::Tasks::DataMigrateTasks.dump(connection_db_config)
|
53
61
|
end
|
54
62
|
end
|
55
63
|
end
|
56
64
|
|
57
65
|
describe :migrate do
|
58
|
-
|
59
|
-
{
|
60
|
-
adapter: "sqlite3",
|
61
|
-
database: "spec/db/test.db"
|
62
|
-
}
|
63
|
-
end
|
64
|
-
|
65
|
-
before do
|
66
|
-
allow(DataMigrate::DataMigrator).to receive(:db_config) { db_config }
|
67
|
-
ActiveRecord::Base.establish_connection(db_config)
|
68
|
-
end
|
69
|
-
|
70
|
-
after do
|
71
|
-
ActiveRecord::Migration.drop_table("data_migrations")
|
66
|
+
it "first run should run the first pending migration" do
|
67
|
+
expect { DataMigrate::Tasks::DataMigrateTasks.migrate }.to output(/20091231235959 SomeName: migrating/).to_stdout
|
72
68
|
end
|
73
69
|
|
74
|
-
it do
|
75
|
-
|
76
|
-
DataMigrate::Tasks::DataMigrateTasks.migrate
|
77
|
-
}.to output(/20091231235959 SomeName: migrating/).to_stdout
|
78
|
-
end
|
79
|
-
|
80
|
-
it do
|
81
|
-
expect {
|
82
|
-
DataMigrate::Tasks::DataMigrateTasks.migrate
|
83
|
-
}.to output(/20171231235959 SuperUpdate: migrating/).to_stdout
|
70
|
+
it "second run should run the second pending migration" do
|
71
|
+
expect { DataMigrate::Tasks::DataMigrateTasks.migrate }.to output(/20171231235959 SuperUpdate: migrating/).to_stdout
|
84
72
|
end
|
85
73
|
end
|
86
74
|
|
@@ -111,52 +99,30 @@ describe DataMigrate::Tasks::DataMigrateTasks do
|
|
111
99
|
it "should abort with given message and print names and versions of pending migrations" do
|
112
100
|
expect { subject }
|
113
101
|
.to raise_error(SystemExit, message)
|
114
|
-
.and output(
|
102
|
+
.and output(match(/You have #{migrations.count} pending migrations:/)
|
103
|
+
.and match(Regexp.new(migrations.map { |m| m.slice(:version, :name)
|
104
|
+
.values.join("\\W+") }.join("\\W+")))).to_stdout
|
115
105
|
end
|
116
106
|
end
|
117
107
|
end
|
118
108
|
|
119
|
-
describe
|
120
|
-
let(:db_config) do
|
121
|
-
{
|
122
|
-
adapter: "sqlite3",
|
123
|
-
database: "spec/db/test.db"
|
124
|
-
}
|
125
|
-
end
|
126
|
-
|
109
|
+
describe ".status" do
|
127
110
|
before do
|
128
|
-
|
129
|
-
|
130
|
-
else
|
131
|
-
hash_config = ActiveRecord::DatabaseConfigurations::HashConfig.new('test', 'test', db_config)
|
132
|
-
config_obj = ActiveRecord::DatabaseConfigurations.new([hash_config])
|
133
|
-
allow(ActiveRecord::Base).to receive(:configurations).and_return(config_obj)
|
134
|
-
end
|
135
|
-
|
136
|
-
allow(Rails).to receive(:root) { '.' }
|
137
|
-
|
138
|
-
if Rails::VERSION::MAJOR == 5
|
139
|
-
allow(DataMigrate::Tasks::DataMigrateTasks).to receive(:schema_migrations_path) { 'spec/db/migrate/5.2' }
|
140
|
-
else
|
141
|
-
allow(DataMigrate::Tasks::DataMigrateTasks).to receive(:schema_migrations_path) { 'spec/db/migrate/6.0' }
|
142
|
-
end
|
111
|
+
allow(Rails).to receive(:root) { "." }
|
112
|
+
allow(Rails).to receive(:application) { OpenStruct.new(config: OpenStruct.new(paths: { "db/migrate" => ["spec/db/migrate"] })) }
|
143
113
|
|
144
114
|
DataMigrate::Tasks::DataMigrateTasks.migrate
|
145
115
|
end
|
146
116
|
|
147
|
-
after do
|
148
|
-
ActiveRecord::Migration.drop_table("data_migrations")
|
149
|
-
end
|
150
|
-
|
151
117
|
it "should display data migration status" do
|
152
118
|
expect {
|
153
|
-
DataMigrate::Tasks::DataMigrateTasks.status
|
119
|
+
DataMigrate::Tasks::DataMigrateTasks.status(connection_db_config)
|
154
120
|
}.to output(/up 20091231235959 Some name/).to_stdout
|
155
121
|
end
|
156
122
|
|
157
123
|
it "should display schema and data migration status" do
|
158
124
|
expect {
|
159
|
-
DataMigrate::Tasks::DataMigrateTasks.status_with_schema
|
125
|
+
DataMigrate::Tasks::DataMigrateTasks.status_with_schema(connection_db_config)
|
160
126
|
}.to output(match(/up data 20091231235959 Some name/)
|
161
127
|
.and match(/down schema 20131111111111 Late migration/)).to_stdout
|
162
128
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -20,14 +20,8 @@ RSpec.configure do |config|
|
|
20
20
|
if example.metadata[:no_override]
|
21
21
|
else
|
22
22
|
@prev_data_migrations_path = DataMigrate.config.data_migrations_path
|
23
|
-
|
24
|
-
|
25
|
-
config.data_migrations_path = "spec/db/data"
|
26
|
-
end
|
27
|
-
else
|
28
|
-
DataMigrate.configure do |config|
|
29
|
-
config.data_migrations_path = "spec/db/6.0"
|
30
|
-
end
|
23
|
+
DataMigrate.configure do |config|
|
24
|
+
config.data_migrations_path = "spec/db/data"
|
31
25
|
end
|
32
26
|
end
|
33
27
|
end
|
data/tasks/databases.rake
CHANGED
@@ -1,10 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'data_migrate/tasks/data_migrate_tasks'
|
2
4
|
|
3
5
|
namespace :db do
|
4
6
|
namespace :migrate do
|
5
7
|
desc "Migrate the database data and schema (options: VERSION=x, VERBOSE=false)."
|
6
8
|
task :with_data => :environment do
|
7
|
-
|
9
|
+
original_db_config = if Gem::Dependency.new("railties", "~> 7.0").match?("railties", Gem.loaded_specs["railties"].version)
|
10
|
+
ActiveRecord::Base.connection_db_config
|
11
|
+
elsif Gem::Dependency.new("railties", "~> 6.0").match?("railties", Gem.loaded_specs["railties"].version)
|
12
|
+
ActiveRecord::Base.connection_config
|
13
|
+
end
|
14
|
+
|
15
|
+
ActiveRecord::Base.configurations.configs_for(env_name: ActiveRecord::Tasks::DatabaseTasks.env).each do |db_config|
|
16
|
+
ActiveRecord::Base.establish_connection(db_config)
|
17
|
+
DataMigrate::DataMigrator.assure_data_schema_table
|
8
18
|
|
9
19
|
ActiveRecord::Migration.verbose = ENV["VERBOSE"] ? ENV["VERBOSE"] == "true" : true
|
10
20
|
target_version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
|
@@ -48,9 +58,12 @@ namespace :db do
|
|
48
58
|
migrations.each do |migration|
|
49
59
|
DataMigrate::DatabaseTasks.run_migration(migration, migration[:direction])
|
50
60
|
end
|
61
|
+
end
|
51
62
|
|
52
63
|
Rake::Task["db:_dump"].invoke
|
53
64
|
Rake::Task["data:dump"].invoke
|
65
|
+
ensure
|
66
|
+
ActiveRecord::Base.establish_connection(original_db_config)
|
54
67
|
end
|
55
68
|
|
56
69
|
namespace :redo do
|
@@ -114,7 +127,10 @@ namespace :db do
|
|
114
127
|
namespace :status do
|
115
128
|
desc "Display status of data and schema migrations"
|
116
129
|
task :with_data => :environment do
|
117
|
-
|
130
|
+
ActiveRecord::Base.configurations.configs_for(env_name: ActiveRecord::Tasks::DatabaseTasks.env).each do |db_config|
|
131
|
+
ActiveRecord::Base.establish_connection(db_config)
|
132
|
+
DataMigrate::Tasks::DataMigrateTasks.status_with_schema(db_config)
|
133
|
+
end
|
118
134
|
end
|
119
135
|
end
|
120
136
|
end # END OF MIGRATE NAME SPACE
|
@@ -193,8 +209,19 @@ end
|
|
193
209
|
namespace :data do
|
194
210
|
desc 'Migrate data migrations (options: VERSION=x, VERBOSE=false)'
|
195
211
|
task :migrate => :environment do
|
196
|
-
|
212
|
+
original_db_config = if Gem::Dependency.new("railties", "~> 7.0").match?("railties", Gem.loaded_specs["railties"].version)
|
213
|
+
ActiveRecord::Base.connection_db_config
|
214
|
+
elsif Gem::Dependency.new("railties", "~> 6.0").match?("railties", Gem.loaded_specs["railties"].version)
|
215
|
+
ActiveRecord::Base.connection_config
|
216
|
+
end
|
217
|
+
|
218
|
+
ActiveRecord::Base.configurations.configs_for(env_name: ActiveRecord::Tasks::DatabaseTasks.env).each do |db_config|
|
219
|
+
ActiveRecord::Base.establish_connection(db_config)
|
220
|
+
DataMigrate::Tasks::DataMigrateTasks.migrate
|
221
|
+
end
|
197
222
|
Rake::Task["data:dump"].invoke
|
223
|
+
ensure
|
224
|
+
ActiveRecord::Base.establish_connection(original_db_config)
|
198
225
|
end
|
199
226
|
|
200
227
|
namespace :migrate do
|
@@ -230,7 +257,10 @@ namespace :data do
|
|
230
257
|
|
231
258
|
desc "Display status of data migrations"
|
232
259
|
task :status => :environment do
|
233
|
-
|
260
|
+
ActiveRecord::Base.configurations.configs_for(env_name: ActiveRecord::Tasks::DatabaseTasks.env).each do |db_config|
|
261
|
+
ActiveRecord::Base.establish_connection(db_config)
|
262
|
+
DataMigrate::Tasks::DataMigrateTasks.status(db_config)
|
263
|
+
end
|
234
264
|
end
|
235
265
|
end
|
236
266
|
|
@@ -269,7 +299,10 @@ namespace :data do
|
|
269
299
|
|
270
300
|
desc "Create a db/data_schema.rb file that stores the current data version"
|
271
301
|
task dump: :environment do
|
272
|
-
|
302
|
+
ActiveRecord::Base.configurations.configs_for(env_name: ActiveRecord::Tasks::DatabaseTasks.env).each do |db_config|
|
303
|
+
ActiveRecord::Base.establish_connection(db_config)
|
304
|
+
DataMigrate::Tasks::DataMigrateTasks.dump(db_config)
|
305
|
+
end
|
273
306
|
|
274
307
|
# Allow this task to be called as many times as required. An example
|
275
308
|
# is the migrate:redo task, which calls other two internally
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: data_migrate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 10.0.3.rc
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew J Vargo
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2023-
|
13
|
+
date: 2023-06-15 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activerecord
|
@@ -198,18 +198,14 @@ files:
|
|
198
198
|
- ".rspec"
|
199
199
|
- ".rubocop.yml"
|
200
200
|
- ".ruby-style.yml"
|
201
|
-
- ".ruby-version"
|
202
|
-
- ".travis.yml"
|
203
201
|
- Appraisals
|
204
202
|
- Changelog.md
|
205
203
|
- Gemfile
|
206
|
-
- Gemfile.rails5.2
|
207
204
|
- Gemfile.rails6.1
|
208
205
|
- LICENSE
|
209
206
|
- README.md
|
210
207
|
- Rakefile
|
211
208
|
- data_migrate.gemspec
|
212
|
-
- gemfiles/rails_5.2.gemfile
|
213
209
|
- gemfiles/rails_6.0.gemfile
|
214
210
|
- gemfiles/rails_6.1.gemfile
|
215
211
|
- gemfiles/rails_7.0.gemfile
|
@@ -217,7 +213,7 @@ files:
|
|
217
213
|
- lib/capistrano/data_migrate/migrate.rb
|
218
214
|
- lib/data_migrate.rb
|
219
215
|
- lib/data_migrate/config.rb
|
220
|
-
- lib/data_migrate/
|
216
|
+
- lib/data_migrate/data_migrator.rb
|
221
217
|
- lib/data_migrate/data_schema.rb
|
222
218
|
- lib/data_migrate/data_schema_migration.rb
|
223
219
|
- lib/data_migrate/database_tasks.rb
|
@@ -225,9 +221,8 @@ files:
|
|
225
221
|
- lib/data_migrate/migration_context.rb
|
226
222
|
- lib/data_migrate/railtie.rb
|
227
223
|
- lib/data_migrate/schema_dumper.rb
|
228
|
-
- lib/data_migrate/
|
229
|
-
- lib/data_migrate/
|
230
|
-
- lib/data_migrate/status_service_five.rb
|
224
|
+
- lib/data_migrate/schema_migration.rb
|
225
|
+
- lib/data_migrate/status_service.rb
|
231
226
|
- lib/data_migrate/tasks/data_migrate_tasks.rb
|
232
227
|
- lib/data_migrate/version.rb
|
233
228
|
- lib/generators/data_migrate.rb
|
@@ -247,11 +242,6 @@ files:
|
|
247
242
|
- spec/data_migrate/schema_migration_spec.rb
|
248
243
|
- spec/data_migrate/status_service_spec.rb
|
249
244
|
- spec/data_migrate/tasks/data_migrate_tasks_spec.rb
|
250
|
-
- spec/db/6.0/20091231235959_some_name.rb
|
251
|
-
- spec/db/6.0/20171231235959_super_update.rb
|
252
|
-
- spec/db/data-6.0/20091231235959_some_name.rb
|
253
|
-
- spec/db/data-6.0/20171231235959_super_update.rb
|
254
|
-
- spec/db/data-6.0/20181128000207_excluded_file.rb.other_ext
|
255
245
|
- spec/db/data/20091231235959_some_name.rb
|
256
246
|
- spec/db/data/20171231235959_super_update.rb
|
257
247
|
- spec/db/data/20181128000207_excluded_file.rb.other_ext
|
@@ -259,10 +249,8 @@ files:
|
|
259
249
|
- spec/db/data/partial_schema/test_data_schema.rb
|
260
250
|
- spec/db/data/schema/data_schema.rb
|
261
251
|
- spec/db/data/schema/test_data_schema.rb
|
262
|
-
- spec/db/migrate/
|
263
|
-
- spec/db/migrate/
|
264
|
-
- spec/db/migrate/6.0/20131111111111_late_migration.rb
|
265
|
-
- spec/db/migrate/6.0/20202020202011_db_migration.rb
|
252
|
+
- spec/db/migrate/20131111111111_late_migration.rb
|
253
|
+
- spec/db/migrate/20202020202011_db_migration.rb
|
266
254
|
- spec/generators/data_migration/data_migration_generator_spec.rb
|
267
255
|
- spec/spec_helper.rb
|
268
256
|
- tasks/.gitkeep
|
@@ -282,9 +270,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
282
270
|
version: '0'
|
283
271
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
284
272
|
requirements:
|
285
|
-
- - "
|
273
|
+
- - ">"
|
286
274
|
- !ruby/object:Gem::Version
|
287
|
-
version:
|
275
|
+
version: 1.3.1
|
288
276
|
requirements: []
|
289
277
|
rubygems_version: 3.3.26
|
290
278
|
signing_key:
|
data/.ruby-version
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
2.7.5
|
data/.travis.yml
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
rvm:
|
3
|
-
- 2.7
|
4
|
-
- 3.0
|
5
|
-
- 3.2
|
6
|
-
script: bundle exec rspec
|
7
|
-
gemfile:
|
8
|
-
- gemfiles/rails_5.2.gemfile
|
9
|
-
- gemfiles/rails_6.0.gemfile
|
10
|
-
- gemfiles/rails_6.1.gemfile
|
11
|
-
- gemfiles/rails_7.0.gemfile
|
12
|
-
jobs:
|
13
|
-
exclude:
|
14
|
-
- rvm: 3.0
|
15
|
-
gemfile: gemfiles/rails_5.2.gemfile
|
16
|
-
- rvm: 3.2
|
17
|
-
gemfile: gemfiles/rails_5.2.gemfile
|
data/Gemfile.rails5.2
DELETED
data/gemfiles/rails_5.2.gemfile
DELETED
@@ -1,31 +0,0 @@
|
|
1
|
-
module DataMigrate
|
2
|
-
# Helper class to getting access to db schema
|
3
|
-
# to allow data/schema combiation tasks
|
4
|
-
class SchemaMigration
|
5
|
-
def self.pending_schema_migrations
|
6
|
-
all_migrations = DataMigrate::MigrationContext.new(migrations_paths).migrations
|
7
|
-
sort_migrations(
|
8
|
-
ActiveRecord::Migrator.new(:up, all_migrations).
|
9
|
-
pending_migrations.
|
10
|
-
map {|m| { version: m.version, name: m.name, kind: :schema }}
|
11
|
-
)
|
12
|
-
end
|
13
|
-
|
14
|
-
def self.run(direction, migration_paths, version)
|
15
|
-
ActiveRecord::MigrationContext.new(migration_paths).run(direction, version)
|
16
|
-
end
|
17
|
-
|
18
|
-
def self.sort_migrations(set1, set2 = nil)
|
19
|
-
migrations = set1 + (set2 || [])
|
20
|
-
migrations.sort {|a, b| sort_string(a) <=> sort_string(b)}
|
21
|
-
end
|
22
|
-
|
23
|
-
def self.migrations_paths
|
24
|
-
Rails.application.config.paths["db/migrate"].to_a
|
25
|
-
end
|
26
|
-
|
27
|
-
def self.sort_string(migration)
|
28
|
-
"#{migration[:version]}_#{migration[:kind] == :data ? 1 : 0}"
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
@@ -1 +0,0 @@
|
|
1
|
-
# This file should be excluded
|
/data/spec/db/migrate/{6.0/20131111111111_late_migration.rb → 20131111111111_late_migration.rb}
RENAMED
File without changes
|
File without changes
|