pg_export 0.7.4 → 1.0.0.rc2

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.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.travis.yml +6 -3
  4. data/CHANGELOG.md +18 -0
  5. data/README.md +14 -11
  6. data/bin/pg_export +72 -16
  7. data/lib/pg_export/configuration.rb +12 -8
  8. data/lib/pg_export/container.rb +17 -8
  9. data/lib/pg_export/import.rb +1 -1
  10. data/lib/pg_export/lib/pg_export/factories/ftp_gateway_factory.rb +22 -0
  11. data/lib/pg_export/lib/pg_export/factories/ssh_gateway_factory.rb +22 -0
  12. data/lib/pg_export/lib/pg_export/{adapters/ftp_adapter.rb → gateways/ftp.rb} +11 -8
  13. data/lib/pg_export/lib/pg_export/gateways/ssh.rb +82 -0
  14. data/lib/pg_export/lib/pg_export/listeners/interactive/build_dump.rb +4 -4
  15. data/lib/pg_export/lib/pg_export/listeners/interactive/{close_ftp_connection.rb → close_connection.rb} +1 -1
  16. data/lib/pg_export/lib/pg_export/listeners/interactive/decrypt_dump.rb +2 -2
  17. data/lib/pg_export/lib/pg_export/listeners/interactive/download_dump_from_ftp.rb +2 -2
  18. data/lib/pg_export/lib/pg_export/listeners/interactive/encrypt_dump.rb +2 -2
  19. data/lib/pg_export/lib/pg_export/listeners/interactive/{open_ftp_connection.rb → open_connection.rb} +1 -1
  20. data/lib/pg_export/lib/pg_export/listeners/interactive/remove_old_dumps_from_ftp.rb +5 -5
  21. data/lib/pg_export/lib/pg_export/listeners/interactive/restore.rb +2 -2
  22. data/lib/pg_export/lib/pg_export/listeners/interactive/upload_dump_to_ftp.rb +2 -2
  23. data/lib/pg_export/lib/pg_export/listeners/interactive_listener.rb +2 -2
  24. data/lib/pg_export/lib/pg_export/listeners/plain/build_dump.rb +2 -2
  25. data/lib/pg_export/lib/pg_export/listeners/plain/{close_ftp_connection.rb → close_connection.rb} +2 -2
  26. data/lib/pg_export/lib/pg_export/listeners/plain/decrypt_dump.rb +2 -2
  27. data/lib/pg_export/lib/pg_export/listeners/plain/download_dump_from_ftp.rb +2 -2
  28. data/lib/pg_export/lib/pg_export/listeners/plain/encrypt_dump.rb +2 -2
  29. data/lib/pg_export/lib/pg_export/listeners/plain/fetch_dumps_from_ftp.rb +2 -2
  30. data/lib/pg_export/lib/pg_export/listeners/plain/open_connection.rb +15 -0
  31. data/lib/pg_export/lib/pg_export/listeners/plain/remove_old_dumps_from_ftp.rb +3 -3
  32. data/lib/pg_export/lib/pg_export/listeners/plain/restore.rb +1 -1
  33. data/lib/pg_export/lib/pg_export/listeners/plain/upload_dump_to_ftp.rb +2 -2
  34. data/lib/pg_export/lib/pg_export/listeners/plain_listener.rb +2 -2
  35. data/lib/pg_export/lib/pg_export/operations/{open_ftp_connection.rb → open_connection.rb} +5 -5
  36. data/lib/pg_export/lib/pg_export/operations/remove_old_dumps_from_ftp.rb +6 -6
  37. data/lib/pg_export/lib/pg_export/repositories/{ftp_dump_file_repository.rb → gateway_dump_file_repository.rb} +3 -3
  38. data/lib/pg_export/lib/pg_export/repositories/{ftp_dump_repository.rb → gateway_dump_repository.rb} +7 -7
  39. data/lib/pg_export/lib/pg_export/transactions/export_dump.rb +8 -8
  40. data/lib/pg_export/lib/pg_export/transactions/import_dump_interactively.rb +14 -14
  41. data/lib/pg_export/lib/pg_export/types.rb +1 -1
  42. data/lib/pg_export/system/boot/interactive.rb +1 -1
  43. data/lib/pg_export/system/boot/plain.rb +2 -2
  44. data/lib/pg_export/version.rb +1 -1
  45. data/pg_export.gemspec +13 -9
  46. metadata +88 -31
  47. data/lib/pg_export/lib/pg_export/factories/ftp_adapter_factory.rb +0 -22
  48. data/lib/pg_export/lib/pg_export/listeners/plain/open_ftp_connection.rb +0 -15
@@ -17,10 +17,10 @@ class PgExport
17
17
  step :prepare_params
18
18
  step :build_dump
19
19
  step :encrypt_dump, with: 'operations.encrypt_dump'
20
- step :open_ftp_connection, with: 'operations.open_ftp_connection'
20
+ step :open_connection, with: 'operations.open_connection'
21
21
  step :upload_dump_to_ftp
22
22
  step :remove_old_dumps_from_ftp, with: 'operations.remove_old_dumps_from_ftp'
23
- step :close_ftp_connection
23
+ step :close_connection
24
24
 
25
25
  private
26
26
 
@@ -42,14 +42,14 @@ class PgExport
42
42
  Failure(message: 'Unable to dump database: ' + e.to_s)
43
43
  end
44
44
 
45
- def upload_dump_to_ftp(dump:, ftp_adapter:)
46
- ftp_adapter.persist(dump.file, dump.name)
47
- Success(dump: dump, ftp_adapter: ftp_adapter)
45
+ def upload_dump_to_ftp(dump:, gateway:)
46
+ gateway.persist(dump.file, dump.name)
47
+ Success(dump: dump, gateway: gateway)
48
48
  end
49
49
 
50
- def close_ftp_connection(removed_dumps:, ftp_adapter:)
51
- ftp_adapter.close_ftp
52
- Success(ftp_adapter: ftp_adapter)
50
+ def close_connection(removed_dumps:, gateway:)
51
+ gateway.close
52
+ Success(gateway: gateway)
53
53
  end
54
54
  end
55
55
  end
@@ -13,41 +13,41 @@ class PgExport
13
13
  include Dry::Transaction(container: PgExport::Container)
14
14
  include Import[
15
15
  'adapters.bash_adapter',
16
- 'repositories.ftp_dump_repository',
17
- 'repositories.ftp_dump_file_repository',
16
+ 'repositories.gateway_dump_repository',
17
+ 'repositories.gateway_dump_file_repository',
18
18
  'ui_input'
19
19
  ]
20
20
 
21
- step :open_ftp_connection, with: 'operations.open_ftp_connection'
21
+ step :open_connection, with: 'operations.open_connection'
22
22
  step :fetch_dumps_from_ftp
23
23
  step :select_dump
24
24
  step :download_dump_from_ftp
25
- step :close_ftp_connection
25
+ step :close_connection
26
26
  step :decrypt_dump, with: 'operations.decrypt_dump'
27
27
  step :select_database
28
28
  step :restore
29
29
 
30
30
  private
31
31
 
32
- def fetch_dumps_from_ftp(database_name:, ftp_adapter:)
33
- dumps = ftp_dump_repository.all(database_name: database_name, ftp_adapter: ftp_adapter)
32
+ def fetch_dumps_from_ftp(database_name:, gateway:)
33
+ dumps = gateway_dump_repository.all(database_name: database_name, gateway: gateway)
34
34
  return Failure(message: 'No dumps') if dumps.none?
35
35
 
36
- Success(ftp_adapter: ftp_adapter, dumps: dumps)
36
+ Success(gateway: gateway, dumps: dumps)
37
37
  end
38
38
 
39
- def select_dump(dumps:, ftp_adapter:)
39
+ def select_dump(dumps:, gateway:)
40
40
  dump = ui_input.select_dump(dumps)
41
- Success(dump: dump, ftp_adapter: ftp_adapter)
41
+ Success(dump: dump, gateway: gateway)
42
42
  end
43
43
 
44
- def download_dump_from_ftp(dump:, ftp_adapter:)
45
- dump.file = ftp_dump_file_repository.by_name(name: dump.name, ftp_adapter: ftp_adapter)
46
- Success(dump: dump, ftp_adapter: ftp_adapter)
44
+ def download_dump_from_ftp(dump:, gateway:)
45
+ dump.file = gateway_dump_file_repository.by_name(name: dump.name, gateway: gateway)
46
+ Success(dump: dump, gateway: gateway)
47
47
  end
48
48
 
49
- def close_ftp_connection(dump:, ftp_adapter:)
50
- Thread.new { ftp_adapter.close_ftp }
49
+ def close_connection(dump:, gateway:)
50
+ Thread.new { gateway.close }
51
51
  Success(dump: dump)
52
52
  end
53
53
 
@@ -5,7 +5,7 @@ require 'pg_export/lib/pg_export/value_objects/dump_file'
5
5
 
6
6
  class PgExport
7
7
  module Types
8
- include Dry::Types.module
8
+ include Dry::Types()
9
9
 
10
10
  DumpName = Strict::String.constrained(format: /.+_20[0-9]{6}_[0-9]{6}\Z/)
11
11
  DumpType = Types::Coercible::String.enum('plain', 'encrypted')
@@ -17,7 +17,7 @@ PgExport::Container.boot(:interactive) do
17
17
  use :logger
18
18
 
19
19
  %i[
20
- open_ftp_connection
20
+ open_connection
21
21
  fetch_dumps_from_ftp
22
22
  download_dump_from_ftp
23
23
  decrypt_dump
@@ -19,10 +19,10 @@ PgExport::Container.boot(:plain) do
19
19
  %i[
20
20
  build_dump
21
21
  encrypt_dump
22
- open_ftp_connection
22
+ open_connection
23
23
  upload_dump_to_ftp
24
24
  remove_old_dumps_from_ftp
25
- close_ftp_connection
25
+ close_connection
26
26
  ].each do |step|
27
27
  transaction.subscribe(step => target["listeners.#{type}.#{step}"])
28
28
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class PgExport
4
- VERSION = '0.7.4'
4
+ VERSION = '1.0.0.rc2'
5
5
  end
data/pg_export.gemspec CHANGED
@@ -10,28 +10,32 @@ Gem::Specification.new do |spec|
10
10
  spec.authors = ['Krzysztof Maicher']
11
11
  spec.email = ['krzysztof.maicher@gmail.com']
12
12
 
13
- spec.summary = 'CLI for creating and exporting PostgreSQL dumps to FTP.'
14
- spec.description = "CLI for creating and exporting PostgreSQL dumps to FTP.\
13
+ spec.summary = 'CLI for exporting/importing PostgreSQL dumps via FTP/SSH.'
14
+ spec.description = "CLI for exporting/importing PostgreSQL dumps via FTP/SSH.\
15
15
  Can be used for backups or synchronizing databases between production and development environments."
16
16
  spec.homepage = 'https://github.com/maicher/pg_export'
17
17
  spec.license = 'MIT'
18
18
 
19
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
19
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^spec/}) }
20
20
  spec.executables = ['pg_export']
21
21
  spec.require_paths = ['lib']
22
22
  spec.required_ruby_version = '>= 2.3.0'
23
23
 
24
- spec.add_dependency 'dry-initializer', '~> 2.5.0'
25
- spec.add_dependency 'dry-struct', '~> 0.4.0'
26
- spec.add_dependency 'dry-system', '~> 0.9.0'
27
- spec.add_dependency 'dry-transaction', '~> 0.13.0'
24
+ spec.add_dependency 'dry-initializer', '~> 3.0'
25
+ spec.add_dependency 'dry-types', '~> 1.0'
26
+ spec.add_dependency 'dry-struct', '~> 1.0'
27
+ spec.add_dependency 'dry-system', '~> 0.18'
28
+ spec.add_dependency 'dry-transaction', '~> 0.13'
29
+ spec.add_dependency 'ed25519'
30
+ spec.add_dependency 'net-ssh'
31
+ spec.add_dependency 'net-scp'
28
32
  spec.add_dependency 'tty-prompt'
29
33
  spec.add_dependency 'tty-spinner'
30
34
 
31
- spec.add_development_dependency 'bundler', '~> 1.16'
35
+ spec.add_development_dependency 'bundler', '~> 2.1'
32
36
  spec.add_development_dependency 'pg', '~> 0.21'
33
37
  spec.add_development_dependency 'pry'
34
- spec.add_development_dependency 'rake', '~> 10.0'
38
+ spec.add_development_dependency 'rake', '>= 12.3.3'
35
39
  spec.add_development_dependency 'rspec', '~> 3.4'
36
40
  spec.add_development_dependency 'rubocop', '~> 0.59.2'
37
41
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pg_export
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.4
4
+ version: 1.0.0.rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Krzysztof Maicher
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-19 00:00:00.000000000 Z
11
+ date: 2021-03-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-initializer
@@ -16,56 +16,112 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 2.5.0
19
+ version: '3.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 2.5.0
26
+ version: '3.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: dry-types
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: dry-struct
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: 0.4.0
47
+ version: '1.0'
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: 0.4.0
54
+ version: '1.0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: dry-system
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: 0.9.0
61
+ version: '0.18'
48
62
  type: :runtime
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: 0.9.0
68
+ version: '0.18'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: dry-transaction
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: 0.13.0
75
+ version: '0.13'
62
76
  type: :runtime
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: 0.13.0
82
+ version: '0.13'
83
+ - !ruby/object:Gem::Dependency
84
+ name: ed25519
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: net-ssh
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: net-scp
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
69
125
  - !ruby/object:Gem::Dependency
70
126
  name: tty-prompt
71
127
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +156,14 @@ dependencies:
100
156
  requirements:
101
157
  - - "~>"
102
158
  - !ruby/object:Gem::Version
103
- version: '1.16'
159
+ version: '2.1'
104
160
  type: :development
105
161
  prerelease: false
106
162
  version_requirements: !ruby/object:Gem::Requirement
107
163
  requirements:
108
164
  - - "~>"
109
165
  - !ruby/object:Gem::Version
110
- version: '1.16'
166
+ version: '2.1'
111
167
  - !ruby/object:Gem::Dependency
112
168
  name: pg
113
169
  requirement: !ruby/object:Gem::Requirement
@@ -140,16 +196,16 @@ dependencies:
140
196
  name: rake
141
197
  requirement: !ruby/object:Gem::Requirement
142
198
  requirements:
143
- - - "~>"
199
+ - - ">="
144
200
  - !ruby/object:Gem::Version
145
- version: '10.0'
201
+ version: 12.3.3
146
202
  type: :development
147
203
  prerelease: false
148
204
  version_requirements: !ruby/object:Gem::Requirement
149
205
  requirements:
150
- - - "~>"
206
+ - - ">="
151
207
  - !ruby/object:Gem::Version
152
- version: '10.0'
208
+ version: 12.3.3
153
209
  - !ruby/object:Gem::Dependency
154
210
  name: rspec
155
211
  requirement: !ruby/object:Gem::Requirement
@@ -178,7 +234,7 @@ dependencies:
178
234
  - - "~>"
179
235
  - !ruby/object:Gem::Version
180
236
  version: 0.59.2
181
- description: CLI for creating and exporting PostgreSQL dumps to FTP. Can
237
+ description: CLI for exporting/importing PostgreSQL dumps via FTP/SSH. Can
182
238
  be used for backups or synchronizing databases between production and development
183
239
  environments.
184
240
  email:
@@ -208,39 +264,41 @@ files:
208
264
  - lib/pg_export/container.rb
209
265
  - lib/pg_export/import.rb
210
266
  - lib/pg_export/lib/pg_export/adapters/bash_adapter.rb
211
- - lib/pg_export/lib/pg_export/adapters/ftp_adapter.rb
212
267
  - lib/pg_export/lib/pg_export/entities/dump.rb
213
268
  - lib/pg_export/lib/pg_export/factories/cipher_factory.rb
214
269
  - lib/pg_export/lib/pg_export/factories/dump_factory.rb
215
- - lib/pg_export/lib/pg_export/factories/ftp_adapter_factory.rb
270
+ - lib/pg_export/lib/pg_export/factories/ftp_gateway_factory.rb
271
+ - lib/pg_export/lib/pg_export/factories/ssh_gateway_factory.rb
272
+ - lib/pg_export/lib/pg_export/gateways/ftp.rb
273
+ - lib/pg_export/lib/pg_export/gateways/ssh.rb
216
274
  - lib/pg_export/lib/pg_export/listeners/interactive/build_dump.rb
217
- - lib/pg_export/lib/pg_export/listeners/interactive/close_ftp_connection.rb
275
+ - lib/pg_export/lib/pg_export/listeners/interactive/close_connection.rb
218
276
  - lib/pg_export/lib/pg_export/listeners/interactive/decrypt_dump.rb
219
277
  - lib/pg_export/lib/pg_export/listeners/interactive/download_dump_from_ftp.rb
220
278
  - lib/pg_export/lib/pg_export/listeners/interactive/encrypt_dump.rb
221
279
  - lib/pg_export/lib/pg_export/listeners/interactive/fetch_dumps_from_ftp.rb
222
- - lib/pg_export/lib/pg_export/listeners/interactive/open_ftp_connection.rb
280
+ - lib/pg_export/lib/pg_export/listeners/interactive/open_connection.rb
223
281
  - lib/pg_export/lib/pg_export/listeners/interactive/remove_old_dumps_from_ftp.rb
224
282
  - lib/pg_export/lib/pg_export/listeners/interactive/restore.rb
225
283
  - lib/pg_export/lib/pg_export/listeners/interactive/upload_dump_to_ftp.rb
226
284
  - lib/pg_export/lib/pg_export/listeners/interactive_listener.rb
227
285
  - lib/pg_export/lib/pg_export/listeners/plain/build_dump.rb
228
- - lib/pg_export/lib/pg_export/listeners/plain/close_ftp_connection.rb
286
+ - lib/pg_export/lib/pg_export/listeners/plain/close_connection.rb
229
287
  - lib/pg_export/lib/pg_export/listeners/plain/decrypt_dump.rb
230
288
  - lib/pg_export/lib/pg_export/listeners/plain/download_dump_from_ftp.rb
231
289
  - lib/pg_export/lib/pg_export/listeners/plain/encrypt_dump.rb
232
290
  - lib/pg_export/lib/pg_export/listeners/plain/fetch_dumps_from_ftp.rb
233
- - lib/pg_export/lib/pg_export/listeners/plain/open_ftp_connection.rb
291
+ - lib/pg_export/lib/pg_export/listeners/plain/open_connection.rb
234
292
  - lib/pg_export/lib/pg_export/listeners/plain/remove_old_dumps_from_ftp.rb
235
293
  - lib/pg_export/lib/pg_export/listeners/plain/restore.rb
236
294
  - lib/pg_export/lib/pg_export/listeners/plain/upload_dump_to_ftp.rb
237
295
  - lib/pg_export/lib/pg_export/listeners/plain_listener.rb
238
296
  - lib/pg_export/lib/pg_export/operations/decrypt_dump.rb
239
297
  - lib/pg_export/lib/pg_export/operations/encrypt_dump.rb
240
- - lib/pg_export/lib/pg_export/operations/open_ftp_connection.rb
298
+ - lib/pg_export/lib/pg_export/operations/open_connection.rb
241
299
  - lib/pg_export/lib/pg_export/operations/remove_old_dumps_from_ftp.rb
242
- - lib/pg_export/lib/pg_export/repositories/ftp_dump_file_repository.rb
243
- - lib/pg_export/lib/pg_export/repositories/ftp_dump_repository.rb
300
+ - lib/pg_export/lib/pg_export/repositories/gateway_dump_file_repository.rb
301
+ - lib/pg_export/lib/pg_export/repositories/gateway_dump_repository.rb
244
302
  - lib/pg_export/lib/pg_export/transactions/export_dump.rb
245
303
  - lib/pg_export/lib/pg_export/transactions/import_dump_interactively.rb
246
304
  - lib/pg_export/lib/pg_export/types.rb
@@ -268,13 +326,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
268
326
  version: 2.3.0
269
327
  required_rubygems_version: !ruby/object:Gem::Requirement
270
328
  requirements:
271
- - - ">="
329
+ - - ">"
272
330
  - !ruby/object:Gem::Version
273
- version: '0'
331
+ version: 1.3.1
274
332
  requirements: []
275
- rubyforge_project:
276
- rubygems_version: 2.7.3
333
+ rubygems_version: 3.2.3
277
334
  signing_key:
278
335
  specification_version: 4
279
- summary: CLI for creating and exporting PostgreSQL dumps to FTP.
336
+ summary: CLI for exporting/importing PostgreSQL dumps via FTP/SSH.
280
337
  test_files: []
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # auto_register: false
4
-
5
- require 'pg_export/lib/pg_export/adapters/ftp_adapter'
6
- require 'pg_export/import'
7
-
8
- class PgExport
9
- module Factories
10
- class FtpAdapterFactory
11
- include Import['config']
12
-
13
- def ftp_adapter
14
- ::PgExport::Adapters::FtpAdapter.new(
15
- host: config.ftp_host,
16
- user: config.ftp_user,
17
- password: config.ftp_password
18
- )
19
- end
20
- end
21
- end
22
- end