bosh_aws_cpi 1.3048.0 → 1.3050.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/aws_cpi +11 -6
- data/lib/cloud/aws/cloud.rb +18 -2
- data/lib/cloud/aws/instance_manager.rb +2 -0
- data/lib/cloud/aws/version.rb +1 -1
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 91a6ffeeb7121c9fd177a2b0dd355642b695832d
|
4
|
+
data.tar.gz: f237a99b854f437513f636636249421678aefb56
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b26df12a6cc945d231c6c0f1d0f00af09d639a28b6142faea021a31ea1b556a4163ccda7c9d84f3941a8cb015a132386e27979190e4e9cde23bde9714db4f274
|
7
|
+
data.tar.gz: 4c1185efa9b629fe42b0bc14808666b2501a9ea77135610b5ce76bf174c6a611f7f7e4c34ce43ae80cce59c7ba4766418268bdddfc4a2b26789fc28b1587932a
|
data/bin/aws_cpi
CHANGED
@@ -6,15 +6,20 @@ require 'bosh/cpi'
|
|
6
6
|
require 'bosh/cpi/cli'
|
7
7
|
|
8
8
|
cpi_config = YAML.load_file(ARGV.shift)
|
9
|
-
|
10
9
|
cloud_config = OpenStruct.new(:logger => Logger.new(STDERR))
|
11
10
|
|
12
11
|
Bosh::Clouds::Config.configure(cloud_config)
|
13
12
|
|
14
|
-
cloud_properties = cpi_config['cloud']['properties']
|
15
|
-
|
16
|
-
cpi = Bosh::Clouds::Aws.new(cloud_properties)
|
17
13
|
cpi_log = StringIO.new # Empty on AWS
|
18
|
-
cli = Bosh::Cpi::Cli.new(cpi, cpi_log, STDOUT)
|
19
14
|
|
20
|
-
|
15
|
+
cpi_lambda = lambda do
|
16
|
+
unless cpi_config.has_key?('cloud') && cpi_config['cloud'].has_key?('properties')
|
17
|
+
raise "Could not find cloud properties in the configuration"
|
18
|
+
end
|
19
|
+
cloud_properties = cpi_config['cloud']['properties']
|
20
|
+
Bosh::Clouds::Aws.new(cloud_properties)
|
21
|
+
end
|
22
|
+
|
23
|
+
cli = Bosh::Cpi::Cli.new(cpi_lambda, cpi_log, STDOUT)
|
24
|
+
|
25
|
+
cli.run(ARGF.read)
|
data/lib/cloud/aws/cloud.rb
CHANGED
@@ -226,6 +226,18 @@ module Bosh::AwsCloud
|
|
226
226
|
type
|
227
227
|
end
|
228
228
|
|
229
|
+
##
|
230
|
+
# Check whether an OpenStack volume exists or not
|
231
|
+
#
|
232
|
+
# @param [String] disk_id OpenStack volume UUID
|
233
|
+
# @return [bool] whether the specific disk is there or not
|
234
|
+
def has_disk?(disk_id)
|
235
|
+
with_thread_name("has_disk?(#{disk_id})") do
|
236
|
+
@logger.info("Check the presence of disk with id `#{disk_id}'...")
|
237
|
+
@ec2.volumes[disk_id].exists?
|
238
|
+
end
|
239
|
+
end
|
240
|
+
|
229
241
|
##
|
230
242
|
# Delete EBS volume
|
231
243
|
# @param [String] disk_id EBS volume id
|
@@ -304,14 +316,18 @@ module Bosh::AwsCloud
|
|
304
316
|
instance = @ec2.instances[instance_id]
|
305
317
|
volume = @ec2.volumes[disk_id]
|
306
318
|
|
319
|
+
if volume.exists?
|
320
|
+
detach_ebs_volume(instance, volume)
|
321
|
+
else
|
322
|
+
@logger.info("Disk `#{disk_id}' not found while trying to detach it from vm `#{instance_id}'...")
|
323
|
+
end
|
324
|
+
|
307
325
|
update_agent_settings(instance) do |settings|
|
308
326
|
settings["disks"] ||= {}
|
309
327
|
settings["disks"]["persistent"] ||= {}
|
310
328
|
settings["disks"]["persistent"].delete(disk_id)
|
311
329
|
end
|
312
330
|
|
313
|
-
detach_ebs_volume(instance, volume)
|
314
|
-
|
315
331
|
logger.info("Detached `#{disk_id}' from `#{instance_id}'")
|
316
332
|
end
|
317
333
|
end
|
@@ -111,6 +111,8 @@ module Bosh::AwsCloud
|
|
111
111
|
ephemeral_disk_options = resource_pool.fetch("ephemeral_disk", {})
|
112
112
|
ephemeral_disk_options["instance_type"] = resource_pool["instance_type"]
|
113
113
|
instance_params[:block_device_mappings] = block_device_mapping(ephemeral_disk_options)
|
114
|
+
instance_params[:placement_group] = resource_pool["placement_group"] if resource_pool["placement_group"]
|
115
|
+
instance_params[:dedicated_tenancy] = true if resource_pool["tenancy"] == "dedicated"
|
114
116
|
|
115
117
|
set_user_data_parameter(instance_params, networks_spec)
|
116
118
|
set_key_name_parameter(instance_params, resource_pool["key_name"], options["aws"]["default_key_name"])
|
data/lib/cloud/aws/version.rb
CHANGED
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.
|
4
|
+
version: 1.3050.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- VMware
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-08-
|
11
|
+
date: 2015-08-20 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.
|
33
|
+
version: 1.3050.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.
|
40
|
+
version: 1.3050.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.
|
47
|
+
version: 1.3050.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.
|
54
|
+
version: 1.3050.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.
|
61
|
+
version: 1.3050.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.
|
68
|
+
version: 1.3050.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: httpclient
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -138,7 +138,7 @@ dependencies:
|
|
138
138
|
version: '0'
|
139
139
|
description: |-
|
140
140
|
BOSH AWS CPI
|
141
|
-
|
141
|
+
b92cdc
|
142
142
|
email: support@cloudfoundry.com
|
143
143
|
executables:
|
144
144
|
- aws_cpi
|