cfn-nag 0.4.10 → 0.4.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a7c5be6d25789f38b37bbde75e1b732dbec718ef49f0121efbd61f4032cd1f37
4
- data.tar.gz: 48f3345f39d00e23b7448b5316dc5e77993afd087974c237fb7e655c2a7cb73c
3
+ metadata.gz: c35d32f533c4b6fcf0b1efc441e31907685d27e65a9dd3fc99c9ef2eb9744ed6
4
+ data.tar.gz: 00b28123f542e1ba4d2e5739d86115b0817606da368a17558c99b75523468fa8
5
5
  SHA512:
6
- metadata.gz: 84f04c28790ed9efc963455ca677acb1886f3b4af262efb0ac32e078d367393c7f6eca51bf59ac49ee97f0bb68133af4d2adde192535656483ec64c149cda9e8
7
- data.tar.gz: bfa559caa6910cf0e1f49d03499b3254c13857c6ae677f61697a932c41a629be88e8803caddfd775bc88773664cea092f4c2c8ae7d709b55bd5973f3263372c9
6
+ metadata.gz: 87fddfa8917f0b3060a54b6447ea5106c894a4337f2217850a461607b84afcf07083a4a8f3d2d0cfb9322fa589c6632e0d8698e2ed766b8fe90f242b3768e8bf
7
+ data.tar.gz: 710aadc37b551e762e36eb165d45b3d56a05d3e0ed1910e3ffd249b7af7d71f8c4ae4d69855e9fccff3acbf63baafcbd6eebe0ca540894c35800c4bdcbd8a82e
@@ -13,7 +13,7 @@ class ElastiCacheReplicationGroupTransitEncryptionRule < BooleanBaseRule
13
13
  end
14
14
 
15
15
  def rule_id
16
- 'F24'
16
+ 'F33'
17
17
  end
18
18
 
19
19
  def resource_type
@@ -8,10 +8,24 @@ class RulesView
8
8
  puts
9
9
  puts 'FAILING VIOLATIONS:'
10
10
  emit_failings rule_registry.failings, profile
11
+
12
+ if rule_registry.duplicate_ids?
13
+ emit_duplicates(rule_registry.duplicate_ids)
14
+ exit 1
15
+ end
11
16
  end
12
17
 
13
18
  private
14
19
 
20
+ def emit_duplicates(duplicates)
21
+ duplicates.each do |info|
22
+ puts '------------------'.red
23
+ puts "Rule ID conflict detected for #{info[:id]}.".red
24
+ puts "New rule: #{info[:new_message]}".red
25
+ puts "Registered rule: #{info[:registered_message]}".red
26
+ end
27
+ end
28
+
15
29
  def emit_warnings(warnings, profile)
16
30
  warnings.sort { |left, right| sort_id(left, right) }.each do |warning|
17
31
  if profile.nil?
@@ -3,10 +3,15 @@
3
3
  require_relative 'rule_definition'
4
4
 
5
5
  class RuleRegistry
6
- attr_reader :rules
6
+ attr_reader :rules, :duplicate_ids
7
7
 
8
8
  def initialize
9
9
  @rules = []
10
+ @duplicate_ids = []
11
+ end
12
+
13
+ def duplicate_ids?
14
+ @duplicate_ids.count.positive?
10
15
  end
11
16
 
12
17
  def definition(id:,
@@ -20,7 +25,11 @@ class RuleRegistry
20
25
  if existing_def.nil?
21
26
  add_rule rule_definition
22
27
  else
23
- existing_def
28
+ @duplicate_ids << {
29
+ id: id,
30
+ new_message: message,
31
+ registered_message: existing_def.message
32
+ }
24
33
  end
25
34
  end
26
35
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfn-nag
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.10
4
+ version: 0.4.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Kascic