onceover 3.22.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +17 -0
  3. data/.github/workflows/release.yaml +25 -17
  4. data/.github/workflows/tests.yaml +30 -4
  5. data/.gitignore +2 -1
  6. data/.rubocop.yml +4 -704
  7. data/.rubocop_todo.yml +828 -0
  8. data/CHANGELOG.md +1036 -0
  9. data/Gemfile +7 -1
  10. data/LICENSE +202 -0
  11. data/README.md +81 -35
  12. data/Rakefile +23 -14
  13. data/features/auto_vendored.feature +27 -0
  14. data/features/step_definitions/common.rb +5 -5
  15. data/features/support/cache_helper.rb +0 -1
  16. data/features/support/command_helper.rb +0 -2
  17. data/features/support/controlrepo_helper.rb +0 -2
  18. data/lib/onceover/beaker/spec_helper.rb +7 -7
  19. data/lib/onceover/beaker.rb +9 -12
  20. data/lib/onceover/cli/run.rb +1 -0
  21. data/lib/onceover/controlrepo.rb +19 -24
  22. data/lib/onceover/deploy.rb +29 -2
  23. data/lib/onceover/group.rb +1 -3
  24. data/lib/onceover/logger.rb +3 -3
  25. data/lib/onceover/node.rb +0 -2
  26. data/lib/onceover/rake_tasks.rb +9 -4
  27. data/lib/onceover/rspec/formatters.rb +3 -4
  28. data/lib/onceover/test.rb +1 -2
  29. data/lib/onceover/testconfig.rb +2 -2
  30. data/lib/onceover/vendored_modules.rb +186 -0
  31. data/onceover.gemspec +24 -21
  32. data/spec/fixtures/controlrepos/caching/spec/factsets/README.md +1 -1
  33. data/spec/fixtures/controlrepos/caching/spec/pre_conditions/README.md +1 -1
  34. data/spec/fixtures/controlrepos/factsets/spec/factsets/README.md +1 -1
  35. data/spec/fixtures/controlrepos/puppet_controlrepo/Gemfile +1 -1
  36. data/spec/fixtures/controlrepos/vendored/Puppetfile +3 -0
  37. data/spec/fixtures/controlrepos/vendored/Puppetfile.cron +5 -0
  38. data/spec/fixtures/controlrepos/vendored/environment.conf +1 -0
  39. data/spec/fixtures/controlrepos/vendored/site-modules/role/manifests/cron.pp +9 -0
  40. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/augeas_core-puppet_agent-7.30.0.json +1 -0
  41. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/augeas_core-puppet_agent-8.6.0.json +1 -0
  42. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/cron_core-puppet_agent-7.30.0.json +1 -0
  43. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/cron_core-puppet_agent-8.6.0.json +1 -0
  44. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/host_core-puppet_agent-7.30.0.json +1 -0
  45. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/host_core-puppet_agent-8.6.0.json +1 -0
  46. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/mount_core-puppet_agent-7.30.0.json +1 -0
  47. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/mount_core-puppet_agent-8.6.0.json +1 -0
  48. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/repo_tree-puppet_agent-7.30.0.json +1 -0
  49. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/repo_tree-puppet_agent-8.6.0.json +1 -0
  50. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/scheduled_task-puppet_agent-7.30.0.json +1 -0
  51. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/scheduled_task-puppet_agent-8.6.0.json +1 -0
  52. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/selinux_core-puppet_agent-7.30.0.json +1 -0
  53. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/selinux_core-puppet_agent-8.6.0.json +1 -0
  54. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/sshkeys_core-puppet_agent-7.30.0.json +1 -0
  55. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/sshkeys_core-puppet_agent-8.6.0.json +1 -0
  56. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/yumrepo_core-puppet_agent-7.30.0.json +1 -0
  57. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/yumrepo_core-puppet_agent-8.6.0.json +1 -0
  58. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zfs_core-puppet_agent-7.30.0.json +1 -0
  59. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zfs_core-puppet_agent-8.6.0.json +1 -0
  60. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zone_core-puppet_agent-7.30.0.json +1 -0
  61. data/spec/fixtures/controlrepos/vendored/spec/vendored_modules/zone_core-puppet_agent-8.6.0.json +1 -0
  62. data/spec/onceover/controlrepo_spec.rb +1 -1
  63. data/templates/factsets_README.md.erb +1 -1
  64. data/templates/pre_conditions_README.md.erb +1 -1
  65. metadata +56 -9
data/.rubocop.yml CHANGED
@@ -1,705 +1,5 @@
1
- AllCops:
2
- TargetRubyVersion: 2.4 # this should match the oldest version in .github/workflows/tests.yaml's matrix
3
- NewCops: enable
4
- Include:
5
- - "lib/**/*.rb"
6
- - "ext/**/*.rb"
7
- Exclude:
8
- - "**/*.erb"
9
- - "acceptance/**/*"
10
- - "autotest/**/*"
11
- - "spec/**/*"
12
- - "tasks/**/*"
13
- - "vendor/**/*"
1
+ ---
2
+ inherit_from: .rubocop_todo.yml
14
3
 
15
- # Turning off some failing checks until it is determined which one is breaking things
16
- Style/AccessorGrouping:
17
- Enabled: false
18
- Style/CaseLikeIf:
19
- Enabled: false
20
- Style/GlobalStdStream:
21
- Enabled: false
22
- Style/RedundantRegexpCharacterClass:
23
- Enabled: false
24
- Style/SoleNestedConditional:
25
- Enabled: false
26
- Style/StringConcatenation:
27
- Enabled: false
28
- # end turning things off for debugging
29
-
30
- Layout/ConditionPosition:
31
- Enabled: true
32
-
33
- Lint/ElseLayout:
34
- Enabled: true
35
-
36
- Lint/UnreachableCode:
37
- Enabled: true
38
-
39
- Lint/BinaryOperatorWithIdenticalOperands:
40
- Enabled: true
41
-
42
- # MAYBE useful - no return inside ensure block.
43
- Lint/EnsureReturn:
44
- Enabled: false
45
-
46
- # MAYBE useful - errors when rescue {} happens.
47
- Lint/SuppressedException:
48
- Enabled: false
49
-
50
- Lint/ShadowingOuterLocalVariable:
51
- Enabled: true
52
-
53
- # Can catch complicated strings.
54
- Lint/LiteralInInterpolation:
55
- Enabled: true
56
-
57
- # DISABLED really useless. Detects return as last statement.
58
- Style/RedundantReturn:
59
- Enabled: false
60
-
61
- # Disabled. Throws an error trying to run.
62
- Style/RedundantParentheses:
63
- Enabled: false
64
-
65
- # DISABLED since the instances do not seem to indicate any specific errors.
66
- Lint/AmbiguousOperator:
67
- Enabled: false
68
-
69
- # DISABLED since for all the checked, we are basically checking nil
70
- # TODO: Change the checking so that if the variable being assigned to has
71
- # a value ALREADY, then raise an error.
72
- Lint/AssignmentInCondition:
73
- Enabled: false
74
-
75
- # DISABLED - not useful
76
- Layout/SpaceBeforeComment:
77
- Enabled: false
78
-
79
- # DISABLED - not useful
80
- Style/HashSyntax:
81
- Enabled: false
82
-
83
- # USES: as shortcut for non nil&valid checking a = x() and a.empty?
84
- # DISABLED - not useful
85
- Style/AndOr:
86
- Enabled: false
87
-
88
- # DISABLED - not useful
89
- Style/RedundantSelf:
90
- Enabled: false
91
-
92
- # DISABLED - not useful
93
- Metrics/MethodLength:
94
- Enabled: false
95
-
96
- Metrics/BlockLength:
97
- Enabled: false
98
-
99
- # DISABLED - not useful
100
- Style/WhileUntilModifier:
101
- Enabled: false
102
-
103
- # DISABLED - the offender is just haskell envy
104
- Lint/AmbiguousRegexpLiteral:
105
- Enabled: false
106
-
107
- # DISABLED
108
- Security/Eval:
109
- Enabled: false
110
-
111
- # DISABLED
112
- Layout/BlockAlignment:
113
- Enabled: false
114
-
115
- # DISABLED
116
- Layout/DefEndAlignment:
117
- Enabled: false
118
-
119
- # DISABLED
120
- Layout/EndAlignment:
121
- Enabled: false
122
-
123
- # DISABLED
124
- Lint/DeprecatedClassMethods:
125
- Enabled: false
126
-
127
- # DISABLED
128
- Lint/Loop:
129
- Enabled: false
130
-
131
- # DISABLED
132
- Lint/ParenthesesAsGroupedExpression:
133
- Enabled: false
134
-
135
- Lint/RescueException:
136
- Enabled: false
137
-
138
- Lint/RedundantStringCoercion:
139
- Enabled: false
140
-
141
- Lint/UnusedBlockArgument:
142
- Enabled: false
143
-
144
- Lint/UnusedMethodArgument:
145
- Enabled: false
146
-
147
- # DISABLED - TODO
148
- Lint/UselessAccessModifier:
149
- Enabled: false
150
-
151
- # DISABLED - TODO
152
- Lint/UselessAssignment:
153
- Enabled: false
154
-
155
- # DISABLED - TODO
156
- Lint/Void:
157
- Enabled: false
158
-
159
- Layout/AccessModifierIndentation:
160
- Enabled: false
161
-
162
- Naming/AccessorMethodName:
163
- Enabled: false
164
-
165
- Style/Alias:
166
- Enabled: false
167
-
168
- Layout/ArrayAlignment:
169
- Enabled: false
170
-
171
- Layout/HashAlignment:
172
- Enabled: false
173
-
174
- Layout/ParameterAlignment:
175
- Enabled: false
176
-
177
- Layout/HeredocIndentation:
178
- Enabled: false
179
-
180
- Metrics/BlockNesting:
181
- Enabled: false
182
-
183
- Style/AsciiComments:
184
- Enabled: false
185
-
186
- Style/Attr:
187
- Enabled: false
188
-
189
- Style/CaseEquality:
190
- Enabled: false
191
-
192
- Style/SymbolArray:
193
- Enabled: false
194
-
195
- Style/EmptyCaseCondition:
196
- Enabled: false
197
-
198
- Layout/CaseIndentation:
199
- Enabled: false
200
-
201
- Layout/MultilineMethodCallBraceLayout:
202
- Enabled: false
203
-
204
- Style/CharacterLiteral:
205
- Enabled: false
206
-
207
- Naming/ClassAndModuleCamelCase:
208
- Enabled: false
209
-
210
- Style/ClassAndModuleChildren:
211
- Enabled: false
212
-
213
- Style/ClassCheck:
214
- Enabled: false
215
-
216
- Metrics/ClassLength:
217
- Enabled: false
218
-
219
- Style/ClassMethods:
220
- Enabled: false
221
-
222
- Style/ClassVars:
223
- Enabled: false
224
-
225
- Style/WhenThen:
226
- Enabled: false
227
-
228
- # DISABLED - not useful
229
- Style/WordArray:
230
- Enabled: false
231
-
232
- Style/RedundantPercentQ:
233
- Enabled: false
234
-
235
- Layout/IndentationStyle:
236
- Enabled: false
237
-
238
- Layout/SpaceBeforeSemicolon:
239
- Enabled: false
240
-
241
- Layout/TrailingEmptyLines:
242
- Enabled: false
243
-
244
- Layout/SpaceInsideBlockBraces:
245
- Enabled: false
246
-
247
- Layout/SpaceInsideHashLiteralBraces:
248
- Enabled: false
249
-
250
- Layout/SpaceInsideParens:
251
- Enabled: false
252
-
253
- Layout/LeadingCommentSpace:
254
- Enabled: false
255
-
256
- Layout/SpaceAfterColon:
257
- Enabled: false
258
-
259
- Layout/SpaceAfterComma:
260
- Enabled: false
261
-
262
- Layout/SpaceAroundKeyword:
263
- Enabled: false
264
-
265
- Layout/SpaceAfterMethodName:
266
- Enabled: false
267
-
268
- Layout/SpaceAfterNot:
269
- Enabled: false
270
-
271
- Layout/SpaceAfterSemicolon:
272
- Enabled: false
273
-
274
- Layout/SpaceAroundEqualsInParameterDefault:
275
- Enabled: false
276
-
277
- Layout/SpaceAroundOperators:
278
- Enabled: false
279
-
280
- Layout/SpaceBeforeBlockBraces:
281
- Enabled: false
282
-
283
- Layout/SpaceBeforeComma:
284
- Enabled: false
285
-
286
- Style/CollectionMethods:
287
- Enabled: false
288
-
289
- Layout/CommentIndentation:
290
- Enabled: false
291
-
292
- Style/ColonMethodCall:
293
- Enabled: false
294
-
295
- Style/CommentAnnotation:
296
- Enabled: false
297
-
298
- Metrics/CyclomaticComplexity:
299
- Enabled: false
300
-
301
- Naming/ConstantName:
302
- Enabled: false
303
-
304
- Style/Documentation:
305
- Enabled: false
306
-
307
- Style/DefWithParentheses:
308
- Enabled: false
309
-
310
- Style/PreferredHashMethods:
311
- Enabled: false
312
-
313
- Layout/DotPosition:
314
- Enabled: false
315
-
316
- # DISABLED - used for converting to bool
317
- Style/DoubleNegation:
318
- Enabled: false
319
-
320
- Style/EachWithObject:
321
- Enabled: false
322
-
323
- Layout/EmptyLineBetweenDefs:
324
- Enabled: false
325
-
326
- Layout/FirstArrayElementIndentation:
327
- Enabled: false
328
-
329
- Layout/FirstHashElementIndentation:
330
- Enabled: false
331
-
332
- Layout/IndentationConsistency:
333
- Enabled: false
334
-
335
- Layout/IndentationWidth:
336
- Enabled: false
337
-
338
- Layout/EmptyLines:
339
- Enabled: false
340
-
341
- Layout/EmptyLinesAroundAccessModifier:
342
- Enabled: false
343
-
344
- Style/EmptyLiteral:
345
- Enabled: false
346
-
347
- Layout/LineLength:
348
- Enabled: false
349
-
350
- Style/MethodCallWithoutArgsParentheses:
351
- Enabled: false
352
-
353
- Style/MethodDefParentheses:
354
- Enabled: false
355
-
356
- Style/LineEndConcatenation:
357
- Enabled: false
358
-
359
- Layout/TrailingWhitespace:
360
- Enabled: false
361
-
362
- Style/StringLiterals:
363
- Enabled: false
364
-
365
- Style/TrailingCommaInArrayLiteral:
366
- Enabled: false
367
-
368
- Style/TrailingCommaInHashLiteral:
369
- Enabled: false
370
-
371
- Style/TrailingCommaInArguments:
372
- Enabled: false
373
-
374
- Style/GlobalVars:
375
- Enabled: false
376
-
377
- Style/GuardClause:
378
- Enabled: false
379
-
380
- Style/IfUnlessModifier:
381
- Enabled: false
382
-
383
- Style/MultilineIfThen:
384
- Enabled: false
385
-
386
- Style/NegatedIf:
387
- Enabled: false
388
-
389
- Style/NegatedWhile:
390
- Enabled: false
391
-
392
- Style/Next:
393
- Enabled: false
394
-
395
- Style/SingleLineBlockParams:
396
- Enabled: false
397
-
398
- Style/SingleLineMethods:
399
- Enabled: false
400
-
401
- Style/SpecialGlobalVars:
402
- Enabled: false
403
-
404
- Style/TrivialAccessors:
405
- Enabled: false
406
-
407
- Style/UnlessElse:
408
- Enabled: false
409
-
410
- Style/VariableInterpolation:
411
- Enabled: false
412
-
413
- Naming/VariableName:
414
- Enabled: false
415
-
416
- Style/WhileUntilDo:
417
- Enabled: false
418
-
419
- Style/EvenOdd:
420
- Enabled: false
421
-
422
- Naming/FileName:
423
- Enabled: false
424
-
425
- Style/For:
426
- Enabled: false
427
-
428
- Style/Lambda:
429
- Enabled: false
430
-
431
- Naming/MethodName:
432
- Enabled: false
433
-
434
- Style/MultilineTernaryOperator:
435
- Enabled: false
436
-
437
- Style/NestedTernaryOperator:
438
- Enabled: false
439
-
440
- Style/NilComparison:
441
- Enabled: false
442
-
443
- Style/FormatString:
444
- Enabled: false
445
-
446
- Style/MultilineBlockChain:
447
- Enabled: false
448
-
449
- Style/Semicolon:
450
- Enabled: false
451
-
452
- Style/SignalException:
453
- Enabled: false
454
-
455
- Style/NonNilCheck:
456
- Enabled: false
457
-
458
- Style/Not:
459
- Enabled: false
460
-
461
- Style/NumericLiterals:
462
- Enabled: false
463
-
464
- Style/OneLineConditional:
465
- Enabled: false
466
-
467
- Naming/BinaryOperatorParameterName:
468
- Enabled: false
469
-
470
- Style/ParenthesesAroundCondition:
471
- Enabled: false
472
-
473
- Style/PercentLiteralDelimiters:
474
- Enabled: false
475
-
476
- Style/PerlBackrefs:
477
- Enabled: false
478
-
479
- Naming/PredicateName:
480
- Enabled: false
481
-
482
- Style/RedundantException:
483
- Enabled: false
484
-
485
- Style/SelfAssignment:
486
- Enabled: false
487
-
488
- Style/Proc:
489
- Enabled: false
490
-
491
- Style/RaiseArgs:
492
- Enabled: false
493
-
494
- Style/RedundantBegin:
495
- Enabled: false
496
-
497
- Style/RescueModifier:
498
- Enabled: false
499
-
500
- Style/RegexpLiteral:
501
- Enabled: false
502
-
503
- Lint/UnderscorePrefixedVariableName:
504
- Enabled: false
505
-
506
- Metrics/ParameterLists:
507
- Enabled: false
508
-
509
- Lint/RequireParentheses:
510
- Enabled: false
511
-
512
- Layout/SpaceBeforeFirstArg:
513
- Enabled: false
514
-
515
- Style/ModuleFunction:
516
- Enabled: false
517
-
518
- Lint/Debugger:
519
- Enabled: false
520
-
521
- Style/IfWithSemicolon:
522
- Enabled: false
523
-
524
- Style/Encoding:
525
- Enabled: false
526
-
527
- Metrics/PerceivedComplexity:
528
- Enabled: false
529
-
530
- Style/SymbolProc:
531
- Enabled: false
532
-
533
- Layout/SpaceInsideRangeLiteral:
534
- Enabled: false
535
-
536
- Style/InfiniteLoop:
537
- Enabled: false
538
-
539
- Style/BarePercentLiterals:
540
- Enabled: false
541
-
542
- Style/PercentQLiterals:
543
- Enabled: false
544
-
545
- Layout/MultilineBlockLayout:
546
- Enabled: false
547
-
548
- Metrics/AbcSize:
549
- Enabled: false
550
-
551
- Style/MutableConstant:
552
- Enabled: false
553
-
554
- Style/BlockDelimiters:
555
- Enabled: false
556
-
557
- Layout/EmptyLinesAroundClassBody:
558
- Enabled: false
559
-
560
- Style/ConditionalAssignment:
561
- Enabled: false
562
-
563
- Layout/ExtraSpacing:
564
- Enabled: false
565
-
566
- Layout/EmptyLinesAroundBlockBody:
567
- Enabled: false
568
-
569
- Layout/EmptyLinesAroundModuleBody:
570
- Enabled: false
571
-
572
- Layout/MultilineOperationIndentation:
573
- Enabled: false
574
-
575
- Style/EmptyElse:
576
- Enabled: false
577
-
578
- Style/StringLiteralsInInterpolation:
579
- Enabled: false
580
-
581
- Layout/MultilineMethodCallIndentation:
582
- Enabled: false
583
-
584
- Metrics/ModuleLength:
585
- Enabled: false
586
-
587
- Layout/EmptyLinesAroundMethodBody:
588
- Enabled: false
589
-
590
- Lint/IneffectiveAccessModifier:
591
- Enabled: false
592
-
593
- Layout/ClosingParenthesisIndentation:
594
- Enabled: false
595
-
596
- Style/RedundantInterpolation:
597
- Enabled: false
598
-
599
- Layout/ElseAlignment:
600
- Enabled: false
601
-
602
- Style/FrozenStringLiteralComment:
603
- Enabled: false
604
-
605
- Layout/FirstParameterIndentation:
606
- Enabled: false
607
-
608
- Style/IfInsideElse:
609
- Enabled: false
610
-
611
- Layout/AssignmentIndentation:
612
- Enabled: false
613
-
614
- Layout/SpaceAroundBlockParameters:
615
- Enabled: false
616
-
617
- Style/ParallelAssignment:
618
- Enabled: false
619
-
620
- Style/IdenticalConditionalBranches:
621
- Enabled: false
622
-
623
- Style/CommandLiteral:
624
- Enabled: false
625
-
626
- Lint/NestedMethodDefinition:
627
- Enabled: false
628
-
629
- Layout/SpaceInsideStringInterpolation:
630
- Enabled: false
631
-
632
- Style/NestedModifier:
633
- Enabled: false
634
-
635
- Lint/NonLocalExitFromIterator:
636
- Enabled: false
637
-
638
- Style/NestedParenthesizedCalls:
639
- Enabled: false
640
-
641
- Layout/RescueEnsureAlignment:
642
- Enabled: false
643
-
644
- Lint/DuplicateMethods:
645
- Enabled: false
646
-
647
- Style/TrailingUnderscoreVariable:
648
- Enabled: false
649
-
650
- Style/RedundantSortBy:
651
- Enabled: false
652
-
653
- Layout/InitialIndentation:
654
- Enabled: false
655
-
656
- Style/StructInheritance:
657
- Enabled: false
658
-
659
- Style/SymbolLiteral:
660
- Enabled: false
661
-
662
- Style/IfUnlessModifierOfIfUnless:
663
- Enabled: false
664
-
665
- Style/ZeroLengthPredicate:
666
- Enabled: false
667
-
668
- Bundler/OrderedGems:
669
- Enabled: false
670
-
671
- # Enforce LF line endings, even when on Windows
672
- Layout/EndOfLine:
673
- EnforcedStyle: lf
674
-
675
- Layout/SpaceAroundMethodCallOperator:
676
- Enabled: true
677
-
678
- Lint/RaiseException:
679
- Enabled: true
680
-
681
- Lint/StructNewOverride:
682
- Enabled: true
683
-
684
- Style/ExponentialNotation:
685
- Enabled: true
686
-
687
- Style/HashEachMethods:
688
- Enabled: true
689
-
690
- Style/HashTransformKeys:
691
- Enabled: true
692
-
693
- Style/HashTransformValues:
694
- Enabled: true
695
-
696
- # Not used becuase too new for support matrix
697
- Style/NumericPredicate:
698
- Enabled: false
699
-
700
- # Not used becuase too new for support matrix
701
- Style/SafeNavigation:
702
- Enabled: false
703
-
704
- Style/MixinUsage:
705
- Enabled: false
4
+ inherit_gem:
5
+ voxpupuli-rubocop: rubocop.yml