simp-beaker-helpers 1.18.8

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