summaryrefslogtreecommitdiff
path: root/lib/chef/node.rb
diff options
context:
space:
mode:
authorRobert Mullins <rmullins@secureworks.com>2017-03-03 14:39:07 -0500
committerRobert Mullins <rmullins@secureworks.com>2017-03-08 11:41:56 -0500
commit848fbf3c081dabe4a7f18a42597b1a68f68b6009 (patch)
treec7d49291f920dbde14b43c70953b3c1f9bc800b1 /lib/chef/node.rb
parent5dc375d6dd7acb1d32f06b3ee663201d0a119ccf (diff)
downloadchef-848fbf3c081dabe4a7f18a42597b1a68f68b6009.tar.gz
Add the ability to blacklist attributes
Signed-off-by: Robert Mullins <rmullins@secureworks.com>
Diffstat (limited to 'lib/chef/node.rb')
-rw-r--r--lib/chef/node.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/chef/node.rb b/lib/chef/node.rb
index 66527a2a37..1c2fbfee0f 100644
--- a/lib/chef/node.rb
+++ b/lib/chef/node.rb
@@ -34,6 +34,7 @@ require "chef/mash"
require "chef/json_compat"
require "chef/search/query"
require "chef/whitelist"
+require "chef/blacklist"
class Chef
class Node
@@ -664,6 +665,13 @@ class Chef
Chef::Log.info("Whitelisting #{level} node attributes for save.")
data[level] = Chef::Whitelist.filter(data[level], whitelist)
end
+
+ blacklist_config_option = "#{level}_attribute_blacklist".to_sym
+ blacklist = Chef::Config[blacklist_config_option]
+ unless blacklist.nil? # nil => remove nothing
+ Chef::Log.info("Blacklisting #{level} node attributes for save")
+ data[level] = Chef::Blacklist.filter(data[level], blacklist)
+ end
end
data
end