dbagent 3.0.0 → 3.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/README.md +2 -0
- data/lib/db_agent/db_handler/postgresql.rb +1 -1
- data/lib/db_agent/seeder.rb +17 -0
- data/lib/db_agent/version.rb +6 -0
- data/lib/db_agent/webapp.rb +2 -2
- data/lib/db_agent.rb +1 -3
- metadata +26 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55a5d65d0b652b002041aa6dd13f4c628f41e5a0467a5066d24943e8a20992e6
|
4
|
+
data.tar.gz: f260eddc19e7680a0eb8f8b601002f28a28126e301356af63c90ab5528ce52ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9fa72a760b5632e1d8f14d1b98b0042b17e37085f1e7da1d40d2c8f933b180a758d34aeb3a795823e7468838203e00478283b5e33b778be0b93191b1f976d912
|
7
|
+
data.tar.gz: f8ee68d78cd1e647a9f6d9df9361d2d4a27522c34c229f6fd434ae042da35ce6f838a051b0ec9d1b61385f134be6916889d2741f7837801eb1e71f454f071a0e
|
data/README.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
[](https://github.com/enspirit/dbagent/actions/workflows/integration.yml)
|
2
|
+
|
1
3
|
# DbAgent, a ruby tool to migrate, spy and seed relational databases
|
2
4
|
|
3
5
|
DbAgent helps managing a relational database lifecyle through three main tools:
|
data/lib/db_agent/seeder.rb
CHANGED
@@ -8,6 +8,8 @@ module DbAgent
|
|
8
8
|
|
9
9
|
def install(from)
|
10
10
|
handler.sequel_db.transaction do
|
11
|
+
before_seeding!
|
12
|
+
|
11
13
|
folder = handler.data_folder/from
|
12
14
|
|
13
15
|
# load files in order
|
@@ -26,6 +28,8 @@ module DbAgent
|
|
26
28
|
file = pairs[name]
|
27
29
|
handler.sequel_db[name.to_sym].multi_insert(file.load)
|
28
30
|
end
|
31
|
+
|
32
|
+
after_seeding!(folder)
|
29
33
|
end
|
30
34
|
end
|
31
35
|
|
@@ -86,6 +90,19 @@ module DbAgent
|
|
86
90
|
|
87
91
|
private
|
88
92
|
|
93
|
+
def before_seeding!
|
94
|
+
file = handler.data_folder/"before_seeding.sql"
|
95
|
+
return unless file.exists?
|
96
|
+
|
97
|
+
handler.sequel_db.execute(file.read)
|
98
|
+
end
|
99
|
+
|
100
|
+
def after_seeding!(folder)
|
101
|
+
file = folder/"after_seeding.sql"
|
102
|
+
handler.sequel_db.execute(file.read) if file.exists?
|
103
|
+
after_seeding!(folder.parent) unless folder == handler.data_folder
|
104
|
+
end
|
105
|
+
|
89
106
|
def merged_data(from)
|
90
107
|
folder = handler.data_folder/from
|
91
108
|
data = {}
|
data/lib/db_agent/webapp.rb
CHANGED
@@ -21,13 +21,13 @@ module DbAgent
|
|
21
21
|
end
|
22
22
|
|
23
23
|
post '/seeds/install' do
|
24
|
-
Seeder.new(settings.db_handler
|
24
|
+
Seeder.new(settings.db_handler).install(request["id"])
|
25
25
|
"ok"
|
26
26
|
end
|
27
27
|
|
28
28
|
post '/seeds/flush' do
|
29
29
|
seed_name = request["id"]
|
30
|
-
Seeder.new(settings.db_handler
|
30
|
+
Seeder.new(settings.db_handler).flush(request["id"])
|
31
31
|
"ok"
|
32
32
|
end
|
33
33
|
|
data/lib/db_agent.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dbagent
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bernard Lambeau
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-06-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sequel
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '0.
|
89
|
+
version: '0.20'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '0.
|
96
|
+
version: '0.20'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: net-ping
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -115,6 +115,9 @@ dependencies:
|
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '2'
|
118
|
+
- - ">="
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: 2.7.1
|
118
121
|
type: :runtime
|
119
122
|
prerelease: false
|
120
123
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -122,6 +125,23 @@ dependencies:
|
|
122
125
|
- - "~>"
|
123
126
|
- !ruby/object:Gem::Version
|
124
127
|
version: '2'
|
128
|
+
- - ">="
|
129
|
+
- !ruby/object:Gem::Version
|
130
|
+
version: 2.7.1
|
131
|
+
- !ruby/object:Gem::Dependency
|
132
|
+
name: thin
|
133
|
+
requirement: !ruby/object:Gem::Requirement
|
134
|
+
requirements:
|
135
|
+
- - "~>"
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '1'
|
138
|
+
type: :runtime
|
139
|
+
prerelease: false
|
140
|
+
version_requirements: !ruby/object:Gem::Requirement
|
141
|
+
requirements:
|
142
|
+
- - "~>"
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: '1'
|
125
145
|
- !ruby/object:Gem::Dependency
|
126
146
|
name: bundler
|
127
147
|
requirement: !ruby/object:Gem::Requirement
|
@@ -181,6 +201,7 @@ files:
|
|
181
201
|
- lib/db_agent/db_handler/postgresql.rb
|
182
202
|
- lib/db_agent/seeder.rb
|
183
203
|
- lib/db_agent/table_orderer.rb
|
204
|
+
- lib/db_agent/version.rb
|
184
205
|
- lib/db_agent/viewpoint.rb
|
185
206
|
- lib/db_agent/viewpoint/base.rb
|
186
207
|
- lib/db_agent/viewpoint/delegate.rb
|
@@ -208,7 +229,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
208
229
|
- !ruby/object:Gem::Version
|
209
230
|
version: '0'
|
210
231
|
requirements: []
|
211
|
-
rubygems_version: 3.
|
232
|
+
rubygems_version: 3.1.4
|
212
233
|
signing_key:
|
213
234
|
specification_version: 4
|
214
235
|
summary: A tool to migrate, spy and seed relational databases.
|