1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/rackspace/models/compute/flavor.rb
Phil Kates 7d5a88d2e9 [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/
2011-12-23 11:55:33 -08:00

46 lines
749 B
Ruby

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