pg_export 0.7.4 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
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