pg_db_helper 0.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d38d2b29ab312298567d0f0026e830c083fbd7f6
4
+ data.tar.gz: 1563113cd7c354f79b3fb2cb636a292573fd743a
5
+ SHA512:
6
+ metadata.gz: 623b877a734e032613fcec1b3014e196cea41a4f09dd0d3f17ae9bce1fbacaf5ba47a50805aa4b7af56f623db51f88440d902a41cb1bcb806ce8186c44a8893b
7
+ data.tar.gz: 2ad582b2bf6510f7a291670b64ac0e7905e854cb3c49aa8633fce5b1466660acef2c774dfb92f19b3075d1342c15b5f8ec749e45866c4303759251d0af84174c
data/bin/izi_dump ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative File.join(%w[.. lib dump.rb])
3
+
4
+ DbDump.run(ARGV)
data/bin/izi_fork ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative File.join(%w[.. lib fork.rb])
3
+
4
+ DbFork.run(ARGV)
data/bin/izi_load ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative File.join(%w[.. lib load.rb])
3
+
4
+ DbLoad.run(ARGV)
data/config.yml.sample ADDED
@@ -0,0 +1,10 @@
1
+ db_yml_file: "config/database.yml"
2
+ db_sample_file: "config/database.yml.sample"
3
+ dump_store: "~/www/db/"
4
+
5
+ default_db:
6
+ database: nil
7
+ host: "localhost"
8
+ port: "5432"
9
+ username: "dev"
10
+ password: "pass"
@@ -0,0 +1,32 @@
1
+ require 'yaml'
2
+
3
+ def keys_to_sym src
4
+ if src.is_a? Array
5
+ src.map {|item| keys_to_sym item}
6
+ elsif src.is_a? Hash
7
+ Hash[src.map {|k, v| ["#{k}".to_sym, keys_to_sym(v)]}]
8
+ else
9
+ src
10
+ end
11
+ end
12
+ def keys_to_str src
13
+ if src.is_a? Array
14
+ src.map {|item| keys_to_str item}
15
+ elsif src.is_a? Hash
16
+ Hash[src.map {|k, v| [k.to_s, keys_to_str(v)]}]
17
+ else
18
+ src
19
+ end
20
+ end
21
+ def get_hash_file filename
22
+ if File.exist?(filename)
23
+ keys_to_sym YAML.load_file(filename)
24
+ else
25
+ nil
26
+ end
27
+ end
28
+ def put_hash_file filename, props
29
+ File.open(filename, 'w') do |f|
30
+ f.write((keys_to_str props).to_yaml)
31
+ end
32
+ end
data/lib/db_helper.rb ADDED
@@ -0,0 +1,396 @@
1
+ require 'rubygems'
2
+ require 'fileutils'
3
+ require 'optparse'
4
+ require 'yaml'
5
+ require 'pp'
6
+ require_relative 'config_worker'
7
+
8
+ class DbHelper
9
+ def self.get_configs()
10
+ @working_dir = Dir.pwd
11
+ @sysdir = File.expand_path(File.join(File.dirname(__FILE__), '..'))
12
+ unless File.exists?(File.join(@sysdir, 'config.yml'))
13
+ p "No config file. Creating default one."
14
+ FileUtils.cp(File.join(@sysdir, 'config.yml.sample'), File.join(@sysdir, 'config.yml'))
15
+ p "Please correct your config file at:"
16
+ p "#{File.join(@sysdir, 'config.yml')}"
17
+ end
18
+
19
+ @config = get_hash_file File.join(@sysdir, 'config.yml')
20
+
21
+ @db_yml_file = @config[:db_yml_file]
22
+ @db_sample_file = @config[:db_sample_file]
23
+ @dump_store = @config[:dump_store]
24
+
25
+ @db_config = get_hash_file File.join(@working_dir, @db_yml_file)
26
+ # pp @config
27
+ # pp @db_config
28
+ end
29
+
30
+ def self.save_db_config!()
31
+ put_hash_file File.join(@working_dir, @db_yml_file), @db_config
32
+ end
33
+
34
+ def self.dump!(options={})
35
+ @db_config.keys.each do |env|
36
+ if ((options[:branch]==:all) || env.to_s.start_with?(options[:branch].to_s))
37
+ param = @db_config[env]
38
+ dumpname = options[:file]
39
+ dumpname = File.join([@dump_store, dumpname]) unless options[:relative]
40
+ p "dump <#{env}> to file: #{dumpname}"
41
+ # pp param
42
+ system "
43
+ PGPASSWORD='#{param[:password]}'
44
+ pg_dump -U #{param[:username]} -h #{param[:host]} #{param[:database]} > #{dumpname}
45
+ "
46
+ end
47
+ end
48
+ end
49
+
50
+ def self.fork!(options={})
51
+ dumps = {}
52
+ @db_config.keys.each do |env|
53
+ if ((options[:branch]==:all) || env.to_s.start_with?(options[:branch].to_s))
54
+ param = @db_config[env]
55
+ timestamp = Time.now.strftime('%Y%m%dT%H%M%S%z')
56
+ dumps[env] = File.join([@dump_store, "#{param[:database]}_#{timestamp}.sql"])
57
+ p "dump <#{env}> to file: #{dumps[env]}"
58
+ # pp param
59
+ system "
60
+ PGPASSWORD='#{param[:password]}'
61
+ pg_dump -U #{param[:username]} -h #{param[:host]} #{param[:database]} > #{dumps[env]}
62
+ "
63
+ new_db_name = options[:name] + param[:database].gsub(/.+?(_db)?(_test)?(_db)?/i, '\1\2\3')
64
+ @db_config[env][:database] = new_db_name
65
+
66
+ end
67
+ end
68
+
69
+ p "All backups created!"
70
+ save_db_config!
71
+
72
+ @db_config.keys.each do |env|
73
+ if ((options[:branch]==:all) || env.to_s.start_with?(options[:branch].to_s))
74
+ param = @db_config[env]
75
+ p "load <#{env}> from file: #{dumps[env]}"
76
+ # pp param
77
+ system "RAILS_ENV=#{env} bundle exec rake db:drop"
78
+ system "RAILS_ENV=#{env} bundle exec rake db:create"
79
+ system "RAILS_ENV=#{env} bundle exec rake db:migrate"
80
+ system "
81
+ PGPASSWORD='#{param[:password]}'
82
+ psql -U #{param[:username]} -h #{param[:host]} #{param[:database]} < #{dumps[env]}
83
+ "
84
+ end
85
+ end
86
+ end
87
+
88
+ def self.load!(options={})
89
+ @db_config.keys.each do |env|
90
+ if ((options[:branch]==:all) || env.to_s.start_with?(options[:branch].to_s))
91
+ param = @db_config[env]
92
+ dumpname = options[:file]
93
+ dumpname = File.join([@dump_store, dumpname]) unless options[:relative]
94
+ p "load <#{env}> from file: #{dumpname}"
95
+ # pp param
96
+ if options[:clean]
97
+ system "bundle exec rake db:drop"
98
+ system "bundle exec rake db:create"
99
+ system "bundle exec rake db:migrate"
100
+ end
101
+ system "
102
+ PGPASSWORD='#{param[:password]}'
103
+ psql -U #{param[:username]} -h #{param[:host]} #{param[:database]} < #{dumpname}
104
+ "
105
+ end
106
+ end
107
+ end
108
+
109
+ end
110
+ # @options = Parser.new do |p|
111
+ # p.banner = "This is a db helper, for usage see below"
112
+ # p.version = "db helper 0.0 alpha"
113
+ # # p.option :severity, "set severity", :default => 4, :value_in_set => [4,5,6,7,8]
114
+ # # p.option :verbose, "enable verbose output"
115
+ # # p.option :mutation, "set mutation", :default => "MightyMutation", :value_matches => /Mutation/
116
+ # # p.option :plus_selection, "use plus-selection if set", :default => true
117
+ # # p.option :selection, "selection used", :default => "BestSelection", :short => "l"
118
+ # # p.option :chance, "set mutation chance", :default => 0.8, :value_satisfies => lambda {|x| x >= 0.0 && x <= 1.0}
119
+ # p.option :dump, "dump app DB to dumpstore folder", default: ''
120
+ # p.option :load, "load DB from dump file stored in dumpstore folder", default: ''
121
+ # p.option :migrate, "backup DB, drop, migrate and restore it from backup file stored in dumpstore folder (only development)", default: ''
122
+ # p.option :fork, "forks DB from current and dump it", short: 'F', default: ''
123
+ # p.option :apply, "apply DB from dump", default: ''
124
+ # p.option :file, "name of dump DB from dumpstore folder", default: ''
125
+ # p.option :bundle, "bundle update & push to git", default: ''
126
+ # p.option :api, "sattelite api for bundle update", default: ''
127
+ # p.option :gem, "gem name for bundle update", default: ''
128
+ # end.process!
129
+
130
+ # def get_dumpname(db_name = nil, env)
131
+ # log @options
132
+ # log @options[:file]
133
+ # if @options[:file]
134
+ # File.join(@dump_store, @options[:file])
135
+ # else
136
+ # File.join(@dump_store, "dump_#{db_name}_#{env}.db")
137
+ # end
138
+ # end
139
+
140
+ # def current_time
141
+ # Time.now.getlocal.strftime('%H:%M:%S')
142
+ # end
143
+
144
+ # def log(st)
145
+ # STDOUT << "#{current_time} #{st}\n"
146
+ # end
147
+
148
+ # def pparams(param)
149
+ # (param.map{|k, v| "#{k}: #{v}, " unless k.to_sym==:password}.join()).chomp(', ').gsub(", ", "\n#{' '*5}- ")
150
+ # end
151
+
152
+ # def keys_to_sym src
153
+ # dst = {}
154
+ # src.each do |k, v|
155
+ # dst[k.to_sym] = v.is_a?(Hash) ? keys_to_sym(v) : v
156
+ # end
157
+ # dst
158
+ # end
159
+ # def keys_to_str src
160
+ # dst = {}
161
+ # src.each do |k, v|
162
+ # dst[k.to_s] = v.is_a?(Hash) ? keys_to_str(v) : v
163
+ # end
164
+ # dst
165
+ # end
166
+
167
+ # def get_db_prop filename
168
+ # if File.exist?(filename)
169
+ # keys_to_sym YAML.load_file(filename)
170
+ # else
171
+ # @db_yml_sample_hash
172
+ # end
173
+ # end
174
+
175
+ # def put_db_prop filename, props
176
+ # File.open(filename, 'w') do |f|
177
+ # f.write((keys_to_str props).to_yaml)
178
+ # end
179
+ # end
180
+
181
+ # def dump_db(param = {}, dumpname)
182
+ # # dumpname = get_dumpname(param[:database], environment)
183
+ # param = @default_params.merge(param)
184
+ # log "dump db: \n#{pparams(param)} \nto >>> #{dumpname}"
185
+
186
+ # system "PGPASSFILE=<(echo #{param[:host]}:#{param[:port]}:#{param[:database]}:#{param[:username]}:#{param[:password]})
187
+ # pg_dump -U #{param[:username]} -h #{param[:host]} #{param[:database]} > #{dumpname}"
188
+
189
+ # log "dump finished"
190
+ # end
191
+
192
+ # def load_db(param = {}, dumpname)
193
+ # param = @default_params.merge(param)
194
+ # log "load db: from >>> #{dumpname}\n - With params:\n#{pparams(param)}"
195
+
196
+ # system "PGPASSFILE=<(echo #{param[:host]}:#{param[:port]}:#{param[:database]}:#{param[:username]}:#{param[:password]})
197
+ # psql -U #{param[:username]} -h #{param[:host]} #{param[:database]} < #{dumpname}"
198
+
199
+ # log "load finished"
200
+ # end
201
+
202
+ # def load_prop(env=:development)
203
+ # all_prop = get_db_prop @db_yml_file
204
+ # all_prop[env]
205
+ # end
206
+
207
+ # def reset_migrate
208
+ # param = load_prop
209
+ # dumpname = File.join(@dump_store, "dump_#{param[:database]}_t#{Time.now.to_i}.db")
210
+ # dump_db param, dumpname
211
+ # system 'rake db:drop'
212
+ # log 'db dropped'
213
+ # system 'rake db:create'
214
+ # log 'new db created'
215
+ # system 'rake db:migrate'
216
+ # log 'db migrated'
217
+ # load_db param, dumpname
218
+ # log 'stored db dump removed'
219
+ # system "rm #{dumpname}"
220
+ # log 'stored db dump removed'
221
+ # end
222
+
223
+ # def fork_db database
224
+ # # new_prop, old_prop = change_db_config("database"=> "#{@options[:fork]}")
225
+ # full_params = get_db_prop @db_yml_file
226
+
227
+ # dumpnames = {}
228
+ # full_params.each do |env, param|
229
+ # if env.to_s =~ /dev/
230
+ # dumpname = File.join(@dump_store, "dump_#{param[:database]}_t#{Time.now.to_i}.db")
231
+ # dumpnames[env] = dumpname
232
+ # dump_db param, dumpname
233
+ # full_params[env][:database] = database + full_params[env][:database].gsub(/.+?(_db)?(_test)?(_db)?/i, '\1\2\3')
234
+ # end
235
+ # end
236
+
237
+ # put_db_prop @db_yml_file, full_params
238
+
239
+ # full_params.each do |env, param|
240
+ # if env.to_s =~ /dev/
241
+ # system "rake db:drop RAILS_ENV=#{env}"
242
+ # log 'db dropped'
243
+ # system "rake db:create RAILS_ENV=#{env}"
244
+ # log 'new db created'
245
+ # system "rake db:migrate RAILS_ENV=#{env}"
246
+ # log 'db migrated'
247
+ # load_db param, dumpnames[env]
248
+ # log 'stored db dump removed'
249
+ # system "rm #{dumpnames[env]}"
250
+ # log 'stored db dump removed'
251
+ # end
252
+ # end
253
+ # log 'db fork created'
254
+ # end
255
+
256
+ # def env?(prop)
257
+ # env = %r[(^|\W)(#{prop}\w*)].match(@db_yml_sample_hash.keys().join(', '))
258
+ # env = env[2].to_sym if env
259
+ # env
260
+ # end
261
+
262
+ # def dump_db1(dump_store = '~/www/db/dump_')
263
+ # log 'Dump app DB...'
264
+ # if File.exist?(@db_yml_file)
265
+ # props = get_db_prop @db_yml_file
266
+ # if props.is_a?(Hash) && (props.size > 0)
267
+ # props.each_pair do |env, param|
268
+ # if !!(@options[:dump].index env) || !!(@options[:dump].index 'all')
269
+ # log "environment - #{env}"
270
+ # log "dump - '#{param['database']}' to '#{dump_store}#{param['database']}_#{env}.db'"
271
+ # system "PGPASSFILE=<(echo #{param['host']}:#{param['port']}:#{param['database']}:#{param['username']}:#{param['password']}) pg_dump -U #{param['username']} -h #{param['host']} #{param['database']} > #{dump_store}#{param['database']}_#{env}.db"
272
+ # # pg_dump -U dev -h localhost -W force_db > ../dump
273
+ # # psql -U dev -h localhost -W force_db < ../dump
274
+ # end
275
+ # end
276
+ # log "dump finished"
277
+ # else
278
+ # log 'ERROR - DB not found, please dump it by yourself!'
279
+ # end
280
+ # else
281
+ # log 'ERROR - database.yml not found!'
282
+ # end
283
+
284
+ # end
285
+
286
+ # def load_db1(dump_store = '~/www/db/dump_')
287
+ # log 'Load DB from dump...'
288
+ # if File.exist?(@db_yml_file)
289
+ # props = get_db_prop @db_yml_file
290
+ # if props.is_a?(Hash) && (props.size > 0)
291
+ # props.each_pair do |env, param|
292
+ # if !!(@options[:dump].index env) || !!(@options[:dump].index 'all')
293
+ # log "environment - #{env}"
294
+ # log "load - '#{param['database']}' from '#{dump_store}#{param['database']}_#{env}.db'"
295
+ # if File.exist?("#{dump_store}#{param['database']}_#{env}.db")
296
+ # system "PGPASSFILE=<(echo #{param['host']}:#{param['port']}:#{param['database']}:#{param['username']}:#{param['password']}) psql -U #{param['username']} -h #{param['host']} #{param['database']} < #{dump_store}#{param['database']}_#{env}.db"
297
+ # else
298
+ # log "ERROR - dump file not found, please make sure file '#{dump_store}#{param['database']}_#{env}.db' exists!"
299
+ # end
300
+ # # pg_dump -U dev -h localhost -W force_db > ../dump
301
+ # # psql -U dev -h localhost -W force_db < ../dump
302
+ # end
303
+ # end
304
+ # log "dump finished"
305
+ # else
306
+ # log 'ERROR - DB not found, please dump it by yourself!'
307
+ # end
308
+ # end
309
+ # end
310
+
311
+ # def sattelites apiV=nil
312
+ # if apiV
313
+ # Dir.glob(File.expand_path("~/www/api_v#{apiV}/*/"))
314
+ # else
315
+ # Dir.glob(File.expand_path('~/www/api_v*/*/'))
316
+ # end
317
+ # end
318
+
319
+ # def bundleUpdate sats=[], gemName=nil
320
+ # log 'Bundle update...'
321
+ # errors = []
322
+ # sats.each_with_index do |sat, index|
323
+ # prefix = "cd #{sat}"
324
+ # cmds = [
325
+ # "git pull origin master",
326
+ # ["bundle update", gemName].join(' '),
327
+ # "git add Gemfile Gemfile.lock",
328
+ # "git commit -m 'bundle update #{gemName}'",
329
+ # "git push origin master"
330
+ # ]
331
+ # if system prefix
332
+ # log "#{index}/#{sats.size} work on #{sat}"
333
+ # cmds.each do |cmd|
334
+ # if system [prefix, cmd].join(' && ')
335
+ # log "#{cmd} >>> SUCCESS"
336
+ # else
337
+ # log "#{cmd} >>> FAILED"
338
+ # errors << [sat, cmd]
339
+ # log "!!!!!!!!!! FAILED #{sat}"
340
+ # break
341
+ # end
342
+ # end
343
+ # end
344
+ # end
345
+ # if errors.size > 0
346
+ # log "!!!! TOTAL ERRORS: #{errors.size}"
347
+ # errors.each_with_index do |err, index|
348
+ # log "FAILED: #{err[1]} on #{err[0]}"
349
+ # end
350
+ # end
351
+ # end
352
+
353
+
354
+
355
+
356
+
357
+ # def magick
358
+ # if @options[:dump].size > 0
359
+ # if env = env?(@options[:dump])
360
+ # param = load_prop env
361
+ # dump_db param, get_dumpname(param[:database], env)
362
+ # end
363
+ # elsif @options[:load].size > 0
364
+ # if env = env?(@options[:load])
365
+ # param = load_prop env
366
+ # load_db param, get_dumpname(param[:database], env)
367
+ # end
368
+ # elsif @options[:migrate].size > 0
369
+ # reset_migrate
370
+ # elsif @options[:fork].size > 0
371
+ # fork_db @options[:fork]
372
+ # elsif @options[:bundle].size > 0
373
+ # api = (@options[:api].size) > 0 ? @options[:api] : nil
374
+ # gemName = (@options[:gem].size > 0) ? @options[:gem] : nil
375
+ # sats = sattelites(api)
376
+ # bundleUpdate sats, gemName
377
+ # end
378
+ # end
379
+
380
+ # magick()
381
+ # # dump_db() if @options[:dump]
382
+ # # load_db() if @options[:load]
383
+ # # reset_migrate() if @options[:migrate]
384
+ # # fork_db() if @options[:fork]
385
+
386
+ # # app.add_import 'some/other/file.rake'
387
+ # # app.load_rakefile
388
+
389
+ # # log db_yml_sample_hash.inspect
390
+ # # log File.exist?(@db_yml_file)
391
+ # # log File.exist?(@db_sample_file)
392
+
393
+ # # system 'rake db:drop'
394
+
395
+
396
+
data/lib/dump.rb ADDED
@@ -0,0 +1,42 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative 'db_helper'
3
+
4
+ class DbDump < DbHelper
5
+
6
+ def self.run(args=[])
7
+ options = {
8
+ relative: false,
9
+ branch: :dev
10
+ }
11
+ opt_parser = OptionParser.new do |opts|
12
+ opts.banner = "Usage: .. dump [options]"
13
+ opts.separator ""
14
+ opts.separator "Specific options:"
15
+
16
+ opts.on("-f", "--file [database name]", "Set output file for database dump file.") do |arg|
17
+ options[:file] = arg
18
+ end
19
+
20
+ opts.on("-b", "--branch [dev|test|stag|prod|all]", "Set branch for dumping, default: development.") do |arg|
21
+ arg = arg.downcase.to_sym
22
+ options[:branch] = arg if [:dev, :test, :prod, :stag, :all].include?(arg)
23
+ end
24
+
25
+ opts.on("-r", "--relative", "Set relative position of database dump file, if no option - used db store folder.") do |arg|
26
+ options[:relative] = true
27
+ end
28
+
29
+ opts.on_tail("-h", "--help", "Show this message") do
30
+ puts opts
31
+ exit
32
+ end
33
+ end
34
+
35
+ opt_parser.parse!(args)
36
+ get_configs()
37
+ dump!(options)
38
+
39
+ # pp options
40
+ end
41
+ end
42
+ # DbDump.run(ARGV)
data/lib/fork.rb ADDED
@@ -0,0 +1,38 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative 'db_helper'
3
+
4
+ class DbFork < DbHelper
5
+
6
+ def self.run(args=[])
7
+ options = {
8
+ relative: false,
9
+ branch: :dev
10
+ }
11
+ opt_parser = OptionParser.new do |opts|
12
+ opts.banner = "Usage: .. fork [options]"
13
+ opts.separator ""
14
+ opts.separator "Specific options:"
15
+
16
+ opts.on("-b", "--branch [dev|test|stag|prod|all]", "Set branch for fork, default: development.") do |arg|
17
+ arg = arg.downcase.to_sym
18
+ options[:branch] = arg if [:dev, :test, :prod, :stag, :all].include?(arg)
19
+ end
20
+
21
+ opts.on("-n [new name]", "--name [new name]", "Set new database name.") do |arg|
22
+ options[:name] = arg.split('.')[0]
23
+ end
24
+
25
+ opts.on_tail("-h", "--help", "Show this message") do
26
+ puts opts
27
+ exit
28
+ end
29
+ end
30
+
31
+ opt_parser.parse!(args)
32
+ get_configs()
33
+ fork!(options)
34
+
35
+ # pp options
36
+ end
37
+ end
38
+ # DbDump.run(ARGV)
data/lib/load.rb ADDED
@@ -0,0 +1,49 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative 'db_helper'
3
+
4
+ class DbLoad < DbHelper
5
+
6
+ def self.run(args=[])
7
+ options = {
8
+ relative: false,
9
+ clean: false,
10
+ reset: false,
11
+ branch: :dev
12
+ }
13
+ opt_parser = OptionParser.new do |opts|
14
+ opts.banner = "Usage: .. load [options]"
15
+ opts.separator ""
16
+ opts.separator "Specific options:"
17
+
18
+ opts.on("-f", "--file [database name]", "Set output file for database dump file.") do |arg|
19
+ options[:file] = arg
20
+ end
21
+
22
+ opts.on("-b", "--branch [dev|test|stag|prod|all]", "Set branch for load, default: development.") do |arg|
23
+ arg = arg.downcase.to_sym
24
+ options[:branch] = arg if [:dev, :test, :prod, :stag, :all].include?(arg)
25
+ end
26
+
27
+ opts.on("-r", "--relative", "Set relative position of database dump file, if no option - used db store folder.") do |arg|
28
+ options[:relative] = true
29
+ end
30
+
31
+ opts.on("-c", "--clean", "Clean db before load (drop>create>migrate>load)") do |arg|
32
+ options[:clean] = true
33
+ end
34
+
35
+ opts.on_tail("-h", "--help", "Show this message") do
36
+ puts opts
37
+ exit
38
+ end
39
+ end
40
+
41
+ opt_parser.parse!(args)
42
+ get_configs()
43
+ load!(options)
44
+
45
+ # pp options
46
+ end
47
+ end
48
+
49
+ # DbLoad.run(ARGV)
metadata ADDED
@@ -0,0 +1,55 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pg_db_helper
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.1'
5
+ platform: ruby
6
+ authors:
7
+ - Izik AJ
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-11-19 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Easy dump and load PostgreSQL database.
14
+ email: izikaj@gmail.com
15
+ executables:
16
+ - izi_load
17
+ - izi_dump
18
+ - izi_fork
19
+ extensions: []
20
+ extra_rdoc_files: []
21
+ files:
22
+ - bin/izi_dump
23
+ - bin/izi_fork
24
+ - bin/izi_load
25
+ - config.yml.sample
26
+ - lib/config_worker.rb
27
+ - lib/db_helper.rb
28
+ - lib/dump.rb
29
+ - lib/fork.rb
30
+ - lib/load.rb
31
+ homepage: https://github.com/IzikAJ/pg_db_helper
32
+ licenses:
33
+ - MIT
34
+ metadata: {}
35
+ post_install_message:
36
+ rdoc_options: []
37
+ require_paths:
38
+ - lib
39
+ required_ruby_version: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ required_rubygems_version: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
49
+ requirements: []
50
+ rubyforge_project:
51
+ rubygems_version: 2.4.3
52
+ signing_key:
53
+ specification_version: 4
54
+ summary: Just a simple Postgre database tool.
55
+ test_files: []