bosh_aws_cpi 1.2697.0 → 1.2707.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 456f9080f06c1497ee3373f146e864ef8b3791b5
4
- data.tar.gz: ac957771a31ebfa5614208ca96642c3322577531
3
+ metadata.gz: 49712bfb2cf1a45d7b3a3c1fe0258d45229c2b81
4
+ data.tar.gz: 1386c0d88b30296aa1e6f87ba08e154c6b88b9a7
5
5
  SHA512:
6
- metadata.gz: 39e38c3460ba89a9e9e00e2a8d3e685e8d7a7cfd6cfbdb91199d8330a1052aa4924ada559d830e03036c9219e6a0c176a6a0b5bb13cd3d1b56e1e2809ee38314
7
- data.tar.gz: 0307eeb3362009915763f2357ff60a6d1f04c30a5692b2b06d1aecea72efce54df61081b4544683676c0bafd9f5f860de23f262215f70285219ea0d5022debfa
6
+ metadata.gz: 64c2970c3411a408e2b1ceb5acc0ea3f278ddea3ecb0868db77297317a8f083ea78250dc529ab17313584cf1617dea384df44713ccddce670c24a5b1394d3e12
7
+ data.tar.gz: 0620ce9fd27fbe8cda976d19e5d176ed72571bad6b3868e10acc7d6fce382b05f3ef75712738e5503f588284ccdbcd7152aee73f83f788316dbe948f21bbc8e0
@@ -162,13 +162,23 @@ module Bosh::AwsCloud
162
162
  # @param [optional, String] instance_id EC2 instance id
163
163
  # of the VM that this disk will be attached to
164
164
  # @return [String] created EBS volume id
165
- def create_disk(size, instance_id = nil)
165
+ def create_disk(size, cloud_properties, instance_id = nil)
166
166
  with_thread_name("create_disk(#{size}, #{instance_id})") do
167
167
  validate_disk_size(size)
168
168
 
169
+ if cloud_properties.has_key?('type')
170
+ validate_disk_type(cloud_properties['type'])
171
+ volume_type = cloud_properties['type']
172
+ else
173
+ volume_type = 'standard'
174
+ end
175
+
169
176
  # if the disk is created for an instance, use the same availability zone as they must match
170
- volume = @ec2.volumes.create(:size => (size / 1024.0).ceil,
171
- :availability_zone => @az_selector.select_availability_zone(instance_id))
177
+ volume = @ec2.volumes.create(
178
+ size: (size / 1024.0).ceil,
179
+ availability_zone: @az_selector.select_availability_zone(instance_id),
180
+ volume_type: volume_type
181
+ )
172
182
 
173
183
  logger.info("Creating volume '#{volume.id}'")
174
184
  ResourceWait.for_volume(volume: volume, state: :available)
@@ -178,10 +188,16 @@ module Bosh::AwsCloud
178
188
  end
179
189
 
180
190
  def validate_disk_size(size)
181
- raise ArgumentError, "disk size needs to be an integer" unless size.kind_of?(Integer)
191
+ raise ArgumentError, 'disk size needs to be an integer' unless size.kind_of?(Integer)
182
192
 
183
- cloud_error("AWS CPI minimum disk size is 1 GiB") if size < 1024
184
- cloud_error("AWS CPI maximum disk size is 1 TiB") if size > 1024 * 1000
193
+ cloud_error('AWS CPI minimum disk size is 1 GiB') if size < 1024
194
+ cloud_error('AWS CPI maximum disk size is 1 TiB') if size > 1024 * 1000
195
+ end
196
+
197
+ def validate_disk_type(type)
198
+ unless %w[gp2 standard].include?(type)
199
+ cloud_error('AWS CPI supports only gp2 or standard disk type')
200
+ end
185
201
  end
186
202
 
187
203
  ##
@@ -403,7 +419,7 @@ module Bosh::AwsCloud
403
419
 
404
420
  # 1. Create and mount new EBS volume (2GB default)
405
421
  disk_size = stemcell_properties["disk"] || 2048
406
- volume_id = create_disk(disk_size, current_vm_id)
422
+ volume_id = create_disk(disk_size, {}, current_vm_id)
407
423
  volume = @ec2.volumes[volume_id]
408
424
  instance = @ec2.instances[current_vm_id]
409
425
 
@@ -1,5 +1,5 @@
1
1
  module Bosh
2
2
  module AwsCloud
3
- VERSION = '1.2697.0'
3
+ VERSION = '1.2707.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bosh_aws_cpi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2697.0
4
+ version: 1.2707.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - VMware
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-21 00:00:00.000000000 Z
11
+ date: 2014-08-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -30,42 +30,42 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.2697.0
33
+ version: 1.2707.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.2697.0
40
+ version: 1.2707.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bosh_cpi
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.2697.0
47
+ version: 1.2707.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.2697.0
54
+ version: 1.2707.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: bosh-registry
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 1.2697.0
61
+ version: 1.2707.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 1.2697.0
68
+ version: 1.2707.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: httpclient
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -96,7 +96,7 @@ dependencies:
96
96
  version: 0.8.2
97
97
  description: |-
98
98
  BOSH AWS CPI
99
- ca0ac0
99
+ 3e8bee
100
100
  email: support@cloudfoundry.com
101
101
  executables:
102
102
  - bosh_aws_console