class Chef::Resource::ChefEnvironment

Attributes

default_attribute_modifiers[R]

default 'ip_address', '127.0.0.1' default [ 'pushy', 'port' ], '9000' default 'ip_addresses' do |existing_value|

(existing_value || []) + [ '127.0.0.1' ]

end default 'ip_address', :delete

override_attribute_modifiers[R]

override 'ip_address', '127.0.0.1' override [ 'pushy', 'port' ], '9000' override 'ip_addresses' do |existing_value|

(existing_value || []) + [ '127.0.0.1' ]

end override 'ip_address', :delete

Public Instance Methods

attribute(attribute_path, value = NOT_PASSED, &block)
Alias for: default
augment_new_json(json) click to toggle source
# File lib/chef/resource/chef_environment.rb, line 95
def augment_new_json(json)
  # Apply modifiers
  json["default_attributes"] = apply_modifiers(new_resource.default_attribute_modifiers, json["default_attributes"])
  json["override_attributes"] = apply_modifiers(new_resource.override_attribute_modifiers, json["override_attributes"])
  json
end
data_handler() click to toggle source
# File lib/chef/resource/chef_environment.rb, line 110
def data_handler
  Chef::ChefFS::DataHandler::EnvironmentDataHandler.new
end
default(attribute_path, value = NOT_PASSED, &block) click to toggle source
# File lib/chef/resource/chef_environment.rb, line 26
def default(attribute_path, value = NOT_PASSED, &block)
  @default_attribute_modifiers ||= []
  if value != NOT_PASSED
    @default_attribute_modifiers << [ attribute_path, value ]
  elsif block
    @default_attribute_modifiers << [ attribute_path, block ]
  else
    raise "default requires either a value or a block"
  end
end
Also aliased as: attribute
keys() click to toggle source
# File lib/chef/resource/chef_environment.rb, line 114
def keys
  {
    "name" => :environment_name,
    "description" => :description,
    "cookbook_versions" => :cookbook_versions,
    "default_attributes" => :default_attributes,
    "override_attributes" => :override_attributes,
  }
end
load_current_resource() click to toggle source
# File lib/chef/resource/chef_environment.rb, line 85
def load_current_resource
  @current_resource = json_to_resource(rest.get("environments/#{new_resource.environment_name}"))
rescue Net::HTTPClientException => e
  if e.response.code == "404"
    @current_resource = not_found_resource
  else
    raise
  end
end
override(attribute_path, value = NOT_PASSED, &block) click to toggle source
# File lib/chef/resource/chef_environment.rb, line 44
def override(attribute_path, value = NOT_PASSED, &block)
  @override_attribute_modifiers ||= []
  if value != NOT_PASSED
    @override_attribute_modifiers << [ attribute_path, value ]
  elsif block
    @override_attribute_modifiers << [ attribute_path, block ]
  else
    raise "override requires either a value or a block"
  end
end
resource_class() click to toggle source

Helpers

# File lib/chef/resource/chef_environment.rb, line 106
def resource_class
  Chef::Resource::ChefEnvironment
end