Sha256: b04a81ad1226200138e7ae4e3293f0ed5384669bff1e76245845ac040364e3ef

Contents?: true

Size: 1.54 KB

Versions: 33

Compression:

Stored size: 1.54 KB

Contents

require 'fog/collection'
require 'fog/aws/models/ec2/flavor'

module Fog
  module AWS
    module EC2

      module Collections
        def flavors
          Fog::AWS::EC2::Flavors.new(:connection => self)
        end
      end

      class Flavors < Fog::Collection

        model Fog::AWS::EC2::Flavor

        def all
          data = [
            { :bits => 32, :cores => 1, :disk => 160,  :id => 'm1.small',  :name => 'Small Instance',       :ram => 1740.8},
            { :bits => 64, :cores => 4, :disk => 850,  :id => 'm1.large',  :name => 'Large Instance',       :ram => 7680},
            { :bits => 64, :cores => 8, :disk => 1690, :id => 'm1.xlarge', :name => 'Extra Large Instance', :ram => 15360},

            { :bits => 32, :cores =>  5, :disk => 350,  :id => 'c1.medium', :name => 'High-CPU Medium',      :ram => 1740.8},
            { :bits => 64, :cores => 20, :disk => 1690, :id => 'c1.xlarge', :name => 'High-CPU Extra Large', :ram => 7168},

            { :bits => 64, :cores => 6.5, :disk => 420,  :id => 'm2.xlarge',  :name => 'High-Memory Extra Large',           :ram => 17510.4},
            { :bits => 64, :cores =>  13, :disk => 850,  :id => 'm2.2xlarge', :name => 'High Memory Double Extra Large',    :ram => 35020.8},
            { :bits => 64, :cores =>  26, :disk => 1690, :id => 'm2.4xlarge', :name => 'High Memory Quadruple Extra Large', :ram => 70041.6},
          ]
          load(data)
          self
        end

        def get(flavor_id)
          all.detect {|flavor| flavor.id == flavor_id}
        end

      end

    end
  end
end

Version data entries

33 entries across 33 versions & 2 rubygems

Version Path
fog-0.2.30 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.28 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.27 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.26 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.25 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.24 lib/fog/aws/models/ec2/flavors.rb
tecnh-fog-0.2.23.vpc lib/fog/aws/models/ec2/flavors.rb
fog-0.2.23 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.22 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.21 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.20 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.19 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.18 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.17 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.16 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.15 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.14 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.13 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.12 lib/fog/aws/models/ec2/flavors.rb
fog-0.2.11 lib/fog/aws/models/ec2/flavors.rb