fog 0.2.23 → 0.2.24

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.
@@ -7,8 +7,8 @@ Gem::Specification.new do |s|
7
7
  ## If your rubyforge_project name is different, then edit it and comment out
8
8
  ## the sub! line in the Rakefile
9
9
  s.name = 'fog'
10
- s.version = '0.2.23'
11
- s.date = '2010-08-16'
10
+ s.version = '0.2.24'
11
+ s.date = '2010-08-17'
12
12
  s.rubyforge_project = 'fog'
13
13
 
14
14
  ## Make sure your summary is short. The description may be as long
data/lib/fog.rb CHANGED
@@ -41,7 +41,7 @@ require 'fog/vcloud'
41
41
  module Fog
42
42
 
43
43
  unless const_defined?(:VERSION)
44
- VERSION = '0.2.23'
44
+ VERSION = '0.2.24'
45
45
  end
46
46
 
47
47
  module Mock
@@ -29,10 +29,11 @@ module Fog
29
29
  attribute :root_device_name, 'rootDeviceName'
30
30
  attribute :root_device_type, 'rootDeviceType'
31
31
  attribute :state, 'instanceState'
32
+ attribute :subnet_id, 'subnetId'
32
33
  attribute :user_data
33
34
 
34
35
  def initialize(attributes={})
35
- @groups ||= ["default"]
36
+ @groups ||= ["default"] if attributes[:subnet_id].blank?
36
37
  @flavor_id ||= 'm1.small'
37
38
  super
38
39
  end
@@ -124,8 +125,18 @@ module Fog
124
125
  'Placement.AvailabilityZone' => @availability_zone,
125
126
  'RamdiskId' => @ramdisk_id,
126
127
  'SecurityGroup' => @groups,
128
+ 'SubnetId' => subnet_id,
127
129
  'UserData' => @user_data
128
130
  }
131
+
132
+ # If subnet is defined we are working on a virtual private cloud.
133
+ # subnet & security group cannot co-exist. I wish VPC just ignored
134
+ # the security group parameter instead, it would be much easier!
135
+ if subnet_id.blank?
136
+ options.delete('SubnetId')
137
+ else
138
+ options.delete('SecurityGroup')
139
+ end
129
140
 
130
141
  data = connection.run_instances(@image_id, 1, 1, options)
131
142
  merge_attributes(data.body['instancesSet'].first)
@@ -76,6 +76,8 @@ module Fog
76
76
  else
77
77
  @instance['monitoring'][name] = false
78
78
  end
79
+ when 'subnetId'
80
+ @response[name] = @value
79
81
  end
80
82
  end
81
83
 
@@ -26,7 +26,7 @@ module Fog
26
26
  # * 'Ebs.SnapshotId'<~String> - id of snapshot to boot volume from
27
27
  # * 'Ebs.VolumeSize'<~String> - size of volume in GiBs required unless snapshot is specified
28
28
  # * 'Ebs.DeleteOnTermination'<~String> - specifies whether or not to delete the volume on instance termination
29
- # * 'SecurityGroup'<~Array> or <~String> - Name of security group(s) for instances
29
+ # * 'SecurityGroup'<~Array> or <~String> - Name of security group(s) for instances (you must omit this parameter if using Virtual Private Clouds)
30
30
  # * 'InstanceInitiatedShutdownBehaviour'<~String> - specifies whether volumes are stopped or terminated when instance is shutdown
31
31
  # * 'InstanceType'<~String> - Type of instance to boot. Valid options
32
32
  # in ['m1.small', 'm1.large', 'm1.xlarge', 'c1.medium', 'c1.xlarge', 'm2.2xlarge', 'm2.4xlarge']
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 23
9
- version: 0.2.23
8
+ - 24
9
+ version: 0.2.24
10
10
  platform: ruby
11
11
  authors:
12
12
  - geemus (Wesley Beary)
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-08-16 00:00:00 -07:00
17
+ date: 2010-08-17 00:00:00 -07:00
18
18
  default_executable: fog
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency