Class: Ironfan::Dsl::Cloud

Inherits:
Ironfan::Dsl show all
Defined in:
lib/ironfan/headers.rb,
lib/ironfan/dsl/cloud.rb,
lib/ironfan/deprecated.rb

Direct Known Subclasses

Ec2, OpenStack, Rds, Static, VirtualBox, Vsphere

Instance Attribute Summary

Attributes included from Gorillib::Resolution

#underlay

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Ironfan::Dsl

#_skip_fields, #skip_fields, #to_manifest

Methods included from Gorillib::Resolution

#deep_resolve, #merge_resolve, #merge_values, #read_resolved_attribute, #read_set_attribute, #read_set_or_underlay_attribute, #read_underlay_attribute, #resolve, #resolve!, #resolve_value

Methods included from CookbookRequirements

#_cookbook_reqs, #children, #cookbook_req, #cookbook_reqs, #join_req

Methods inherited from Builder

ui, #ui

Class Method Details

.receive(obj, &block) ⇒ Object

Factory out to subclasses


8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/ironfan/dsl/cloud.rb', line 8

def self.receive(obj, &block)
  if obj.is_a?(Hash)
    obj = obj.symbolize_keys
    obj[:_type] ||=
      case obj[:name]
      when :ec2        then Ec2
      when :virtualbox then VirtualBox
      when :vsphere    then Vsphere
      when :rds        then Rds
      when :openstack  then OpenStack
      when :static     then Static
      else raise "Unsupported cloud #{obj[:name]}"
      end
  end
  super
end

Instance Method Details

#defaultsObject


10
11
12
# File 'lib/ironfan/deprecated.rb', line 10

def defaults
  Ironfan.deprecated 'defaults'
end

#implied_volumesObject


25
# File 'lib/ironfan/dsl/cloud.rb', line 25

def implied_volumes()     Ironfan.noop(self,__method__,*p);      end