Class/Module Index [+]

Quicksearch

Ironfan::Provider

Public Class Methods

aggregate!(computers) click to toggle source
# File lib/ironfan/provider.rb, line 51
def self.aggregate!(computers)
  resources.each do |r|
    r.aggregate!(computers) if r.shared?
  end
end
load(cluster) click to toggle source

Discovery

# File lib/ironfan/provider.rb, line 31
def self.load(cluster)
  Ironfan.parallel (resources) do |r|
    type = r.resource_type.to_s
    r.forget!
    Ironfan.substep(cluster.name, "loading #{type}s")
    r.load! cluster
    Ironfan.substep(cluster.name, "loaded #{type}s")
  end
end
prepare!(computers) click to toggle source
# File lib/ironfan/provider.rb, line 45
def self.prepare!(computers)
  resources.each do |r|
    r.prepare!(computers) if r.shared?
  end
end
receive(obj, &block) click to toggle source
# File lib/ironfan/provider.rb, line 9
def self.receive(obj, &block)
  if obj.is_a?(Hash)
    obj = obj.symbolize_keys
    obj[:_type] =
      case obj[:name]
      when :chef        then Chef
      when :ec2         then Ec2
      when :virtualbox  then VirtualBox
      else raise "Unsupported provider #{obj[:name]}"
      end
  end
  super
end
resources() click to toggle source
# File lib/ironfan/provider.rb, line 24
def self.resources
  raise "missing #{self.class}.resources declaration"
end
validate(computers) click to toggle source
# File lib/ironfan/provider.rb, line 41
def self.validate(computers)
  resources.each {|r| r.validate_resources! computers }
end

Public Instance Methods

resources() click to toggle source
# File lib/ironfan/provider.rb, line 23
def resources()     self.class.resources;   end

[Validate]

Generated with the Darkfish Rdoc Generator 2.