Class: RuboCop::Cop::Chef::ChefEffortless::CookbookUsesEnvironmments

Inherits:
RuboCop::Cop
  • Object
show all
Defined in:
lib/rubocop/cop/chef/effortless/node_environment.rb

Overview

Neither Policyfiles or Effortless Infra which is based on Policyfiles supports Chef Environments

Examples:


# bad
node.environment == "production"
node.chef_environment == "production"

Constant Summary collapse

MSG =
'Cookbook uses environments, which cannot be used in Policyfiles or Effortless Infra'.freeze

Instance Method Summary collapse

Instance Method Details

#on_send(node) ⇒ Object



32
33
34
35
36
# File 'lib/rubocop/cop/chef/effortless/node_environment.rb', line 32

def on_send(node)
  if %i(environment chef_environment).include?(node.method_name) && node.receiver && node.receiver.send_type? && node.receiver.method_name == :node
    add_offense(node, location: :expression, message: MSG, severity: :refactor)
  end
end