require 'fog/core/model'

module Fog
  module Compute
    class Rackspace

      class Flavor < Fog::Model

        identity :id

        attribute :disk
        attribute :name
        attribute :ram

        def bits
          64
        end

        def cores
          # Each server is assigned 4 virtual cores and
	  # given a percentage of CPU cycles based on size
          4 * case ram
          when 256
            1/64.0
          when 512
            1/32.0
          when 1024
            1/16.0
          when 2048
            1/8.0
          when 4096
            1/4.0
          when 8192
            1/2.0
          when 15872
            1
          end
        end

      end

    end
  end
end

require 'fog/core/model'

module Fog
  module Compute
    class Rackspace

      class Flavor < Fog::Model

        identity :id

        attribute :disk
        attribute :name
        attribute :ram

        def bits
          64
        end

        def cores
          # Each server is assigned 4 virtual cores and
	  # given a percentage of CPU cycles based on size
          4 * case ram
          when 256
            1/64.0
          when 512
            1/32.0
          when 1024
            1/16.0
          when 2048
            1/8.0
          when 4096
            1/4.0
          when 8192
            1/2.0
          when 15872
            1
          when 30720
            2
          end
        end

      end

    end
  end
end

Add 30GB (30720) compute size
[rackspace/compute] Add 30GB (30720) compute size

Rackspace has [30GB compute nodes][1]. If you've got these nodes on your
account and try to do a flavor.cores you an exception like:

```
TypeError: nil can't be coerced into Fixnum
	from /Users/philkates/.rvm/gems/ruby-1.9.3-p0/gems/fog-1.1.2/lib/fog/rackspace/models/compute/flavor.rb:37:in `*'
	from /Users/philkates/.rvm/gems/ruby-1.9.3-p0/gems/fog-1.1.2/lib/fog/rackspace/models/compute/flavor.rb:37:in `cores'
	from (irb):6:in `<main>'
	from ./bin/fog:52:in `block in <main>'
	from ./bin/fog:52:in `catch'
	from ./bin/fog:52:in `<main>'
```

This is my incredibly simplistic fix.

[1]: http://www.rackspace.com/cloud/cloud_hosting_products/servers/pricing/
