Sha256: cc451d6bf79c04335b869e2cdf37b745ad485dcd88df0546681b71e2e7fa2028
Contents?: true
Size: 1.79 KB
Versions: 8
Compression:
Stored size: 1.79 KB
Contents
module Ridley # @author Jamie Winsor <jamie@vialstudios.com> class RoleResource < Ridley::Resource set_chef_id "name" set_chef_type "role" set_chef_json_class "Chef::Role" set_resource_path "roles" attribute :name, required: true attribute :description, default: String.new attribute :default_attributes, default: Hashie::Mash.new attribute :override_attributes, default: Hashie::Mash.new attribute :run_list, default: Array.new attribute :env_run_lists, default: Hash.new # Set a role level override attribute given the dotted path representation of the Chef # attribute and value # # @example setting and saving a node level override attribute # # obj = node.role("why_god_why") # obj.set_override_attribute("my_app.billing.enabled", false) # obj.save # # @param [String] key # @param [Object] value # # @return [HashWithIndifferentAccess] def set_override_attribute(key, value) attr_hash = HashWithIndifferentAccess.from_dotted_path(key, value) self.override_attributes = self.override_attributes.deep_merge(attr_hash) end # Set a role level default attribute given the dotted path representation of the Chef # attribute and value # # @example setting and saving a node level default attribute # # obj = node.role("why_god_why") # obj.set_default_attribute("my_app.billing.enabled", false) # obj.save # # @param [String] key # @param [Object] value # # @return [HashWithIndifferentAccess] def set_default_attribute(key, value) attr_hash = HashWithIndifferentAccess.from_dotted_path(key, value) self.default_attributes = self.default_attributes.deep_merge(attr_hash) end end end
Version data entries
8 entries across 8 versions & 1 rubygems