Class: Awsome::Requirements
- Inherits:
-
Object
- Object
- Awsome::Requirements
- Defined in:
- lib/awsome/requirements.rb
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Class Method Summary collapse
Instance Method Summary collapse
- #filters ⇒ Object
-
#initialize(requirements_hash) ⇒ Requirements
constructor
A new instance of Requirements.
- #instances ⇒ Object
- #traits ⇒ Object
Constructor Details
#initialize(requirements_hash) ⇒ Requirements
Returns a new instance of Requirements.
7 8 9 10 |
# File 'lib/awsome/requirements.rb', line 7 def initialize(requirements_hash) @requirements = requirements_hash.clone @options = Awsome::RequirementsOptions.new(@requirements) end |
Instance Attribute Details
#options ⇒ Object (readonly)
Returns the value of attribute options.
5 6 7 |
# File 'lib/awsome/requirements.rb', line 5 def @options end |
Class Method Details
.from_yaml_file(filename) ⇒ Object
12 13 14 |
# File 'lib/awsome/requirements.rb', line 12 def self.from_yaml_file(filename) new(YAML::load(File.open(filename, 'r').read)) end |
Instance Method Details
#filters ⇒ Object
24 25 26 |
# File 'lib/awsome/requirements.rb', line 24 def filters @requirements['filters'] || {} end |
#instances ⇒ Object
16 17 18 19 20 21 22 |
# File 'lib/awsome/requirements.rb', line 16 def instances @requirements['instances'].collect do |req| instance = req.clone inflate!(instance, instance.delete('traits')) Awsome::InstanceRequirement.new(instance, @options) end end |
#traits ⇒ Object
28 29 30 |
# File 'lib/awsome/requirements.rb', line 28 def traits @requirements['traits'] || {} end |