ironfan 6.0.8 → 6.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/ironfan/dsl/ec2.rb
CHANGED
|
@@ -329,19 +329,19 @@ Chef::Config[:ec2_flavor_info].merge!({
|
|
|
329
329
|
'm2.4xlarge' => { :price => 1.640, :bits => 64, :ram => 70042, :cores => 8, :core_size => 3.25, :inst_disks => 2, :inst_disk_size => 840, :ephemeral_volumes => 2, :ebs_optimizable => 1000, },
|
|
330
330
|
'cc2.8xlarge' => { :price => 2.400, :bits => 64, :ram => 61952, :cores =>32, :core_size => 2.75, :inst_disks => 4, :inst_disk_size => 840, :ephemeral_volumes => 4, :placement_groupable => true, :virtualization => 'hvm' },
|
|
331
331
|
'cg1.4xlarge' => { :price => 2.100, :bits => 64, :ram => 23040, :cores =>16, :core_size => 2.09375, :inst_disks => 2, :inst_disk_size => 840, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm' },
|
|
332
|
-
'c3.large' => { :price => 0.150, :bits => 64, :ram => 3840, :cores => 2, :core_size => 3.5, :inst_disks => 2, :inst_disk_size => 16, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :
|
|
333
|
-
'c3.xlarge' => { :price => 0.300, :bits => 64, :ram => 7680, :cores => 4, :core_size => 3.5, :inst_disks => 2, :inst_disk_size => 40, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :
|
|
334
|
-
'c3.2xlarge' => { :price => 0.600, :bits => 64, :ram => 15360, :cores => 8, :core_size => 3.5, :inst_disks => 2, :inst_disk_size => 80, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :
|
|
335
|
-
'c3.4xlarge' => { :price => 1.200, :bits => 64, :ram => 30720, :cores => 16, :core_size => 3.4375, :inst_disks => 2, :inst_disk_size => 160, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :
|
|
332
|
+
'c3.large' => { :price => 0.150, :bits => 64, :ram => 3840, :cores => 2, :core_size => 3.5, :inst_disks => 2, :inst_disk_size => 16, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
333
|
+
'c3.xlarge' => { :price => 0.300, :bits => 64, :ram => 7680, :cores => 4, :core_size => 3.5, :inst_disks => 2, :inst_disk_size => 40, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
334
|
+
'c3.2xlarge' => { :price => 0.600, :bits => 64, :ram => 15360, :cores => 8, :core_size => 3.5, :inst_disks => 2, :inst_disk_size => 80, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
335
|
+
'c3.4xlarge' => { :price => 1.200, :bits => 64, :ram => 30720, :cores => 16, :core_size => 3.4375, :inst_disks => 2, :inst_disk_size => 160, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
336
336
|
'c3.8xlarge' => { :price => 2.400, :bits => 64, :ram => 61440, :cores => 32, :core_size => 3.375, :inst_disks => 2, :inst_disk_size => 320, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm' },
|
|
337
337
|
'hs1.8xlarge' => { :price => 4.600, :bits => 64, :ram => 119808, :cores => 16, :core_size => 2.1875, :inst_disks => 24, :inst_disk_size => 2048, :ephemeral_volumes => 24, :placement_groupable => true, :virtualization => 'hvm' },
|
|
338
338
|
'cr1.8xlarge' => { :price => 3.500, :bits => 64, :ram => 249856, :cores => 32, :core_size => 2.75, :inst_disks => 2, :inst_disk_size => 120, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm' },
|
|
339
|
-
'i2.xlarge' => { :price => 0.853, :bits => 64, :ram => 31232, :cores => 4, :core_size => 3.5, :inst_disks => 1, :inst_disk_size => 800, :ephemeral_volumes => 1, :placement_groupable => true, :virtualization => 'hvm', :
|
|
340
|
-
'i2.2xlarge' => { :price => 1.705, :bits => 64, :ram => 62464, :cores => 8, :core_size => 3.375, :inst_disks => 2, :inst_disk_size => 800, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :
|
|
341
|
-
'i2.4xlarge' => { :price => 3.410, :bits => 64, :ram => 124928, :cores => 16, :core_size => 3.3125, :inst_disks => 4, :inst_disk_size => 800, :ephemeral_volumes => 4, :placement_groupable => true, :virtualization => 'hvm', :
|
|
339
|
+
'i2.xlarge' => { :price => 0.853, :bits => 64, :ram => 31232, :cores => 4, :core_size => 3.5, :inst_disks => 1, :inst_disk_size => 800, :ephemeral_volumes => 1, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 500 },
|
|
340
|
+
'i2.2xlarge' => { :price => 1.705, :bits => 64, :ram => 62464, :cores => 8, :core_size => 3.375, :inst_disks => 2, :inst_disk_size => 800, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
341
|
+
'i2.4xlarge' => { :price => 3.410, :bits => 64, :ram => 124928, :cores => 16, :core_size => 3.3125, :inst_disks => 4, :inst_disk_size => 800, :ephemeral_volumes => 4, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
342
342
|
'i2.8xlarge' => { :price => 6.820, :bits => 64, :ram => 249856, :cores => 32, :core_size => 3.25, :inst_disks => 8, :inst_disk_size => 800, :ephemeral_volumes => 8, :placement_groupable => true, :virtualization => 'hvm' },
|
|
343
|
-
'g2.2xlarge' => { :price => 0.650, :bits => 64, :ram => 15360, :cores => 8, :core_size => 3.25, :inst_disks => 1, :inst_disk_size => 60, :ephemeral_volumes => 1, :placement_groupable => true, :virtualization => 'hvm', :
|
|
344
|
-
'hi1.4xlarge' => { :price => 3.100, :bits => 64, :ram => 61952, :cores => 16, :core_size => 2.1875, :inst_disks => 2, :inst_disk_size => 1024, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :
|
|
343
|
+
'g2.2xlarge' => { :price => 0.650, :bits => 64, :ram => 15360, :cores => 8, :core_size => 3.25, :inst_disks => 1, :inst_disk_size => 60, :ephemeral_volumes => 1, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
344
|
+
'hi1.4xlarge' => { :price => 3.100, :bits => 64, :ram => 61952, :cores => 16, :core_size => 2.1875, :inst_disks => 2, :inst_disk_size => 1024, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimizable => 1000 },
|
|
345
345
|
})
|
|
346
346
|
|
|
347
347
|
Chef::Config[:ec2_image_info] ||= {}
|
data/lib/ironfan/dsl/volume.rb
CHANGED
|
@@ -11,6 +11,13 @@ module Ironfan
|
|
|
11
11
|
magic :formattable, :boolean, :default => false
|
|
12
12
|
magic :fstype, String, :default => 'xfs'
|
|
13
13
|
magic :in_raid, String
|
|
14
|
+
|
|
15
|
+
# The number of I/O operations per second (IOPS) that the volume supports.
|
|
16
|
+
# valid range: 500-4000
|
|
17
|
+
# Only Provisioned IOPS (SSD, type io1) drives support
|
|
18
|
+
# this. These volumes should be with EBS-optimized machines.
|
|
19
|
+
magic :iops, Integer
|
|
20
|
+
|
|
14
21
|
magic :keep, :boolean, :default => true
|
|
15
22
|
magic :mount_dump, String
|
|
16
23
|
magic :mount_pass, String
|
|
@@ -24,6 +31,12 @@ module Ironfan
|
|
|
24
31
|
magic :snapshot_name, String
|
|
25
32
|
magic :tags, Hash, :default => {}
|
|
26
33
|
|
|
34
|
+
# valid types:
|
|
35
|
+
# gp2 = General Purpose 2
|
|
36
|
+
# io1 = Provisioned IOPS
|
|
37
|
+
# standard = Magnetic volumes
|
|
38
|
+
magic :type, String
|
|
39
|
+
|
|
27
40
|
VOLUME_IDS ||= {}
|
|
28
41
|
VOLUME_IDS.merge!({
|
|
29
42
|
:blank_xfs => 'snap-d9c1edb1',
|
|
@@ -8,11 +8,11 @@ module Ironfan
|
|
|
8
8
|
:connection, :connection=, :created_at, :created_at=,
|
|
9
9
|
:delete_on_termination, :delete_on_termination=, :destroy, :device,
|
|
10
10
|
:device=, :dup_attributes!, :force_detach, :id, :id=, :identity,
|
|
11
|
-
:identity=, :merge_attributes, :missing_attributes, :new_record?,
|
|
11
|
+
:identity=, :iops, :merge_attributes, :missing_attributes, :new_record?,
|
|
12
12
|
:ready?, :reload, :requires, :requires_one, :save, :server,
|
|
13
13
|
:server=, :server_id, :server_id=, :size, :size=, :snapshot,
|
|
14
14
|
:snapshot_id, :snapshot_id=, :snapshots, :state, :state=,
|
|
15
|
-
:symbolize_keys, :tags, :tags=, :wait_for,
|
|
15
|
+
:symbolize_keys, :tags, :tags=, :type, :wait_for,
|
|
16
16
|
:to => :adaptee
|
|
17
17
|
field :dsl_volume, Ironfan::Dsl::Volume
|
|
18
18
|
|
|
@@ -265,11 +265,14 @@ module Ironfan
|
|
|
265
265
|
end.compact.map(&:name)
|
|
266
266
|
|
|
267
267
|
if cloud.flavor_info[:placement_groupable]
|
|
268
|
-
|
|
269
|
-
|
|
268
|
+
description[:placement_group] = cloud.placement_group.to_s
|
|
269
|
+
elsif cloud.placement_group
|
|
270
|
+
Chef::Application.fatal!("A placement group was set but #{cloud.flavor} does not support placement!")
|
|
270
271
|
end
|
|
271
272
|
if cloud.flavor_info[:ebs_optimizable]
|
|
272
273
|
description[:ebs_optimized] = cloud.ebs_optimized
|
|
274
|
+
elsif cloud.ebs_optimized
|
|
275
|
+
Chef::Application.fatal!("ebs_optimized set but #{cloud.flavor} does not support ebs optimization!")
|
|
273
276
|
end
|
|
274
277
|
description
|
|
275
278
|
end
|
|
@@ -290,6 +293,8 @@ module Ironfan
|
|
|
290
293
|
end
|
|
291
294
|
hsh['Ebs.SnapshotId'] = volume.snapshot_id if volume.snapshot_id.present?
|
|
292
295
|
hsh['Ebs.VolumeSize'] = volume.size.to_s if volume.size.present?
|
|
296
|
+
hsh['Ebs.VolumeType'] = volume.type if volume.type.present?
|
|
297
|
+
hsh['Ebs.Iops'] = volume.iops if volume.type == 'io1'
|
|
293
298
|
hsh['Ebs.DeleteOnTermination'] = (not volume.keep).to_s
|
|
294
299
|
else next
|
|
295
300
|
end
|
data/lib/ironfan/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ironfan
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.0.
|
|
4
|
+
version: 6.0.9
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2014-
|
|
12
|
+
date: 2014-07-29 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: chef
|
|
@@ -332,18 +332,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
332
332
|
- - ! '>='
|
|
333
333
|
- !ruby/object:Gem::Version
|
|
334
334
|
version: '0'
|
|
335
|
-
segments:
|
|
336
|
-
- 0
|
|
337
|
-
hash: 770393223121845941
|
|
338
335
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
339
336
|
none: false
|
|
340
337
|
requirements:
|
|
341
338
|
- - ! '>='
|
|
342
339
|
- !ruby/object:Gem::Version
|
|
343
340
|
version: '0'
|
|
344
|
-
segments:
|
|
345
|
-
- 0
|
|
346
|
-
hash: 770393223121845941
|
|
347
341
|
requirements: []
|
|
348
342
|
rubyforge_project:
|
|
349
343
|
rubygems_version: 1.8.25
|