data_migrate 8.1.1 → 8.3.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/Changelog.md +8 -0
- data/README.md +21 -0
- data/lib/data_migrate/data_schema_migration.rb +7 -8
- data/lib/data_migrate/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fbfb52ef4fcacc01bb90162dd1869dddf02d0f94fcabe7b3df3b6e23b0616bc6
|
4
|
+
data.tar.gz: da2ca8153fc78c898839a8309a242b96d84c656d33e28213f7e991118d068ca3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a1e6f412e15f2e597ebf7b6272dcc7e66f2aa3faeea4f8ff48e1991667d238bcaa33e1ff12d007fdf58ff7005a380c03f85babc7e39bd4ca205b6f522d091b0
|
7
|
+
data.tar.gz: 6555ff6611bc06d9c85b137d301a319b3a5f61974c92b14592b9cede75414ba8d02745808c179bd0dcc2126415ffd2ed2edf9a3d836423e676a51d2a53b4dc83
|
data/Changelog.md
CHANGED
@@ -1,5 +1,13 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 8.3.0
|
4
|
+
|
5
|
+
Add delegation to exists? for use by third parties [foxondo](https://github.com/foxondo)
|
6
|
+
|
7
|
+
## 8.2.0
|
8
|
+
|
9
|
+
Delegate to anonymous subclass of AR::SchemaMigration [foxondo](https://github.com/foxondo)
|
10
|
+
|
3
11
|
## 8.1.1
|
4
12
|
|
5
13
|
Revert 8.1.0 changes
|
data/README.md
CHANGED
@@ -132,6 +132,27 @@ require 'capistrano/data_migrate'
|
|
132
132
|
|
133
133
|
From now on capistrano will run `rake db:migrate:with_data` in every deploy.
|
134
134
|
|
135
|
+
## Rails Engines support
|
136
|
+
|
137
|
+
This gem also has a initial support for adding data migrations inside Rails engines.
|
138
|
+
Inside the Engine's class initializer (the one that inherits from `Rails::Engine`, usually inside `engines/ENGINE_NAME/lib/engine.rb`) you need to add something like this:
|
139
|
+
|
140
|
+
|
141
|
+
```ruby
|
142
|
+
module EngineName
|
143
|
+
class Engine < ::Rails::Engine
|
144
|
+
initializer :engine_name do |app|
|
145
|
+
::DataMigrate.configure do |data_migrate|
|
146
|
+
default_path = ::DataMigrate::Config.new.data_migrations_path
|
147
|
+
data_migrate.data_migrations_path = [default_path, root.join('db', 'data')]
|
148
|
+
end
|
149
|
+
end
|
150
|
+
end
|
151
|
+
end
|
152
|
+
```
|
153
|
+
|
154
|
+
Then, in the Engine's `db/data` folder, you can add data migrations and run them as usual.
|
155
|
+
|
135
156
|
### Contributing
|
136
157
|
|
137
158
|
## Testing
|
@@ -1,15 +1,14 @@
|
|
1
1
|
module DataMigrate
|
2
|
-
class DataSchemaMigration
|
3
|
-
|
2
|
+
class DataSchemaMigration
|
4
3
|
class << self
|
5
|
-
|
6
|
-
ActiveRecord::Base.table_name_prefix + 'data_migrations' + ActiveRecord::Base.table_name_suffix
|
7
|
-
end
|
4
|
+
delegate :table_name, :primary_key, :create_table, :normalized_versions, :create, :create!, :table_exists?, :exists?, :where, to: :instance
|
8
5
|
|
9
|
-
def
|
10
|
-
|
6
|
+
def instance
|
7
|
+
@instance ||= Class.new(::ActiveRecord::SchemaMigration) do
|
8
|
+
define_singleton_method(:table_name) { ActiveRecord::Base.table_name_prefix + 'data_migrations' + ActiveRecord::Base.table_name_suffix }
|
9
|
+
define_singleton_method(:primary_key) { "version" }
|
10
|
+
end
|
11
11
|
end
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
15
|
-
|
data/lib/data_migrate/version.rb
CHANGED
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: 8.
|
4
|
+
version: 8.3.0
|
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: 2022-
|
13
|
+
date: 2022-12-07 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activerecord
|
@@ -291,7 +291,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
291
291
|
- !ruby/object:Gem::Version
|
292
292
|
version: '0'
|
293
293
|
requirements: []
|
294
|
-
rubygems_version: 3.3.
|
294
|
+
rubygems_version: 3.3.26
|
295
295
|
signing_key:
|
296
296
|
specification_version: 4
|
297
297
|
summary: Rake tasks to migrate data alongside schema changes.
|