class ResourceWithExplicitNameRule
Constants
- RESOURCE_NAME_MAPPING
The values of this hash are camel-cased, due to cfn-model returning camel cased values. E.g. GroupName in CloudFormation is returned by cfn-model as groupName, RoleName is returned as roleName, etc.
Public Instance Methods
audit_impl(cfn_model)
click to toggle source
# File lib/cfn-nag/custom_rules/ResourceWithExplicitNameRule.rb, line 40 def audit_impl(cfn_model) violating_resources = [] RESOURCE_NAME_MAPPING.each do |cfn_resource, key_name| resources = cfn_model.resources_by_type(cfn_resource) .select do |resource| explicitly_set_resource_name?(resource, key_name) end violating_resources << resources.map(&:logical_resource_id) end violating_resources.flatten end
rule_id()
click to toggle source
# File lib/cfn-nag/custom_rules/ResourceWithExplicitNameRule.rb, line 36 def rule_id 'W28' end
rule_text()
click to toggle source
# File lib/cfn-nag/custom_rules/ResourceWithExplicitNameRule.rb, line 27 def rule_text 'Resource found with an explicit name, this disallows updates that ' \ 'require replacement of this resource' end
rule_type()
click to toggle source
# File lib/cfn-nag/custom_rules/ResourceWithExplicitNameRule.rb, line 32 def rule_type Violation::WARNING end
Private Instance Methods
explicitly_set_resource_name?(resource, key_name)
click to toggle source
# File lib/cfn-nag/custom_rules/ResourceWithExplicitNameRule.rb, line 57 def explicitly_set_resource_name?(resource, key_name) !resource.send(key_name).nil? end