simp-beaker-helpers 1.18.8

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 (56) hide show
  1. checksums.yaml +7 -0
  2. data/.fixtures.yml +8 -0
  3. data/.gitignore +8 -0
  4. data/.gitlab-ci.yml +163 -0
  5. data/.rspec +4 -0
  6. data/.rubocop.yml +546 -0
  7. data/.travis.yml +36 -0
  8. data/CHANGELOG.md +231 -0
  9. data/Gemfile +51 -0
  10. data/LICENSE +27 -0
  11. data/README.md +543 -0
  12. data/Rakefile +151 -0
  13. data/files/pki/clean.sh +1 -0
  14. data/files/pki/make.sh +101 -0
  15. data/files/pki/template_ca.cnf +259 -0
  16. data/files/pki/template_host.cnf +263 -0
  17. data/files/puppet-agent-versions.yaml +46 -0
  18. data/lib/simp/beaker_helpers.rb +1231 -0
  19. data/lib/simp/beaker_helpers/constants.rb +25 -0
  20. data/lib/simp/beaker_helpers/inspec.rb +328 -0
  21. data/lib/simp/beaker_helpers/snapshot.rb +156 -0
  22. data/lib/simp/beaker_helpers/ssg.rb +383 -0
  23. data/lib/simp/beaker_helpers/version.rb +5 -0
  24. data/lib/simp/beaker_helpers/windows.rb +16 -0
  25. data/lib/simp/rake/beaker.rb +269 -0
  26. data/simp-beaker-helpers.gemspec +38 -0
  27. data/spec/acceptance/nodesets/default.yml +32 -0
  28. data/spec/acceptance/suites/default/check_puppet_version_spec.rb +23 -0
  29. data/spec/acceptance/suites/default/enable_fips_spec.rb +23 -0
  30. data/spec/acceptance/suites/default/fixture_modules_spec.rb +22 -0
  31. data/spec/acceptance/suites/default/install_simp_deps_repo_spec.rb +43 -0
  32. data/spec/acceptance/suites/default/nodesets +1 -0
  33. data/spec/acceptance/suites/default/pki_tests_spec.rb +55 -0
  34. data/spec/acceptance/suites/default/set_hieradata_on_spec.rb +33 -0
  35. data/spec/acceptance/suites/default/write_hieradata_to_spec.rb +33 -0
  36. data/spec/acceptance/suites/fips_from_fixtures/00_default_spec.rb +63 -0
  37. data/spec/acceptance/suites/fips_from_fixtures/metadata.yml +2 -0
  38. data/spec/acceptance/suites/fips_from_fixtures/nodesets +1 -0
  39. data/spec/acceptance/suites/offline/00_default_spec.rb +165 -0
  40. data/spec/acceptance/suites/offline/README +2 -0
  41. data/spec/acceptance/suites/offline/nodesets/default.yml +26 -0
  42. data/spec/acceptance/suites/puppet_collections/00_default_spec.rb +25 -0
  43. data/spec/acceptance/suites/puppet_collections/metadata.yml +2 -0
  44. data/spec/acceptance/suites/puppet_collections/nodesets/default.yml +30 -0
  45. data/spec/acceptance/suites/snapshot/00_snapshot_test_spec.rb +82 -0
  46. data/spec/acceptance/suites/snapshot/10_general_usage_spec.rb +56 -0
  47. data/spec/acceptance/suites/snapshot/nodesets +1 -0
  48. data/spec/acceptance/suites/windows/00_default_spec.rb +119 -0
  49. data/spec/acceptance/suites/windows/metadata.yml +2 -0
  50. data/spec/acceptance/suites/windows/nodesets/default.yml +33 -0
  51. data/spec/acceptance/suites/windows/nodesets/win2016.yml +35 -0
  52. data/spec/acceptance/suites/windows/nodesets/win2019.yml +34 -0
  53. data/spec/lib/simp/beaker_helpers_spec.rb +216 -0
  54. data/spec/spec_helper.rb +100 -0
  55. data/spec/spec_helper_acceptance.rb +25 -0
  56. metadata +243 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: aa50a0956fc8dd2198160f50de04d9beb7550040c2bac91a9ac539a75c1cc094
4
+ data.tar.gz: 4de6d37c95c4484e72dbe48f3bb47e190749701e46fc48ec20e56464b31dee56
5
+ SHA512:
6
+ metadata.gz: f98eaa266f7b9eeb508f0c6924221a98d358d0fb7da1de34ec90b61cd79eb325cc3d2f388365bafccbc0f4d6fdad13eefbd19192631ecb42ddbb3360c46114c7
7
+ data.tar.gz: f3b0ced49cd92655f45378c46061e20d23a6295722d31f2a9bbeef46375b74d2b931c6ca6a3af5bad0e7cd0b04a4c0848eac98b9891b1385f0267811b50def2a
@@ -0,0 +1,8 @@
1
+ ---
2
+ fixtures:
3
+ # Needed for Hiera v5 to work
4
+ forge_modules:
5
+ compliance_markup: "simp/compliance_markup"
6
+ repositories:
7
+ stdlib: "https://github.com/simp/puppetlabs-stdlib"
8
+
@@ -0,0 +1,8 @@
1
+ *.gem
2
+ *.swp
3
+ Gemfile.lock
4
+ .bundle/
5
+ *.old
6
+ .vagrant
7
+ /log
8
+ /spec/fixtures
@@ -0,0 +1,163 @@
1
+ ---
2
+ .cache_bundler: &cache_bundler
3
+ cache:
4
+ untracked: true
5
+ # A broad attempt at caching between runs (ala Travis CI)
6
+ key: "${CI_PROJECT_NAMESPACE}__bundler"
7
+ paths:
8
+ - '.vendor'
9
+ - 'vendor'
10
+
11
+ .setup_bundler_env: &setup_bundler_env
12
+ before_script:
13
+ - 'echo Files in cache: $(find .vendor | wc -l) || :'
14
+ - 'export GEM_HOME=.vendor/gem_install'
15
+ - 'export BUNDLE_CACHE_PATH=.vendor/bundler'
16
+ - 'declare GEM_BUNDLER_VER=(-v ''~> ${BUNDLER_VERSION:-1.16.0}'')'
17
+ - declare GEM_INSTALL=(gem install --no-document)
18
+ - declare BUNDLER_INSTALL=(bundle install --no-binstubs --jobs $(nproc) --path=.vendor "${FLAGS[@]}")
19
+ - gem list -ie "${GEM_BUNDLE_VER[@]}" --silent bundler || "${GEM_INSTALL[@]}" --local "${GEM_BUNDLE_VER[@]}" bundler || "${GEM_INSTALL[@]}" "${GEM_BUNDLE_VER[@]}" bundler
20
+ - 'rm -rf pkg/ || :'
21
+ - bundle check || rm -f Gemfile.lock && ("${BUNDLER_INSTALL[@]}" --local || "${BUNDLER_INSTALL[@]}")
22
+
23
+
24
+ .validation_checks: &validation_checks
25
+ script:
26
+ - bundle exec rake syntax
27
+ - bundle exec rake check:dot_underscore
28
+ - bundle exec rake check:test_file
29
+ - bundle exec rake lint
30
+ # - bundle exec rake pkg:check_version
31
+ # - bundle exec rake pkg:compare_latest_tag
32
+
33
+ .spec_tests: &spec_tests
34
+ script:
35
+ - bundle exec rake spec
36
+
37
+ # To avoid running a prohibitive number of tests every commit,
38
+ # don't set this env var in your gitlab instance
39
+ .only_with_SIMP_FULL_MATRIX: &only_with_SIMP_FULL_MATRIX
40
+ only:
41
+ variables:
42
+ - $SIMP_FULL_MATRIX
43
+
44
+ stages:
45
+ - validation
46
+ - unit
47
+ - acceptance
48
+ - deploy
49
+
50
+ # Puppet 4.10 for PE 2017.2 support (EOL:2018-02-21)
51
+ # See: https://puppet.com/misc/puppet-enterprise-lifecycle
52
+ # --------------------------------------
53
+ 2_1-validation:
54
+ stage: validation
55
+ tags:
56
+ - docker
57
+ image: ruby:2.1
58
+ <<: *cache_bundler
59
+ <<: *setup_bundler_env
60
+ <<: *validation_checks
61
+
62
+ 2_1-unit:
63
+ stage: unit
64
+ tags:
65
+ - docker
66
+ image: ruby:2.1
67
+ <<: *cache_bundler
68
+ <<: *setup_bundler_env
69
+ <<: *spec_tests
70
+
71
+ # Puppet 4.10 for PE 2017.2 support (EOL:2018-02-21)
72
+ # See: https://puppet.com/misc/puppet-enterprise-lifecycle
73
+ # --------------------------------------
74
+ 2_4-validation:
75
+ stage: validation
76
+ tags:
77
+ - docker
78
+ image: ruby:2.4
79
+ <<: *cache_bundler
80
+ <<: *setup_bundler_env
81
+ <<: *validation_checks
82
+
83
+ 2_4-unit:
84
+ stage: unit
85
+ tags:
86
+ - docker
87
+ image: ruby:2.4
88
+ <<: *cache_bundler
89
+ <<: *setup_bundler_env
90
+ <<: *spec_tests
91
+
92
+
93
+ #=======================================================================
94
+ # Acceptance tests
95
+ default:
96
+ stage: acceptance
97
+ tags:
98
+ - beaker
99
+ <<: *cache_bundler
100
+ <<: *setup_bundler_env
101
+ script:
102
+ - bundle exec rake spec_clean
103
+ - bundle exec rake beaker:suites[default]
104
+
105
+ default-fips:
106
+ stage: acceptance
107
+ tags:
108
+ - beaker
109
+ <<: *cache_bundler
110
+ <<: *setup_bundler_env
111
+ variables:
112
+ BEAKER_fips: 'yes'
113
+ script:
114
+ - bundle exec rake spec_clean
115
+ - bundle exec rake beaker:suites[default]
116
+
117
+ fips_from_fixtures:
118
+ stage: acceptance
119
+ tags:
120
+ - beaker
121
+ <<: *cache_bundler
122
+ <<: *setup_bundler_env
123
+ variables:
124
+ PUPPET_VERSION: '~> 5.3'
125
+ BEAKER_PUPPET_COLLECTION: 'puppet5'
126
+ script:
127
+ - bundle exec rake spec_clean
128
+ - bundle exec rake beaker:suites[fips_from_fixtures]
129
+
130
+ puppet_collections:
131
+ stage: acceptance
132
+ tags:
133
+ - beaker
134
+ <<: *cache_bundler
135
+ <<: *setup_bundler_env
136
+ variables:
137
+ PUPPET_VERSION: '~> 5.3'
138
+ BEAKER_PUPPET_COLLECTION: 'puppet5'
139
+ script:
140
+ - bundle exec rake spec_clean
141
+ - bundle exec rake beaker:suites[puppet_collections]
142
+
143
+ windows:
144
+ stage: acceptance
145
+ tags:
146
+ - beaker
147
+ <<: *cache_bundler
148
+ <<: *setup_bundler_env
149
+ script:
150
+ - bundle exec rake spec_clean
151
+ - bundle exec rake beaker:suites[windows]
152
+
153
+ snapshot:
154
+ stage: acceptance
155
+ tags:
156
+ - beaker
157
+ <<: *cache_bundler
158
+ <<: *setup_bundler_env
159
+ variables:
160
+ BEAKER_simp_snapshot: 'yes'
161
+ script:
162
+ - bundle exec rake spec_clean
163
+ - bundle exec rake beaker:suites[snapshot]
data/.rspec ADDED
@@ -0,0 +1,4 @@
1
+ --format documentation
2
+ --fail-fast
3
+ --color
4
+ --order default
@@ -0,0 +1,546 @@
1
+ require: rubocop-rspec
2
+ AllCops:
3
+ TargetRubyVersion: 2.4
4
+ Include:
5
+ - ./**/*.rb
6
+ Exclude:
7
+ - files/**/*
8
+ - vendor/**/*
9
+ - .vendor/**/*
10
+ - pkg/**/*
11
+ - spec/fixtures/**/*
12
+ - Gemfile
13
+ - Rakefile
14
+ - Guardfile
15
+ - Vagrantfile
16
+ Lint/ConditionPosition:
17
+ Enabled: True
18
+
19
+ Lint/ElseLayout:
20
+ Enabled: True
21
+
22
+ Lint/UnreachableCode:
23
+ Enabled: True
24
+
25
+ Lint/UselessComparison:
26
+ Enabled: True
27
+
28
+ Lint/EnsureReturn:
29
+ Enabled: True
30
+
31
+ Lint/HandleExceptions:
32
+ Enabled: True
33
+
34
+ Lint/LiteralAsCondition:
35
+ Enabled: True
36
+
37
+ Lint/ShadowingOuterLocalVariable:
38
+ Enabled: True
39
+
40
+ Lint/LiteralInInterpolation:
41
+ Enabled: True
42
+
43
+ Style/HashSyntax:
44
+ Enabled: False
45
+
46
+ Style/RedundantReturn:
47
+ Enabled: True
48
+
49
+ Layout/EndOfLine:
50
+ Enabled: False
51
+
52
+ Lint/AmbiguousOperator:
53
+ Enabled: True
54
+
55
+ Lint/AssignmentInCondition:
56
+ Enabled: True
57
+
58
+ Layout/SpaceBeforeComment:
59
+ Enabled: True
60
+
61
+ Style/AndOr:
62
+ Enabled: True
63
+
64
+ Style/RedundantSelf:
65
+ Enabled: True
66
+
67
+ Metrics/BlockLength:
68
+ Enabled: False
69
+
70
+ # Method length is not necessarily an indicator of code quality
71
+ Metrics/MethodLength:
72
+ Enabled: False
73
+
74
+ # Module length is not necessarily an indicator of code quality
75
+ Metrics/ModuleLength:
76
+ Enabled: False
77
+
78
+ Style/WhileUntilModifier:
79
+ Enabled: True
80
+
81
+ Lint/AmbiguousRegexpLiteral:
82
+ Enabled: True
83
+
84
+ Security/Eval:
85
+ Enabled: True
86
+
87
+ Lint/BlockAlignment:
88
+ Enabled: True
89
+
90
+ Lint/DefEndAlignment:
91
+ Enabled: True
92
+
93
+ Lint/EndAlignment:
94
+ Enabled: True
95
+
96
+ Lint/DeprecatedClassMethods:
97
+ Enabled: True
98
+
99
+ Lint/Loop:
100
+ Enabled: True
101
+
102
+ Lint/ParenthesesAsGroupedExpression:
103
+ Enabled: True
104
+
105
+ Lint/RescueException:
106
+ Enabled: True
107
+
108
+ Lint/StringConversionInInterpolation:
109
+ Enabled: True
110
+
111
+ Lint/UnusedBlockArgument:
112
+ Enabled: True
113
+
114
+ Lint/UnusedMethodArgument:
115
+ Enabled: True
116
+
117
+ Lint/UselessAccessModifier:
118
+ Enabled: True
119
+
120
+ Lint/UselessAssignment:
121
+ Enabled: True
122
+
123
+ Lint/Void:
124
+ Enabled: True
125
+
126
+ Layout/AccessModifierIndentation:
127
+ Enabled: True
128
+
129
+ Naming/AccessorMethodName:
130
+ Enabled: True
131
+
132
+ Style/Alias:
133
+ Enabled: True
134
+
135
+ Layout/AlignArray:
136
+ Enabled: True
137
+
138
+ Layout/AlignHash:
139
+ Enabled: True
140
+
141
+ Layout/AlignParameters:
142
+ Enabled: True
143
+
144
+ Metrics/BlockNesting:
145
+ Enabled: True
146
+
147
+ Style/AsciiComments:
148
+ Enabled: True
149
+
150
+ Style/Attr:
151
+ Enabled: True
152
+
153
+ Style/BracesAroundHashParameters:
154
+ Enabled: True
155
+
156
+ Style/CaseEquality:
157
+ Enabled: True
158
+
159
+ Layout/CaseIndentation:
160
+ Enabled: True
161
+
162
+ Style/CharacterLiteral:
163
+ Enabled: True
164
+
165
+ Naming/ClassAndModuleCamelCase:
166
+ Enabled: True
167
+
168
+ Style/ClassAndModuleChildren:
169
+ Enabled: False
170
+
171
+ Style/ClassCheck:
172
+ Enabled: True
173
+
174
+ # Class length is not necessarily an indicator of code quality
175
+ Metrics/ClassLength:
176
+ Enabled: False
177
+
178
+ Style/ClassMethods:
179
+ Enabled: True
180
+
181
+ Style/ClassVars:
182
+ Enabled: True
183
+
184
+ Style/WhenThen:
185
+ Enabled: True
186
+
187
+ Style/WordArray:
188
+ Enabled: True
189
+
190
+ Style/UnneededPercentQ:
191
+ Enabled: True
192
+
193
+ Layout/Tab:
194
+ Enabled: True
195
+
196
+ Layout/SpaceBeforeSemicolon:
197
+ Enabled: True
198
+
199
+ Layout/TrailingBlankLines:
200
+ Enabled: True
201
+
202
+ Layout/SpaceInsideBlockBraces:
203
+ Enabled: True
204
+
205
+ Layout/SpaceInsideHashLiteralBraces:
206
+ Enabled: True
207
+
208
+ Layout/SpaceInsideParens:
209
+ Enabled: True
210
+
211
+ Layout/LeadingCommentSpace:
212
+ Enabled: True
213
+
214
+ Layout/SpaceBeforeFirstArg:
215
+ Enabled: True
216
+
217
+ Layout/SpaceAfterColon:
218
+ Enabled: True
219
+
220
+ Layout/SpaceAfterComma:
221
+ Enabled: True
222
+
223
+ Layout/SpaceAfterMethodName:
224
+ Enabled: True
225
+
226
+ Layout/SpaceAfterNot:
227
+ Enabled: True
228
+
229
+ Layout/SpaceAfterSemicolon:
230
+ Enabled: True
231
+
232
+ Layout/SpaceAroundEqualsInParameterDefault:
233
+ Enabled: True
234
+
235
+ Layout/SpaceAroundOperators:
236
+ Enabled: True
237
+
238
+ Layout/SpaceBeforeBlockBraces:
239
+ Enabled: True
240
+
241
+ Layout/SpaceBeforeComma:
242
+ Enabled: True
243
+
244
+ Style/CollectionMethods:
245
+ Enabled: True
246
+
247
+ Layout/CommentIndentation:
248
+ Enabled: True
249
+
250
+ Style/ColonMethodCall:
251
+ Enabled: True
252
+
253
+ Style/CommentAnnotation:
254
+ Enabled: True
255
+
256
+ # 'Complexity' is very relative
257
+ Metrics/CyclomaticComplexity:
258
+ Enabled: False
259
+
260
+ Naming/ConstantName:
261
+ Enabled: True
262
+
263
+ Style/Documentation:
264
+ Enabled: False
265
+
266
+ Style/DefWithParentheses:
267
+ Enabled: True
268
+
269
+ Style/PreferredHashMethods:
270
+ Enabled: True
271
+
272
+ Layout/DotPosition:
273
+ EnforcedStyle: trailing
274
+
275
+ Style/DoubleNegation:
276
+ Enabled: True
277
+
278
+ Style/EachWithObject:
279
+ Enabled: True
280
+
281
+ Layout/EmptyLineBetweenDefs:
282
+ Enabled: True
283
+
284
+ Layout/IndentArray:
285
+ Enabled: True
286
+
287
+ Layout/IndentHash:
288
+ Enabled: True
289
+
290
+ Layout/IndentationConsistency:
291
+ Enabled: True
292
+
293
+ Layout/IndentationWidth:
294
+ Enabled: True
295
+
296
+ Layout/EmptyLines:
297
+ Enabled: True
298
+
299
+ Layout/EmptyLinesAroundAccessModifier:
300
+ Enabled: True
301
+
302
+ Style/EmptyLiteral:
303
+ Enabled: True
304
+
305
+ # Configuration parameters: AllowURI, URISchemes.
306
+ Layout/TrailingWhitespace:
307
+ Enabled: True
308
+
309
+ Metrics/LineLength:
310
+ Enabled: False
311
+
312
+ Naming/BinaryOperatorParameterName:
313
+ Enabled: True
314
+
315
+ Style/CommandLiteral:
316
+ EnforcedStyle: percent_x
317
+ Enabled: True
318
+
319
+ Style/MethodCallWithoutArgsParentheses:
320
+ Enabled: True
321
+
322
+ Style/MethodDefParentheses:
323
+ Enabled: True
324
+
325
+ Style/LineEndConcatenation:
326
+ Enabled: True
327
+
328
+ Style/StringLiterals:
329
+ Enabled: True
330
+
331
+ Style/TrailingCommaInArguments:
332
+ Enabled: True
333
+
334
+ Style/TrailingCommaInLiteral:
335
+ Enabled: True
336
+
337
+ Style/GlobalVars:
338
+ Enabled: True
339
+
340
+ Style/GuardClause:
341
+ Enabled: True
342
+
343
+ Style/IfUnlessModifier:
344
+ Enabled: True
345
+
346
+ Style/MultilineIfThen:
347
+ Enabled: True
348
+
349
+ Style/NegatedIf:
350
+ Enabled: True
351
+
352
+ Style/NegatedWhile:
353
+ Enabled: True
354
+
355
+ Style/Next:
356
+ Enabled: True
357
+
358
+ Style/SingleLineBlockParams:
359
+ Enabled: True
360
+
361
+ Style/SingleLineMethods:
362
+ Enabled: True
363
+
364
+ Style/SpecialGlobalVars:
365
+ Enabled: True
366
+
367
+ Style/TrivialAccessors:
368
+ Enabled: True
369
+
370
+ Style/UnlessElse:
371
+ Enabled: True
372
+
373
+ Style/VariableInterpolation:
374
+ Enabled: True
375
+
376
+ Naming/VariableName:
377
+ Enabled: True
378
+
379
+ Style/WhileUntilDo:
380
+ Enabled: True
381
+
382
+ Style/EvenOdd:
383
+ Enabled: True
384
+
385
+ Naming/FileName:
386
+ Enabled: True
387
+
388
+ Style/For:
389
+ Enabled: True
390
+
391
+ Style/Lambda:
392
+ Enabled: True
393
+
394
+ Naming/MethodName:
395
+ Enabled: True
396
+
397
+ Style/MultilineTernaryOperator:
398
+ Enabled: True
399
+
400
+ Style/NestedTernaryOperator:
401
+ Enabled: True
402
+
403
+ Style/NilComparison:
404
+ Enabled: True
405
+
406
+ Style/FormatString:
407
+ Enabled: True
408
+
409
+ Style/MultilineBlockChain:
410
+ Enabled: True
411
+
412
+ Style/Semicolon:
413
+ Enabled: True
414
+
415
+ Style/SignalException:
416
+ Enabled: True
417
+
418
+ Style/NonNilCheck:
419
+ Enabled: True
420
+
421
+ Style/Not:
422
+ Enabled: True
423
+
424
+ Style/NumericLiterals:
425
+ Enabled: True
426
+
427
+ Style/OneLineConditional:
428
+ Enabled: True
429
+
430
+ Style/ParenthesesAroundCondition:
431
+ Enabled: True
432
+
433
+ Style/PercentLiteralDelimiters:
434
+ Enabled: True
435
+
436
+ Style/PerlBackrefs:
437
+ Enabled: True
438
+
439
+ Naming/PredicateName:
440
+ Enabled: True
441
+
442
+ Style/RedundantException:
443
+ Enabled: True
444
+
445
+ Style/SelfAssignment:
446
+ Enabled: True
447
+
448
+ Style/Proc:
449
+ Enabled: True
450
+
451
+ Style/RaiseArgs:
452
+ Enabled: True
453
+
454
+ Style/RedundantBegin:
455
+ Enabled: True
456
+
457
+ Style/RescueModifier:
458
+ Enabled: True
459
+
460
+ # based on https://github.com/voxpupuli/modulesync_config/issues/168
461
+ Style/RegexpLiteral:
462
+ EnforcedStyle: percent_r
463
+ Enabled: True
464
+
465
+ Lint/UnderscorePrefixedVariableName:
466
+ Enabled: True
467
+
468
+ Metrics/ParameterLists:
469
+ Enabled: False
470
+
471
+ Lint/RequireParentheses:
472
+ Enabled: True
473
+
474
+ Style/ModuleFunction:
475
+ Enabled: True
476
+
477
+ Lint/Debugger:
478
+ Enabled: True
479
+
480
+ Style/IfWithSemicolon:
481
+ Enabled: True
482
+
483
+ Style/Encoding:
484
+ Enabled: True
485
+
486
+ Style/BlockDelimiters:
487
+ Enabled: True
488
+
489
+ Layout/MultilineBlockLayout:
490
+ Enabled: True
491
+
492
+ # 'Complexity' is very relative
493
+ Metrics/AbcSize:
494
+ Enabled: False
495
+
496
+ # 'Complexity' is very relative
497
+ Metrics/PerceivedComplexity:
498
+ Enabled: False
499
+
500
+ Lint/UselessAssignment:
501
+ Enabled: True
502
+
503
+ Layout/ClosingParenthesisIndentation:
504
+ Enabled: True
505
+
506
+ # RSpec
507
+
508
+ RSpec/BeforeAfterAll:
509
+ Exclude:
510
+ - spec/acceptance/**/*
511
+
512
+ # We don't use rspec in this way
513
+ RSpec/DescribeClass:
514
+ Enabled: False
515
+
516
+ # Example length is not necessarily an indicator of code quality
517
+ RSpec/ExampleLength:
518
+ Enabled: False
519
+
520
+ RSpec/NamedSubject:
521
+ Enabled: False
522
+
523
+ # disabled for now since they cause a lot of issues
524
+ # these issues aren't easy to fix
525
+ RSpec/RepeatedDescription:
526
+ Enabled: False
527
+
528
+ RSpec/NestedGroups:
529
+ Enabled: False
530
+
531
+ # this is broken on ruby1.9
532
+ Layout/IndentHeredoc:
533
+ Enabled: False
534
+
535
+ # disable Yaml safe_load. This is needed to support ruby2.0.0 development envs
536
+ Security/YAMLLoad:
537
+ Enabled: false
538
+
539
+ # This affects hiera interpolation, as well as some configs that we push.
540
+ Style/FormatStringToken:
541
+ Enabled: false
542
+
543
+ # This is useful, but sometimes a little too picky about where unit tests files
544
+ # are located.
545
+ RSpec/FilePath:
546
+ Enabled: false