webtranslateit-safe 0.4.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.
Files changed (59) hide show
  1. checksums.yaml +7 -0
  2. data/.autotest +3 -0
  3. data/.document +5 -0
  4. data/.github/dependabot.yml +26 -0
  5. data/.github/release-drafter.yml +36 -0
  6. data/.github/workflows/ci.yml +51 -0
  7. data/.github/workflows/release-drafter.yml +29 -0
  8. data/.gitignore +18 -0
  9. data/.rspec +3 -0
  10. data/.rubocop.yml +8 -0
  11. data/.rubocop_todo.yml +552 -0
  12. data/CHANGELOG +42 -0
  13. data/Gemfile +11 -0
  14. data/Gemfile.lock +89 -0
  15. data/LICENSE.txt +22 -0
  16. data/README.markdown +237 -0
  17. data/Rakefile +8 -0
  18. data/TODO +31 -0
  19. data/bin/webtranslateit-safe +64 -0
  20. data/lib/extensions/mktmpdir.rb +45 -0
  21. data/lib/webtranslateit/safe/archive.rb +29 -0
  22. data/lib/webtranslateit/safe/backup.rb +27 -0
  23. data/lib/webtranslateit/safe/cloudfiles.rb +77 -0
  24. data/lib/webtranslateit/safe/config/builder.rb +100 -0
  25. data/lib/webtranslateit/safe/config/node.rb +79 -0
  26. data/lib/webtranslateit/safe/ftp.rb +85 -0
  27. data/lib/webtranslateit/safe/gpg.rb +52 -0
  28. data/lib/webtranslateit/safe/gzip.rb +29 -0
  29. data/lib/webtranslateit/safe/local.rb +55 -0
  30. data/lib/webtranslateit/safe/mongodump.rb +30 -0
  31. data/lib/webtranslateit/safe/mysqldump.rb +36 -0
  32. data/lib/webtranslateit/safe/pgdump.rb +36 -0
  33. data/lib/webtranslateit/safe/pipe.rb +23 -0
  34. data/lib/webtranslateit/safe/s3.rb +80 -0
  35. data/lib/webtranslateit/safe/sftp.rb +96 -0
  36. data/lib/webtranslateit/safe/sink.rb +40 -0
  37. data/lib/webtranslateit/safe/source.rb +51 -0
  38. data/lib/webtranslateit/safe/stream.rb +40 -0
  39. data/lib/webtranslateit/safe/svndump.rb +17 -0
  40. data/lib/webtranslateit/safe/tmp_file.rb +53 -0
  41. data/lib/webtranslateit/safe/version.rb +9 -0
  42. data/lib/webtranslateit/safe.rb +70 -0
  43. data/spec/integration/archive_integration_spec.rb +89 -0
  44. data/spec/integration/cleanup_spec.rb +62 -0
  45. data/spec/spec_helper.rb +7 -0
  46. data/spec/webtranslateit/safe/archive_spec.rb +67 -0
  47. data/spec/webtranslateit/safe/cloudfiles_spec.rb +175 -0
  48. data/spec/webtranslateit/safe/config_spec.rb +307 -0
  49. data/spec/webtranslateit/safe/gpg_spec.rb +148 -0
  50. data/spec/webtranslateit/safe/gzip_spec.rb +64 -0
  51. data/spec/webtranslateit/safe/local_spec.rb +109 -0
  52. data/spec/webtranslateit/safe/mongodump_spec.rb +54 -0
  53. data/spec/webtranslateit/safe/mysqldump_spec.rb +83 -0
  54. data/spec/webtranslateit/safe/pgdump_spec.rb +45 -0
  55. data/spec/webtranslateit/safe/s3_spec.rb +168 -0
  56. data/spec/webtranslateit/safe/svndump_spec.rb +39 -0
  57. data/templates/script.rb +183 -0
  58. data/webtranslateit-safe.gemspec +32 -0
  59. metadata +149 -0
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,552 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config --exclude-limit 100`
3
+ # on 2023-05-20 08:07:25 UTC using RuboCop version 1.51.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 5
10
+ # This cop supports safe autocorrection (--autocorrect).
11
+ # Configuration parameters: EnforcedStyle.
12
+ # SupportedStyles: leading, trailing
13
+ Layout/DotPosition:
14
+ Exclude:
15
+ - 'lib/webtranslateit/safe/s3.rb'
16
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
17
+
18
+ # Offense count: 6
19
+ # This cop supports safe autocorrection (--autocorrect).
20
+ # Configuration parameters: EnforcedStyle.
21
+ # SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines, beginning_only, ending_only
22
+ Layout/EmptyLinesAroundClassBody:
23
+ Exclude:
24
+ - 'lib/extensions/mktmpdir.rb'
25
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
26
+ - 'lib/webtranslateit/safe/s3.rb'
27
+
28
+ # Offense count: 8
29
+ # This cop supports safe autocorrection (--autocorrect).
30
+ # Configuration parameters: EnforcedStyle.
31
+ # SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
32
+ Layout/EmptyLinesAroundModuleBody:
33
+ Exclude:
34
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
35
+ - 'lib/webtranslateit/safe/s3.rb'
36
+
37
+ # Offense count: 9
38
+ # This cop supports safe autocorrection (--autocorrect).
39
+ # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
40
+ # SupportedHashRocketStyles: key, separator, table
41
+ # SupportedColonStyles: key, separator, table
42
+ # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
43
+ Layout/HashAlignment:
44
+ Exclude:
45
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
46
+ - 'spec/webtranslateit/safe/s3_spec.rb'
47
+
48
+ # Offense count: 2
49
+ # This cop supports safe autocorrection (--autocorrect).
50
+ # Configuration parameters: EnforcedStyle, IndentationWidth.
51
+ # SupportedStyles: aligned, indented, indented_relative_to_receiver
52
+ Layout/MultilineMethodCallIndentation:
53
+ Exclude:
54
+ - 'lib/webtranslateit/safe/s3.rb'
55
+
56
+ # Offense count: 7
57
+ # This cop supports safe autocorrection (--autocorrect).
58
+ Layout/SpaceAfterComma:
59
+ Exclude:
60
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
61
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
62
+ - 'spec/webtranslateit/safe/s3_spec.rb'
63
+
64
+ # Offense count: 2
65
+ # This cop supports safe autocorrection (--autocorrect).
66
+ # Configuration parameters: EnforcedStyle.
67
+ # SupportedStyles: space, no_space
68
+ Layout/SpaceAroundEqualsInParameterDefault:
69
+ Exclude:
70
+ - 'lib/extensions/mktmpdir.rb'
71
+
72
+ # Offense count: 11
73
+ # This cop supports safe autocorrection (--autocorrect).
74
+ # Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
75
+ # SupportedStylesForExponentOperator: space, no_space
76
+ Layout/SpaceAroundOperators:
77
+ Exclude:
78
+ - 'spec/integration/archive_integration_spec.rb'
79
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
80
+ - 'spec/webtranslateit/safe/s3_spec.rb'
81
+
82
+ # Offense count: 48
83
+ # This cop supports safe autocorrection (--autocorrect).
84
+ # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
85
+ # SupportedStyles: space, no_space
86
+ # SupportedStylesForEmptyBraces: space, no_space
87
+ Layout/SpaceInsideBlockBraces:
88
+ Exclude:
89
+ - 'lib/webtranslateit/safe/s3.rb'
90
+ - 'spec/integration/archive_integration_spec.rb'
91
+ - 'spec/integration/cleanup_spec.rb'
92
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
93
+ - 'spec/webtranslateit/safe/s3_spec.rb'
94
+
95
+ # Offense count: 2
96
+ # This cop supports safe autocorrection (--autocorrect).
97
+ # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces.
98
+ # SupportedStyles: space, no_space, compact
99
+ # SupportedStylesForEmptyBraces: space, no_space
100
+ Layout/SpaceInsideHashLiteralBraces:
101
+ Exclude:
102
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
103
+
104
+ # Offense count: 4
105
+ # This cop supports safe autocorrection (--autocorrect).
106
+ # Configuration parameters: EnforcedStyle.
107
+ # SupportedStyles: final_newline, final_blank_line
108
+ Layout/TrailingEmptyLines:
109
+ Exclude:
110
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
111
+ - 'lib/webtranslateit/safe/s3.rb'
112
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
113
+ - 'spec/webtranslateit/safe/s3_spec.rb'
114
+
115
+ # Offense count: 1
116
+ # This cop supports safe autocorrection (--autocorrect).
117
+ # Configuration parameters: AllowInHeredoc.
118
+ Layout/TrailingWhitespace:
119
+ Exclude:
120
+ - 'lib/webtranslateit/safe/s3.rb'
121
+
122
+ # Offense count: 1
123
+ # This cop supports safe autocorrection (--autocorrect).
124
+ # Configuration parameters: AllowedMethods, AllowedPatterns.
125
+ Lint/AmbiguousBlockAssociation:
126
+ Exclude:
127
+ - 'lib/webtranslateit/safe/s3.rb'
128
+
129
+ # Offense count: 2
130
+ # This cop supports safe autocorrection (--autocorrect).
131
+ Lint/AmbiguousOperatorPrecedence:
132
+ Exclude:
133
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
134
+ - 'spec/webtranslateit/safe/s3_spec.rb'
135
+
136
+ # Offense count: 2
137
+ # This cop supports unsafe autocorrection (--autocorrect-all).
138
+ # Configuration parameters: AllowSafeAssignment.
139
+ Lint/AssignmentInCondition:
140
+ Exclude:
141
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
142
+ - 'lib/webtranslateit/safe/s3.rb'
143
+
144
+ # Offense count: 1
145
+ Lint/MissingSuper:
146
+ Exclude:
147
+ - 'lib/webtranslateit/safe/source.rb'
148
+
149
+ # Offense count: 1
150
+ # This cop supports unsafe autocorrection (--autocorrect-all).
151
+ Lint/RedundantDirGlobSort:
152
+ Exclude:
153
+ - 'spec/integration/cleanup_spec.rb'
154
+
155
+ # Offense count: 1
156
+ # This cop supports safe autocorrection (--autocorrect).
157
+ # Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
158
+ Lint/UnusedBlockArgument:
159
+ Exclude:
160
+ - 'spec/webtranslateit/safe/s3_spec.rb'
161
+
162
+ # Offense count: 2
163
+ # This cop supports unsafe autocorrection (--autocorrect-all).
164
+ Lint/UselessAssignment:
165
+ Exclude:
166
+ - 'spec/integration/archive_integration_spec.rb'
167
+ - 'spec/integration/cleanup_spec.rb'
168
+
169
+ # Offense count: 2
170
+ # This cop supports safe autocorrection (--autocorrect).
171
+ # Configuration parameters: CheckForMethodsWithNoSideEffects.
172
+ Lint/Void:
173
+ Exclude:
174
+ - 'spec/integration/archive_integration_spec.rb'
175
+
176
+ # Offense count: 14
177
+ # Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes.
178
+ Metrics/AbcSize:
179
+ Max: 42
180
+
181
+ # Offense count: 12
182
+ # Configuration parameters: AllowedMethods, AllowedPatterns.
183
+ Metrics/CyclomaticComplexity:
184
+ Max: 15
185
+
186
+ # Offense count: 12
187
+ # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
188
+ Metrics/MethodLength:
189
+ Max: 35
190
+
191
+ # Offense count: 10
192
+ # Configuration parameters: AllowedMethods, AllowedPatterns.
193
+ Metrics/PerceivedComplexity:
194
+ Max: 15
195
+
196
+ # Offense count: 1
197
+ # Configuration parameters: ForbiddenDelimiters.
198
+ # ForbiddenDelimiters: (?i-mx:(^|\s)(EO[A-Z]{1}|END)(\s|$))
199
+ Naming/HeredocDelimiterNaming:
200
+ Exclude:
201
+ - 'bin/webtranslateit-safe'
202
+
203
+ # Offense count: 3
204
+ # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
205
+ # AllowedNames: as, at, by, cc, db, id, if, in, io, ip, of, on, os, pp, to
206
+ Naming/MethodParameterName:
207
+ Exclude:
208
+ - 'lib/webtranslateit/safe/config/builder.rb'
209
+
210
+ # Offense count: 3
211
+ RSpec/BeforeAfterAll:
212
+ Exclude:
213
+ - 'spec/spec_helper.rb'
214
+ - 'spec/rails_helper.rb'
215
+ - 'spec/support/**/*.rb'
216
+ - 'spec/integration/archive_integration_spec.rb'
217
+ - 'spec/integration/cleanup_spec.rb'
218
+
219
+ # Offense count: 2
220
+ # Configuration parameters: IgnoredMetadata.
221
+ RSpec/DescribeClass:
222
+ Exclude:
223
+ - '**/spec/features/**/*'
224
+ - '**/spec/requests/**/*'
225
+ - '**/spec/routing/**/*'
226
+ - '**/spec/system/**/*'
227
+ - '**/spec/views/**/*'
228
+ - 'spec/integration/archive_integration_spec.rb'
229
+ - 'spec/integration/cleanup_spec.rb'
230
+
231
+ # Offense count: 26
232
+ RSpec/DescribeSymbol:
233
+ Exclude:
234
+ - 'spec/webtranslateit/safe/archive_spec.rb'
235
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
236
+ - 'spec/webtranslateit/safe/gpg_spec.rb'
237
+ - 'spec/webtranslateit/safe/gzip_spec.rb'
238
+ - 'spec/webtranslateit/safe/local_spec.rb'
239
+ - 'spec/webtranslateit/safe/mongodump_spec.rb'
240
+ - 'spec/webtranslateit/safe/mysqldump_spec.rb'
241
+ - 'spec/webtranslateit/safe/pgdump_spec.rb'
242
+ - 'spec/webtranslateit/safe/s3_spec.rb'
243
+ - 'spec/webtranslateit/safe/svndump_spec.rb'
244
+
245
+ # Offense count: 2
246
+ # This cop supports safe autocorrection (--autocorrect).
247
+ # Configuration parameters: AllowConsecutiveOneLiners.
248
+ RSpec/EmptyLineAfterHook:
249
+ Exclude:
250
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
251
+ - 'spec/webtranslateit/safe/s3_spec.rb'
252
+
253
+ # Offense count: 9
254
+ # Configuration parameters: CountAsOne.
255
+ RSpec/ExampleLength:
256
+ Max: 162
257
+
258
+ # Offense count: 37
259
+ # This cop supports safe autocorrection (--autocorrect).
260
+ # Configuration parameters: CustomTransform, IgnoredWords, DisallowedExamples.
261
+ # DisallowedExamples: works
262
+ RSpec/ExampleWording:
263
+ Exclude:
264
+ - 'spec/integration/archive_integration_spec.rb'
265
+ - 'spec/integration/cleanup_spec.rb'
266
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
267
+ - 'spec/webtranslateit/safe/s3_spec.rb'
268
+
269
+ # Offense count: 11
270
+ # Configuration parameters: Include, CustomTransform, IgnoreMethods, SpecSuffixOnly.
271
+ # Include: **/*_spec*rb*, **/spec/**/*
272
+ RSpec/FilePath:
273
+ Exclude:
274
+ - 'spec/webtranslateit/safe/archive_spec.rb'
275
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
276
+ - 'spec/webtranslateit/safe/config_spec.rb'
277
+ - 'spec/webtranslateit/safe/gpg_spec.rb'
278
+ - 'spec/webtranslateit/safe/gzip_spec.rb'
279
+ - 'spec/webtranslateit/safe/local_spec.rb'
280
+ - 'spec/webtranslateit/safe/mongodump_spec.rb'
281
+ - 'spec/webtranslateit/safe/mysqldump_spec.rb'
282
+ - 'spec/webtranslateit/safe/pgdump_spec.rb'
283
+ - 'spec/webtranslateit/safe/s3_spec.rb'
284
+ - 'spec/webtranslateit/safe/svndump_spec.rb'
285
+
286
+ # Offense count: 32
287
+ # This cop supports safe autocorrection (--autocorrect).
288
+ # Configuration parameters: .
289
+ # SupportedStyles: implicit, each, example
290
+ RSpec/HookArgument:
291
+ EnforcedStyle: each
292
+
293
+ # Offense count: 167
294
+ # Configuration parameters: AssignmentOnly.
295
+ RSpec/InstanceVariable:
296
+ Exclude:
297
+ - 'spec/integration/archive_integration_spec.rb'
298
+ - 'spec/integration/cleanup_spec.rb'
299
+ - 'spec/webtranslateit/safe/archive_spec.rb'
300
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
301
+ - 'spec/webtranslateit/safe/gpg_spec.rb'
302
+ - 'spec/webtranslateit/safe/gzip_spec.rb'
303
+ - 'spec/webtranslateit/safe/local_spec.rb'
304
+ - 'spec/webtranslateit/safe/mongodump_spec.rb'
305
+ - 'spec/webtranslateit/safe/mysqldump_spec.rb'
306
+ - 'spec/webtranslateit/safe/pgdump_spec.rb'
307
+ - 'spec/webtranslateit/safe/s3_spec.rb'
308
+ - 'spec/webtranslateit/safe/svndump_spec.rb'
309
+
310
+ # Offense count: 78
311
+ # Configuration parameters: AllowedPatterns.
312
+ # AllowedPatterns: ^expect_, ^assert_
313
+ RSpec/NoExpectationExample:
314
+ Exclude:
315
+ - 'spec/integration/archive_integration_spec.rb'
316
+ - 'spec/integration/cleanup_spec.rb'
317
+ - 'spec/webtranslateit/safe/archive_spec.rb'
318
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
319
+ - 'spec/webtranslateit/safe/config_spec.rb'
320
+ - 'spec/webtranslateit/safe/gpg_spec.rb'
321
+ - 'spec/webtranslateit/safe/gzip_spec.rb'
322
+ - 'spec/webtranslateit/safe/local_spec.rb'
323
+ - 'spec/webtranslateit/safe/mongodump_spec.rb'
324
+ - 'spec/webtranslateit/safe/mysqldump_spec.rb'
325
+ - 'spec/webtranslateit/safe/pgdump_spec.rb'
326
+ - 'spec/webtranslateit/safe/s3_spec.rb'
327
+ - 'spec/webtranslateit/safe/svndump_spec.rb'
328
+
329
+ # Offense count: 8
330
+ # This cop supports unsafe autocorrection (--autocorrect-all).
331
+ # Configuration parameters: Strict, EnforcedStyle, AllowedExplicitMatchers.
332
+ # SupportedStyles: inflected, explicit
333
+ RSpec/PredicateMatcher:
334
+ Exclude:
335
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
336
+ - 'spec/webtranslateit/safe/s3_spec.rb'
337
+
338
+ # Offense count: 2
339
+ RSpec/RepeatedExample:
340
+ Exclude:
341
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
342
+
343
+ # Offense count: 1
344
+ Security/Eval:
345
+ Exclude:
346
+ - 'bin/webtranslateit-safe'
347
+
348
+ # Offense count: 1
349
+ # This cop supports safe autocorrection (--autocorrect).
350
+ Style/ClassMethods:
351
+ Exclude:
352
+ - 'lib/extensions/mktmpdir.rb'
353
+
354
+ # Offense count: 8
355
+ # This cop supports safe autocorrection (--autocorrect).
356
+ Style/FileWrite:
357
+ Exclude:
358
+ - 'spec/integration/archive_integration_spec.rb'
359
+ - 'spec/integration/cleanup_spec.rb'
360
+
361
+ # Offense count: 2
362
+ # This cop supports safe autocorrection (--autocorrect).
363
+ # Configuration parameters: EnforcedStyle.
364
+ # SupportedStyles: format, sprintf, percent
365
+ Style/FormatString:
366
+ Exclude:
367
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
368
+ - 'lib/webtranslateit/safe/s3.rb'
369
+
370
+ # Offense count: 42
371
+ # This cop supports unsafe autocorrection (--autocorrect-all).
372
+ # Configuration parameters: EnforcedStyle.
373
+ # SupportedStyles: always, always_true, never
374
+ Style/FrozenStringLiteralComment:
375
+ Exclude:
376
+ - 'Gemfile'
377
+ - 'Rakefile'
378
+ - 'bin/webtranslateit-safe'
379
+ - 'lib/extensions/mktmpdir.rb'
380
+ - 'lib/webtranslateit/safe.rb'
381
+ - 'lib/webtranslateit/safe/archive.rb'
382
+ - 'lib/webtranslateit/safe/backup.rb'
383
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
384
+ - 'lib/webtranslateit/safe/config/builder.rb'
385
+ - 'lib/webtranslateit/safe/config/node.rb'
386
+ - 'lib/webtranslateit/safe/ftp.rb'
387
+ - 'lib/webtranslateit/safe/gpg.rb'
388
+ - 'lib/webtranslateit/safe/gzip.rb'
389
+ - 'lib/webtranslateit/safe/local.rb'
390
+ - 'lib/webtranslateit/safe/mongodump.rb'
391
+ - 'lib/webtranslateit/safe/mysqldump.rb'
392
+ - 'lib/webtranslateit/safe/pgdump.rb'
393
+ - 'lib/webtranslateit/safe/pipe.rb'
394
+ - 'lib/webtranslateit/safe/s3.rb'
395
+ - 'lib/webtranslateit/safe/sftp.rb'
396
+ - 'lib/webtranslateit/safe/sink.rb'
397
+ - 'lib/webtranslateit/safe/source.rb'
398
+ - 'lib/webtranslateit/safe/stream.rb'
399
+ - 'lib/webtranslateit/safe/svndump.rb'
400
+ - 'lib/webtranslateit/safe/tmp_file.rb'
401
+ - 'lib/webtranslateit/safe/version.rb'
402
+ - 'spec/integration/archive_integration_spec.rb'
403
+ - 'spec/integration/cleanup_spec.rb'
404
+ - 'spec/spec_helper.rb'
405
+ - 'spec/webtranslateit/safe/archive_spec.rb'
406
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
407
+ - 'spec/webtranslateit/safe/config_spec.rb'
408
+ - 'spec/webtranslateit/safe/gpg_spec.rb'
409
+ - 'spec/webtranslateit/safe/gzip_spec.rb'
410
+ - 'spec/webtranslateit/safe/local_spec.rb'
411
+ - 'spec/webtranslateit/safe/mongodump_spec.rb'
412
+ - 'spec/webtranslateit/safe/mysqldump_spec.rb'
413
+ - 'spec/webtranslateit/safe/pgdump_spec.rb'
414
+ - 'spec/webtranslateit/safe/s3_spec.rb'
415
+ - 'spec/webtranslateit/safe/svndump_spec.rb'
416
+ - 'templates/script.rb'
417
+ - 'webtranslateit-safe.gemspec'
418
+
419
+ # Offense count: 4
420
+ # This cop supports unsafe autocorrection (--autocorrect-all).
421
+ Style/GlobalStdStream:
422
+ Exclude:
423
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
424
+ - 'lib/webtranslateit/safe/s3.rb'
425
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
426
+ - 'spec/webtranslateit/safe/s3_spec.rb'
427
+
428
+ # Offense count: 2
429
+ # This cop supports safe autocorrection (--autocorrect).
430
+ # Configuration parameters: MinBodyLength, AllowConsecutiveConditionals.
431
+ Style/GuardClause:
432
+ Exclude:
433
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
434
+ - 'lib/webtranslateit/safe/s3.rb'
435
+
436
+ # Offense count: 34
437
+ # This cop supports safe autocorrection (--autocorrect).
438
+ # Configuration parameters: EnforcedStyle, EnforcedShorthandSyntax, UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
439
+ # SupportedStyles: ruby19, hash_rockets, no_mixed_keys, ruby19_no_mixed_keys
440
+ # SupportedShorthandSyntax: always, never, either, consistent
441
+ Style/HashSyntax:
442
+ Exclude:
443
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
444
+ - 'lib/webtranslateit/safe/s3.rb'
445
+ - 'spec/integration/archive_integration_spec.rb'
446
+ - 'spec/integration/cleanup_spec.rb'
447
+ - 'spec/webtranslateit/safe/s3_spec.rb'
448
+
449
+ # Offense count: 3
450
+ Style/MixinUsage:
451
+ Exclude:
452
+ - 'bin/webtranslateit-safe'
453
+ - 'spec/integration/archive_integration_spec.rb'
454
+ - 'spec/integration/cleanup_spec.rb'
455
+
456
+ # Offense count: 1
457
+ # This cop supports unsafe autocorrection (--autocorrect-all).
458
+ # Configuration parameters: EnforcedStyle.
459
+ # SupportedStyles: literals, strict
460
+ Style/MutableConstant:
461
+ Exclude:
462
+ - 'lib/webtranslateit/safe/version.rb'
463
+
464
+ # Offense count: 1
465
+ # This cop supports safe autocorrection (--autocorrect).
466
+ # Configuration parameters: EnforcedOctalStyle.
467
+ # SupportedOctalStyles: zero_with_o, zero_only
468
+ Style/NumericLiteralPrefix:
469
+ Exclude:
470
+ - 'lib/extensions/mktmpdir.rb'
471
+
472
+ # Offense count: 2
473
+ # This cop supports safe autocorrection (--autocorrect).
474
+ # Configuration parameters: Strict, AllowedNumbers, AllowedPatterns.
475
+ Style/NumericLiterals:
476
+ MinDigits: 11
477
+
478
+ # Offense count: 2
479
+ # This cop supports safe autocorrection (--autocorrect).
480
+ Style/RedundantException:
481
+ Exclude:
482
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
483
+ - 'lib/webtranslateit/safe/s3.rb'
484
+
485
+ # Offense count: 1
486
+ # This cop supports safe autocorrection (--autocorrect).
487
+ # Configuration parameters: AllowAsExpressionSeparator.
488
+ Style/Semicolon:
489
+ Exclude:
490
+ - 'spec/webtranslateit/safe/s3_spec.rb'
491
+
492
+ # Offense count: 1
493
+ # This cop supports unsafe autocorrection (--autocorrect-all).
494
+ # Configuration parameters: RequireEnglish, EnforcedStyle.
495
+ # SupportedStyles: use_perl_names, use_english_names, use_builtin_english_names
496
+ Style/SpecialGlobalVars:
497
+ Exclude:
498
+ - 'lib/extensions/mktmpdir.rb'
499
+
500
+ # Offense count: 2
501
+ # This cop supports safe autocorrection (--autocorrect).
502
+ Style/StderrPuts:
503
+ Exclude:
504
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
505
+ - 'lib/webtranslateit/safe/s3.rb'
506
+
507
+ # Offense count: 2
508
+ # This cop supports unsafe autocorrection (--autocorrect-all).
509
+ # Configuration parameters: Mode.
510
+ Style/StringConcatenation:
511
+ Exclude:
512
+ - 'lib/webtranslateit/safe/cloudfiles.rb'
513
+ - 'lib/webtranslateit/safe/s3.rb'
514
+
515
+ # Offense count: 9
516
+ # This cop supports safe autocorrection (--autocorrect).
517
+ # Configuration parameters: MinSize.
518
+ # SupportedStyles: percent, brackets
519
+ Style/SymbolArray:
520
+ EnforcedStyle: brackets
521
+
522
+ # Offense count: 2
523
+ # This cop supports unsafe autocorrection (--autocorrect-all).
524
+ # Configuration parameters: AllowMethodsWithArguments, AllowedMethods, AllowedPatterns, AllowComments.
525
+ # AllowedMethods: define_method
526
+ Style/SymbolProc:
527
+ Exclude:
528
+ - 'lib/webtranslateit/safe/s3.rb'
529
+
530
+ # Offense count: 2
531
+ # This cop supports safe autocorrection (--autocorrect).
532
+ # Configuration parameters: EnforcedStyleForMultiline.
533
+ # SupportedStylesForMultiline: comma, consistent_comma, no_comma
534
+ Style/TrailingCommaInHashLiteral:
535
+ Exclude:
536
+ - 'spec/webtranslateit/safe/cloudfiles_spec.rb'
537
+ - 'spec/webtranslateit/safe/s3_spec.rb'
538
+
539
+ # Offense count: 9
540
+ # This cop supports safe autocorrection (--autocorrect).
541
+ # Configuration parameters: WordRegex.
542
+ # SupportedStyles: percent, brackets
543
+ Style/WordArray:
544
+ EnforcedStyle: percent
545
+ MinSize: 3
546
+
547
+ # Offense count: 9
548
+ # This cop supports safe autocorrection (--autocorrect).
549
+ # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
550
+ # URISchemes: http, https
551
+ Layout/LineLength:
552
+ Max: 206
data/CHANGELOG ADDED
@@ -0,0 +1,42 @@
1
+ 0.4.0
2
+
3
+ * Rename gem to webtranslateit-safe.
4
+ * GitHub Action CI.
5
+ * Rubocop Linting.
6
+ * Ruby 3.2 compatibility.
7
+
8
+ 0.3.1
9
+
10
+ * plain ftp support from seroy
11
+ * mongodump support from Matt Berther
12
+
13
+ 0.3.0
14
+
15
+ * switch to bundler
16
+ * fixed the rspec
17
+
18
+ 0.2.8
19
+
20
+ * ruby 1.9.2 compatibility (tests mostly)
21
+ * code review, and tons of small fixes
22
+ * check file size before attempting to upload to cloudfiles
23
+ * testing framework changed from micronaut to rspec
24
+
25
+ 0.2.7
26
+
27
+ * default options for gpg now include '--no-use-agent'
28
+ * support for 'command' option for gpg
29
+ * quote values in mysql password file
30
+ * add 'lib' to $:
31
+ * [EXPERIMENTAL] Rackspace Cloud Files support
32
+
33
+ 0.2.6
34
+
35
+ * fix typo in the template config file. (change option to options in pgdump)
36
+ * add example 'options' for tar in the template config file.
37
+ * do not try to upload more then 5G of data to S3. print error instead
38
+
39
+ 0.2.5
40
+
41
+ * Safety mesure: Disable overwrite of existing configuration keys except for multi-value keys
42
+ supported multi-value keys: skip_tables, exclude, files
data/Gemfile ADDED
@@ -0,0 +1,11 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in webtranslateit-safe.gemspec
4
+ gemspec
5
+
6
+ gem 'awesome_print'
7
+ gem 'rake'
8
+ gem 'rr', '~> 1.0.4'
9
+ gem 'rspec'
10
+ gem 'rubocop'
11
+ gem 'rubocop-rspec'
data/Gemfile.lock ADDED
@@ -0,0 +1,89 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ webtranslateit-safe (0.4.0)
5
+ aws-s3
6
+ cloudfiles
7
+ net-sftp
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ ast (2.4.2)
13
+ awesome_print (1.9.2)
14
+ aws-s3 (0.6.3)
15
+ builder
16
+ mime-types
17
+ xml-simple
18
+ builder (3.2.4)
19
+ cloudfiles (1.5.0.3)
20
+ json
21
+ diff-lcs (1.5.0)
22
+ json (2.6.3)
23
+ mime-types (3.4.1)
24
+ mime-types-data (~> 3.2015)
25
+ mime-types-data (3.2023.0218.1)
26
+ net-sftp (4.0.0)
27
+ net-ssh (>= 5.0.0, < 8.0.0)
28
+ net-ssh (7.1.0)
29
+ parallel (1.23.0)
30
+ parser (3.2.2.1)
31
+ ast (~> 2.4.1)
32
+ rainbow (3.1.1)
33
+ rake (13.0.6)
34
+ regexp_parser (2.8.0)
35
+ rexml (3.2.5)
36
+ rr (1.0.5)
37
+ rspec (3.12.0)
38
+ rspec-core (~> 3.12.0)
39
+ rspec-expectations (~> 3.12.0)
40
+ rspec-mocks (~> 3.12.0)
41
+ rspec-core (3.12.2)
42
+ rspec-support (~> 3.12.0)
43
+ rspec-expectations (3.12.3)
44
+ diff-lcs (>= 1.2.0, < 2.0)
45
+ rspec-support (~> 3.12.0)
46
+ rspec-mocks (3.12.5)
47
+ diff-lcs (>= 1.2.0, < 2.0)
48
+ rspec-support (~> 3.12.0)
49
+ rspec-support (3.12.0)
50
+ rubocop (1.51.0)
51
+ json (~> 2.3)
52
+ parallel (~> 1.10)
53
+ parser (>= 3.2.0.0)
54
+ rainbow (>= 2.2.2, < 4.0)
55
+ regexp_parser (>= 1.8, < 3.0)
56
+ rexml (>= 3.2.5, < 4.0)
57
+ rubocop-ast (>= 1.28.0, < 2.0)
58
+ ruby-progressbar (~> 1.7)
59
+ unicode-display_width (>= 2.4.0, < 3.0)
60
+ rubocop-ast (1.28.1)
61
+ parser (>= 3.2.1.0)
62
+ rubocop-capybara (2.18.0)
63
+ rubocop (~> 1.41)
64
+ rubocop-factory_bot (2.23.1)
65
+ rubocop (~> 1.33)
66
+ rubocop-rspec (2.22.0)
67
+ rubocop (~> 1.33)
68
+ rubocop-capybara (~> 2.17)
69
+ rubocop-factory_bot (~> 2.22)
70
+ ruby-progressbar (1.13.0)
71
+ unicode-display_width (2.4.2)
72
+ xml-simple (1.1.9)
73
+ rexml
74
+
75
+ PLATFORMS
76
+ arm64-darwin-22
77
+ x86_64-linux
78
+
79
+ DEPENDENCIES
80
+ awesome_print
81
+ rake
82
+ rr (~> 1.0.4)
83
+ rspec
84
+ rubocop
85
+ rubocop-rspec
86
+ webtranslateit-safe!
87
+
88
+ BUNDLED WITH
89
+ 2.4.13