ironfan 5.0.8 → 5.0.10

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -68,10 +68,10 @@ RSpec::Core::RakeTask.new(:spec) do |spec|
68
68
  spec.pattern = 'spec/{ironfan,chef,ironfan/*}/*_spec.rb'
69
69
  end
70
70
 
71
- RSpec::Core::RakeTask.new(:rcov) do |spec|
72
- spec.pattern = 'spec/**/*_spec.rb'
73
- spec.rcov = true
74
- spec.rcov_opts = %w[ --exclude .rvm --no-comments --text-summary ]
71
+ desc 'Run :spec task with coverage using Simplecov'
72
+ task :coverage do
73
+ ENV['IRONFAN_COV'] = 'true'
74
+ Rake::Task[:spec].invoke
75
75
  end
76
76
 
77
77
  RSpec::Core::RakeTask.new(:integration) do |spec|
data/VERSION CHANGED
@@ -1 +1 @@
1
- 5.0.8
1
+ 5.0.10
data/ironfan.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "ironfan"
8
- s.version = "5.0.8"
8
+ s.version = "5.0.10"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Infochimps"]
12
- s.date = "2014-01-16"
12
+ s.date = "2014-02-20"
13
13
  s.description = "Ironfan allows you to orchestrate not just systems but clusters of machines. It includes a powerful layer on top of knife and a collection of cloud cookbooks."
14
14
  s.email = "coders@infochimps.com"
15
15
  s.extra_rdoc_files = [
@@ -81,6 +81,7 @@ module Ironfan
81
81
 
82
82
  magic :server_cluster, Symbol
83
83
  magic :bidirectional, :boolean, default: false
84
+ magic :create_security_groups, :boolean, default: true
84
85
 
85
86
  (@_dependencies ||= []) << Gorillib::Builder
86
87
 
@@ -88,6 +89,9 @@ module Ironfan
88
89
  def default_to_bidirectional default=true
89
90
  magic :bidirectional, :boolean, default: default
90
91
  end
92
+ def default_create_security_groups default=true
93
+ magic :create_security_groups, :boolean, default: default
94
+ end
91
95
  end
92
96
 
93
97
  def set_discovery compute, keys
@@ -110,8 +114,10 @@ module Ironfan
110
114
  client_group_v = client_group(compute)
111
115
  server_group_v = security_group(full_server_cluster_v)
112
116
 
113
- group_edge(compute.cloud(:ec2), client_group_v, :authorized_by_group, server_group_v)
114
- group_edge(compute.cloud(:ec2), client_group_v, :authorize_group, server_group_v) if bidirectional
117
+ if create_security_groups
118
+ group_edge(compute.cloud(:ec2), client_group_v, :authorized_by_group, server_group_v)
119
+ group_edge(compute.cloud(:ec2), client_group_v, :authorize_group, server_group_v) if bidirectional
120
+ end
115
121
 
116
122
  Chef::Log.debug("discovered #{announce_name} for #{cluster_name}: #{discovery}")
117
123
  end
@@ -328,19 +328,31 @@ Chef::Config[:ec2_flavor_info].merge!({
328
328
  'm1.small' => { :price => 0.08, :bits => 64, :ram => 1740, :cores => 1, :core_size => 1, :inst_disks => 1, :inst_disk_size => 160, :ephemeral_volumes => 1 },
329
329
  'm1.medium' => { :price => 0.165, :bits => 64, :ram => 3840, :cores => 2, :core_size => 1, :inst_disks => 1, :inst_disk_size => 410, :ephemeral_volumes => 1 },
330
330
  'c1.medium' => { :price => 0.17, :bits => 64, :ram => 1740, :cores => 2, :core_size => 2.5, :inst_disks => 1, :inst_disk_size => 350, :ephemeral_volumes => 1 },
331
- #
331
+ 'm3.medium' => { :price => 0.113, :bits => 64, :ram => 3840, :cores => 1, :core_size => 3.25, :inst_disks => 1, :inst_disk_size => 4, :ephemeral_volumes => 1, :ebs_optimizable => 500, },
332
332
  'm1.large' => { :price => 0.32, :bits => 64, :ram => 7680, :cores => 2, :core_size => 2, :inst_disks => 2, :inst_disk_size => 850, :ephemeral_volumes => 2, :ebs_optimizable => 500, },
333
- 'm2.xlarge' => { :price => 0.45, :bits => 64, :ram => 18124, :cores => 2, :core_size => 3.25, :inst_disks => 1, :inst_disk_size => 420, :ephemeral_volumes => 1, },
334
- 'm3.xlarge' => { :price => 0.50, :bits => 64, :ram => 15360, :cores => 4, :core_size => 3.25, :inst_disks => 0, :inst_disk_size => 0, :ephemeral_volumes => 0, :ebs_optimizable => 500, },
333
+ 'm3.large' => { :price => 0.225, :bits => 64, :ram => 7680, :cores => 2, :core_size => 3.25, :inst_disks => 1, :inst_disk_size => 32, :ephemeral_volumes => 0, :ebs_optimizable => 500, },
334
+ 'm2.xlarge' => { :price => 0.41, :bits => 64, :ram => 18124, :cores => 2, :core_size => 3.25, :inst_disks => 1, :inst_disk_size => 420, :ephemeral_volumes => 1, },
335
+ 'm3.xlarge' => { :price => 0.45, :bits => 64, :ram => 15360, :cores => 4, :core_size => 3.25, :inst_disks => 2, :inst_disk_size => 40, :ephemeral_volumes => 2, :ebs_optimizable => 500, },
335
336
  'c1.xlarge' => { :price => 0.64, :bits => 64, :ram => 7168, :cores => 8, :core_size => 2.5, :inst_disks => 4, :inst_disk_size => 1690, :ephemeral_volumes => 4, :ebs_optimizable => 1000, },
336
337
  'm1.xlarge' => { :price => 0.66, :bits => 64, :ram => 15360, :cores => 4, :core_size => 2, :inst_disks => 4, :inst_disk_size => 1690, :ephemeral_volumes => 4, :ebs_optimizable => 1000, },
337
- 'm3.2xlarge' => { :price => 1.00, :bits => 64, :ram => 30720, :cores => 8, :core_size => 3.25, :inst_disks => 0, :inst_disk_size => 0, :ephemeral_volumes => 0, :ebs_optimizable => 1000, },
338
+ 'm3.2xlarge' => { :price => 0.90, :bits => 64, :ram => 30720, :cores => 8, :core_size => 3.25, :inst_disks => 2, :inst_disk_size => 80, :ephemeral_volumes => 2, :ebs_optimizable => 1000, },
338
339
  'm2.2xlarge' => { :price => 0.90, :bits => 64, :ram => 35020, :cores => 4, :core_size => 3.25, :inst_disks => 2, :inst_disk_size => 850, :ephemeral_volumes => 2, :ebs_optimizable => 500, },
339
340
  'm2.4xlarge' => { :price => 1.80, :bits => 64, :ram => 70041, :cores => 8, :core_size => 3.25, :inst_disks => 4, :inst_disk_size => 1690, :ephemeral_volumes => 4, :ebs_optimizable => 1000, },
340
341
  'cc1.4xlarge' => { :price => 1.30, :bits => 64, :ram => 23552, :cores => 8, :core_size => 4.19, :inst_disks => 4, :inst_disk_size => 1690, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm' },
341
- 'cc1.8xlarge' => { :price => 2.40, :bits => 64, :ram => 61952, :cores =>16, :core_size => 5.50, :inst_disks => 8, :inst_disk_size => 3370, :ephemeral_volumes => 4, :placement_groupable => true, :virtualization => 'hvm' },
342
- 'cc2.8xlarge' => { :price => 2.40, :bits => 64, :ram => 61952, :cores =>16, :core_size => 5.50, :inst_disks => 8, :inst_disk_size => 3370, :ephemeral_volumes => 4, :placement_groupable => true, :virtualization => 'hvm' },
342
+ 'cc2.8xlarge' => { :price => 2.40, :bits => 64, :ram => 61952, :cores =>32, :core_size => 5.50, :inst_disks => 8, :inst_disk_size => 3370, :ephemeral_volumes => 4, :placement_groupable => true, :virtualization => 'hvm' },
343
343
  'cg1.4xlarge' => { :price => 2.10, :bits => 64, :ram => 22528, :cores => 8, :core_size => 4.19, :inst_disks => 4, :inst_disk_size => 1690, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm' },
344
+ 'c3.large' => { :price => 0.15, :bits => 64, :ram => 3840, :cores => 2, :core_size => 6.50, :inst_disks => 2, :inst_disk_size => 16, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_opizable => 1000 },
345
+ 'c3.xlarge' => { :price => 0.30, :bits => 64, :ram => 7168, :cores => 4, :core_size => 6.50, :inst_disks => 2, :inst_disk_size => 40, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_opizable => 1000 },
346
+ 'c3.2xlarge' => { :price => 0.60, :bits => 64, :ram => 15360, :cores => 8, :core_size => 6.50, :inst_disks => 2, :inst_disk_size => 80, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_opizable => 1000 },
347
+ 'c3.4xlarge' => { :price => 1.20, :bits => 64, :ram => 30720, :cores =>16, :core_size => 6.50, :inst_disks => 2, :inst_disk_size => 160, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_opizable => 1000 },
348
+ 'c3.8xlarge' => { :price => 2.40, :bits => 64, :ram => 30720, :cores =>32, :core_size => 6.50, :inst_disks => 2, :inst_disk_size => 320, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm' },
349
+ 'hs1.8xlarge' => { :price => 4.60, :bits => 64, :ram => 119808, :cores => 8, :core_size => 5.50, :inst_disks =>24, :inst_disk_size => 2048, :ephemeral_volumes =>24, :placement_groupable => true, :virtualization => 'hvm' },
350
+ 'cr1.8xlarge' => { :price => 3.50, :bits => 64, :ram => 249856, :cores =>32, :core_size => 6.50, :inst_disks => 2, :inst_disk_size => 120, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm' },
351
+ 'i2.xlarge' => { :price => 0.85, :bits => 64, :ram => 31232, :cores => 4, :core_size => 3.50, :inst_disks => 1, :inst_disk_size => 800, :ephemeral_volumes => 1, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimized => 500 },
352
+ 'i2.2xlarge' => { :price => 1.71, :bits => 64, :ram => 62464, :cores => 8, :core_size => 3.50, :inst_disks => 2, :inst_disk_size => 800, :ephemeral_volumes => 2, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimized => 1000 },
353
+ 'i2.4xlarge' => { :price => 3.41, :bits => 64, :ram => 124928, :cores =>16, :core_size => 3.50, :inst_disks => 4, :inst_disk_size => 800, :ephemeral_volumes => 4, :placement_groupable => true, :virtualization => 'hvm', :ebs_optimized => 1000 },
354
+ 'i2.8xlarge' => { :price => 6.82, :bits => 64, :ram => 249856, :cores =>32, :core_size => 3.50, :inst_disks => 8, :inst_disk_size => 800, :ephemeral_volumes => 8, :placement_groupable => true, :virtualization => 'hvm' },
355
+ 'g2.2xlarge' => { :price => 0.65, :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_optimized => 1000 },
344
356
  })
345
357
 
346
358
  Chef::Config[:ec2_image_info] ||= {}
data/spec/spec_helper.rb CHANGED
@@ -1,4 +1,8 @@
1
1
  $:.unshift File.expand_path('../../lib', __FILE__)
2
+ if ENV['IRONFAN_COV']
3
+ require 'simplecov'
4
+ SimpleCov.start
5
+ end
2
6
  require 'chef'
3
7
  require 'chef/knife'
4
8
  require 'ironfan'
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: 5.0.8
4
+ version: 5.0.10
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-01-16 00:00:00.000000000 Z
12
+ date: 2014-02-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: chef