data_migrate 2.1.0 → 2.2.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 +4 -0
- data/README.md +17 -0
- data/lib/capistrano/data_migrate.rb +3 -0
- data/lib/capistrano/data_migrate/migrate.rb +41 -0
- data/lib/data_migrate/version.rb +1 -1
- metadata +10 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6983740ef87afeb4aa83f557c1f42e5e4f062223
|
4
|
+
data.tar.gz: 91e0c313ec9ec3fed6b3483a94c35fefac8789f7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: abdb401fd44de7e22a1cb5b310cea84b147d95a4790f6b2b7dc6e33e878d9f42c8d94a4e73f7759d06550a2814f3133510c6a4bcfd43e6761366f2a045780775
|
7
|
+
data.tar.gz: 69c8dcef142680e1109d75ee2cced9b5179bb5dc6ba8216a0c62fca6926e6f63023644f98885981a372c065c9265162985874f5dbc989480d9a530c381fed945
|
data/Changelog.md
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
Data Migrate
|
2
2
|
====
|
3
3
|
|
4
|
+
- [](https://rubygems.org/gems/data_migrate)
|
5
|
+
- [](http://opensource.org/licenses/MIT)
|
6
|
+
|
4
7
|
Run data migrations alongside schema migrations.
|
5
8
|
|
6
9
|
Data migrations are stored in db/data. They act like schema
|
@@ -154,6 +157,20 @@ Going down instead of up would be the opposite.
|
|
154
157
|
|
155
158
|
`rake db:migrate:status:with_data` provides and additional column to indicate which type of migration.
|
156
159
|
|
160
|
+
Capistrano Support
|
161
|
+
------------------
|
162
|
+
|
163
|
+
The gem comes with a capistrano task that can be used instead of `capistrano/rails/migrations`.
|
164
|
+
|
165
|
+
Just add this line to your Capfile:
|
166
|
+
|
167
|
+
```ruby
|
168
|
+
require 'capistrano/data_migrate'
|
169
|
+
```
|
170
|
+
|
171
|
+
From now on capistrano will run `rake db:migrate:with_data` in every deploy.
|
172
|
+
|
173
|
+
|
157
174
|
Thanks
|
158
175
|
------
|
159
176
|
[Andrew J Vargo](http://github.com/ajvargo) Andrew was the original creator and maintainer of this project!
|
@@ -0,0 +1,41 @@
|
|
1
|
+
namespace :deploy do
|
2
|
+
|
3
|
+
desc 'Runs rake data:migrate if migrations are set'
|
4
|
+
task :migrate => [:set_rails_env] do
|
5
|
+
on fetch(:migration_servers) do
|
6
|
+
conditionally_migrate = fetch(:conditionally_migrate)
|
7
|
+
info '[deploy:migrate] Checking changes in db/migrate or db/data' if conditionally_migrate
|
8
|
+
|
9
|
+
if conditionally_migrate && (
|
10
|
+
test("diff -q #{release_path}/db/migrate #{current_path}/db/migrate") ||
|
11
|
+
test("diff -q #{release_path}/db/data #{current_path}/db/data")
|
12
|
+
)
|
13
|
+
info '[deploy:migrate] Skip `deploy:migrate` (nothing changed in db/migrate or db/data)'
|
14
|
+
else
|
15
|
+
info '[deploy:migrate] Run `rake db:migrate:with_data`'
|
16
|
+
invoke :'deploy:migrating_with_data'
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
desc 'Runs rake db:migrate:with_data'
|
22
|
+
task migrating_with_data: [:set_rails_env] do
|
23
|
+
on fetch(:migration_servers) do
|
24
|
+
within release_path do
|
25
|
+
with rails_env: fetch(:rails_env) do
|
26
|
+
execute :rake, 'db:migrate:with_data'
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
after 'deploy:updated', 'deploy:migrate'
|
33
|
+
end
|
34
|
+
|
35
|
+
namespace :load do
|
36
|
+
task :defaults do
|
37
|
+
set :conditionally_migrate, fetch(:conditionally_migrate, false)
|
38
|
+
set :migration_role, fetch(:migration_role, :db)
|
39
|
+
set :migration_servers, -> { primary(fetch(:migration_role)) }
|
40
|
+
end
|
41
|
+
end
|
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: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew J Vargo
|
@@ -9,20 +9,20 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-
|
12
|
+
date: 2016-08-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- -
|
18
|
+
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '4.0'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- -
|
25
|
+
- - ">="
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '4.0'
|
28
28
|
description: Rake tasks to migrate data alongside schema changes.
|
@@ -33,13 +33,15 @@ executables: []
|
|
33
33
|
extensions: []
|
34
34
|
extra_rdoc_files: []
|
35
35
|
files:
|
36
|
-
- .gitignore
|
36
|
+
- ".gitignore"
|
37
37
|
- Changelog.md
|
38
38
|
- Gemfile
|
39
39
|
- LICENSE
|
40
40
|
- README.md
|
41
41
|
- Rakefile
|
42
42
|
- data_migrate.gemspec
|
43
|
+
- lib/capistrano/data_migrate.rb
|
44
|
+
- lib/capistrano/data_migrate/migrate.rb
|
43
45
|
- lib/data_migrate.rb
|
44
46
|
- lib/data_migrate/data_migrator.rb
|
45
47
|
- lib/data_migrate/data_schema_migration.rb
|
@@ -62,17 +64,17 @@ require_paths:
|
|
62
64
|
- lib
|
63
65
|
required_ruby_version: !ruby/object:Gem::Requirement
|
64
66
|
requirements:
|
65
|
-
- -
|
67
|
+
- - ">="
|
66
68
|
- !ruby/object:Gem::Version
|
67
69
|
version: '0'
|
68
70
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
69
71
|
requirements:
|
70
|
-
- -
|
72
|
+
- - ">="
|
71
73
|
- !ruby/object:Gem::Version
|
72
74
|
version: '0'
|
73
75
|
requirements: []
|
74
76
|
rubyforge_project: data_migrate
|
75
|
-
rubygems_version: 2.
|
77
|
+
rubygems_version: 2.2.3
|
76
78
|
signing_key:
|
77
79
|
specification_version: 4
|
78
80
|
summary: Rake tasks to migrate data alongside schema changes.
|