nonschema_migrations 4.0.0 → 4.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 060a8252f8c50e08554a63d6dc7eda69c3787b1371378dd67ec996ccdcafb693
4
- data.tar.gz: 3fdf7873eb61ae75a48c79129ec8529f9a278ecc351e6118343a14d0849d1ee0
3
+ metadata.gz: 308147d2c0f3916b38a56e11aea98c3f9808e0a7ab7897eacacc7ee121e9c4dc
4
+ data.tar.gz: a51be4a671f86652e25f090617be568db61422f2e2d0b20af4ad93df70670649
5
5
  SHA512:
6
- metadata.gz: 39109601de547582da8d0931a5a51320e807482be4b08d22bc12342c4c16804c23213bd3bef22f2b901773776519a636ae3d3776feecc3a3912fac097d1e3ed9
7
- data.tar.gz: 245136e81e8f63a5b0f4e9e15f59b354814d0d488e7f55af7acde157e88e7d48d2bd0c7c48a2cc9271c1d9e2699b0dedf5995a1d11dc005076085184cfa0e7a8
6
+ metadata.gz: c8708734499a58f62de26d2f19da57ab469c52fc40bb7223fa71d9593a43324bdc52dac451aad363a7f3396094f6aa81cf7b040ae76b6968659e6c035a2925aa
7
+ data.tar.gz: 35f45f07ca8b51e3821b5a7abbbdebb380c9b77e28204e97d09cccc7b7bc75d7a1964a2d0da93ed2d11b2b284103f155874fdb7a979970f51a6dd94079daf43e
@@ -6,6 +6,6 @@ require 'generators/data_migration_generator.rb'
6
6
  require 'active_record/data_migration.rb'
7
7
  require 'nonschema_migrator.rb'
8
8
 
9
- module NondestructiveMigrations
9
+ module NonschemaMigrations
10
10
  require "nonschema_migrations/railtie.rb" if defined?(Rails)
11
11
  end
@@ -1,25 +1,22 @@
1
-
2
-
3
-
4
- class NondestructiveMigrator < ActiveRecord::Migrator
1
+ class NonschemaMigrator < ActiveRecord::Migrator
5
2
  # This class related to data migration.
6
3
  # Used in rake tasks (rake data:[migrate|rollback|up|down])
7
4
 
8
5
  if defined?(ActiveRecord::MigrationContext)
9
6
  class SchemaMigration < ActiveRecord::SchemaMigration
10
7
  def self.table_name
11
- NondestructiveMigrator.schema_migrations_table_name
8
+ NonschemaMigrator.schema_migrations_table_name
12
9
  end
13
10
  end
14
11
 
15
12
  class MigrationContext < ActiveRecord::MigrationContext
16
13
  def initialize(migrations_paths)
17
14
  super(migrations_paths)
18
- @schema_migration = NondestructiveMigrator::SchemaMigration
15
+ @schema_migration = NonschemaMigrator::SchemaMigration
19
16
  end
20
17
 
21
18
  def new_migrator(*args)
22
- result = NondestructiveMigrator.new(*args)
19
+ result = NonschemaMigrator.new(*args)
23
20
  result.migration_context = self
24
21
  result
25
22
  end
@@ -55,6 +52,10 @@ class NondestructiveMigrator < ActiveRecord::Migrator
55
52
  (db_list + file_list).sort_by { |_, version, _| version }
56
53
  end
57
54
 
55
+ def rollback(steps)
56
+ move(:down, steps)
57
+ end
58
+
58
59
  def move(direction, steps)
59
60
  migrator = new_migrator(direction, migrations)
60
61
 
@@ -76,20 +77,20 @@ class NondestructiveMigrator < ActiveRecord::Migrator
76
77
 
77
78
  def up(target_version = nil)
78
79
  selected_migrations = if block_given?
79
- migrations.select { |m| yield m }
80
- else
81
- migrations
82
- end
80
+ migrations.select { |m| yield m }
81
+ else
82
+ migrations
83
+ end
83
84
 
84
85
  new_migrator(:up, selected_migrations, target_version).migrate
85
86
  end
86
87
 
87
88
  def down(target_version = nil)
88
89
  selected_migrations = if block_given?
89
- migrations.select { |m| yield m }
90
- else
91
- migrations
92
- end
90
+ migrations.select { |m| yield m }
91
+ else
92
+ migrations
93
+ end
93
94
 
94
95
  new_migrator(:down, selected_migrations, target_version).migrate
95
96
  end
@@ -97,7 +98,7 @@ class NondestructiveMigrator < ActiveRecord::Migrator
97
98
 
98
99
  class << self
99
100
  def context(path)
100
- NondestructiveMigrator::MigrationContext.new(path)
101
+ NonschemaMigrator::MigrationContext.new(path)
101
102
  end
102
103
 
103
104
  def new_migrator(path, *args)
@@ -110,6 +111,10 @@ class NondestructiveMigrator < ActiveRecord::Migrator
110
111
  context(path).migrate()
111
112
  end
112
113
 
114
+ def rollback(path, steps = 1)
115
+ context(path).rollback(steps)
116
+ end
117
+
113
118
  def run(direction, path, target_version)
114
119
  new_migrator(path, direction, context(path).migrations, target_version).run
115
120
  end
@@ -139,7 +144,7 @@ class NondestructiveMigrator < ActiveRecord::Migrator
139
144
  def migrations_path
140
145
  MIGRATIONS_PATH
141
146
  end
142
-
147
+
143
148
  def schema_migrations_table_name
144
149
  'data_migrations'
145
150
  end
@@ -158,4 +163,3 @@ class NondestructiveMigrator < ActiveRecord::Migrator
158
163
  end
159
164
  end
160
165
 
161
-
@@ -7,28 +7,33 @@ namespace :data do
7
7
 
8
8
  desc "run data migration (#{MIGRATIONS_PATH})"
9
9
  task :migrate => :data_migration_dependencies do
10
- NondestructiveMigrator.migrate(MIGRATIONS_PATH)
10
+ NonschemaMigrator.migrate(MIGRATIONS_PATH)
11
11
  end
12
12
 
13
13
  desc "rollback data migration (#{MIGRATIONS_PATH})"
14
14
  task :rollback => :data_migration_dependencies do
15
- step = ENV['STEP'] ? ENV['STEP'].to_i : 1
16
- NondestructiveMigrator.rollback(MIGRATIONS_PATH,step)
15
+ NonschemaMigrator.rollback(MIGRATIONS_PATH)
17
16
  end
18
17
 
18
+ desc "honeybear (#{MIGRATIONS_PATH})"
19
+ task :honeybear => :data_migration_dependencies do
20
+ puts "hello honeybear"
21
+ end
22
+
23
+
19
24
  namespace :migrate do
20
25
  desc %Q{runs the "up" for a given _data_ migration VERSION}
21
26
  task :up => :data_migration_dependencies do
22
27
  version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
23
28
  raise "VERSION is required" unless version
24
- NondestructiveMigrator.run(:up, MIGRATIONS_PATH, version)
29
+ NonschemaMigrator.run(:up, MIGRATIONS_PATH, version)
25
30
  end
26
31
 
27
32
  desc %Q{runs the "down" for a given _data_ migration VERSION}
28
33
  task :down => :data_migration_dependencies do
29
34
  version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
30
35
  raise "VERSION is required" unless version
31
- NondestructiveMigrator.run(:down, MIGRATIONS_PATH, version)
36
+ NonschemaMigrator.run(:down, MIGRATIONS_PATH, version)
32
37
  end
33
38
  end
34
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nonschema_migrations
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 4.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Fleetwood-Boldt
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-14 00:00:00.000000000 Z
11
+ date: 2019-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord