Class: Chef::MinimalCookbookVersion
- Includes:
- Comparable
- Defined in:
- lib/chef/cookbook_version.rb
Overview
Chef::MinimalCookbookVersion
MinimalCookbookVersion is a duck type of CookbookVersion, used internally by Chef Server as an optimization when determining the optimal cookbook set for a chef-client.
MinimalCookbookVersion objects contain only enough information to solve the cookbook collection for a given run list. They *do not* contain enough information to generate the response.
See also: Chef::CookbookVersionSelector
Constant Summary collapse
- ID =
"id".freeze
- NAME =
'name'.freeze
- KEY =
'key'.freeze
- VERSION =
'version'.freeze
- VALUE =
'value'.freeze
- DEPS =
'deps'.freeze
- DEPENDENCIES =
'dependencies'.freeze
Instance Attribute Summary collapse
-
#deps ⇒ Object
readonly
Returns the value of attribute deps.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#version ⇒ Object
readonly
Returns the value of attribute version.
Instance Method Summary collapse
- #<=>(o) ⇒ Object
-
#initialize(params) ⇒ MinimalCookbookVersion
constructor
A new instance of MinimalCookbookVersion.
- #legit_version ⇒ Object
-
#metadata ⇒ Object
Returns the Cookbook::MinimalMetadata object for this cookbook version.
Constructor Details
Instance Attribute Details
#deps ⇒ Object (readonly)
Returns the value of attribute deps.
58 59 60 |
# File 'lib/chef/cookbook_version.rb', line 58 def deps @deps end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
56 57 58 |
# File 'lib/chef/cookbook_version.rb', line 56 def name @name end |
#version ⇒ Object (readonly)
Returns the value of attribute version.
57 58 59 |
# File 'lib/chef/cookbook_version.rb', line 57 def version @version end |
Instance Method Details
#<=>(o) ⇒ Object
76 77 78 79 80 |
# File 'lib/chef/cookbook_version.rb', line 76 def <=>(o) raise Chef::Exceptions::CookbookVersionNameMismatch if self.name != o.name raise "Unexpected comparison to #{o}" unless o.respond_to?(:legit_version) legit_version <=> o.legit_version end |
#legit_version ⇒ Object
72 73 74 |
# File 'lib/chef/cookbook_version.rb', line 72 def legit_version @legit_version ||= Chef::Version.new(@version) end |
#metadata ⇒ Object
Returns the Cookbook::MinimalMetadata object for this cookbook version.
68 69 70 |
# File 'lib/chef/cookbook_version.rb', line 68 def @metadata ||= Cookbook::MinimalMetadata.new(@name, DEPENDENCIES => @deps) end |