class RuboCop::Cop::Chef::Correctness::NodeNormalUnless
Normal attributes are discouraged since their semantics differ importantly from the default and override levels. Their values persist in the node object even after all code referencing them has been deleted, unlike default and override.
Code should be updated to use default or override levels, but this will change attribute merging behavior so needs to be validated manually and force_default or force_override levels may need to be used in recipe code.
@example
### incorrect node.normal_unless['foo'] = true ### correct node.default_unless['foo'] = true node.override_unless['foo'] = true node.force_default_unless['foo'] = true node.force_override_unless['foo'] = true
Constants
- MSG
- RESTRICT_ON_SEND
Public Instance Methods
Source
# File lib/rubocop/cop/chef/correctness/node_normal_unless.rb, line 44 def on_send(node) node_normal_unless?(node) do add_offense(node, severity: :refactor) end end