Sha256: 5e06990c93d185f12edfa3754c047ec9d675ab7851018d34aee2c30f3807065a

Contents?: true

Size: 685 Bytes

Versions: 23

Compression:

Stored size: 685 Bytes

Contents

module Ironfan
  class Dsl

    class Cloud < Ironfan::Dsl
      magic :default_cloud,           :boolean,       :default => false

      # Factory out to subclasses
      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
            else raise "Unsupported cloud #{obj[:name]}"
            end
        end
        super
      end

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

  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
ironfan-5.0.11 lib/ironfan/dsl/cloud.rb
ironfan-5.0.10 lib/ironfan/dsl/cloud.rb
ironfan-5.0.8 lib/ironfan/dsl/cloud.rb
ironfan-5.0.5 lib/ironfan/dsl/cloud.rb
ironfan-5.0.4 lib/ironfan/dsl/cloud.rb
ironfan-5.0.3 lib/ironfan/dsl/cloud.rb
ironfan-5.0.2 lib/ironfan/dsl/cloud.rb
ironfan-5.0.1 lib/ironfan/dsl/cloud.rb
ironfan-5.0.0 lib/ironfan/dsl/cloud.rb
ironfan-4.12.3 lib/ironfan/dsl/cloud.rb
ironfan-4.12.2 lib/ironfan/dsl/cloud.rb
ironfan-4.12.1 lib/ironfan/dsl/cloud.rb
ironfan-4.12.0 lib/ironfan/dsl/cloud.rb
ironfan-4.11.5 lib/ironfan/dsl/cloud.rb
ironfan-4.11.4 lib/ironfan/dsl/cloud.rb
ironfan-4.11.3 lib/ironfan/dsl/cloud.rb
ironfan-4.11.2 lib/ironfan/dsl/cloud.rb
ironfan-4.11.2.pre3 lib/ironfan/dsl/cloud.rb
ironfan-4.11.2.pre2 lib/ironfan/dsl/cloud.rb
ironfan-4.11.2.pre lib/ironfan/dsl/cloud.rb