fog-softlayer 0.3.15 → 0.3.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/fog/softlayer/compute.rb +2 -0
- data/lib/fog/softlayer/models/compute/network_component.rb +44 -0
- data/lib/fog/softlayer/models/compute/network_components.rb +22 -0
- data/lib/fog/softlayer/models/compute/server.rb +35 -1
- data/lib/fog/softlayer/requests/compute/get_bare_metal_server.rb +1 -1
- data/lib/fog/softlayer/requests/compute/get_bare_metal_servers.rb +1 -1
- data/lib/fog/softlayer/requests/compute/get_vm.rb +1 -1
- data/lib/fog/softlayer/requests/compute/get_vms.rb +1 -1
- data/lib/fog/softlayer/version.rb +1 -1
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NmQwNjc3NzUzZWIwY2I2YTcwYjNjYzA5ZDFjNGRhYWI1ZmIxOWZlMA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZjNkZGM0NmM4ODhiMzY0ZjhmZDkxMjNmMTNiMGI2YjcxYmM5Zjk0MA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
OTQ2ZGIxMDEyYzkzMDk4MzVlNmZmMDM5ZjgzM2YxMTJiZGQ2NjMwOGNjYWU1
|
10
|
+
MjVjNTZmMDk3ZDM2ZGZkODM5ZThlZDkxYzgxMGIzYWRkNmUzMTk2NTZhMjA3
|
11
|
+
YjgwOTFhNGNiYzA5ODA3NGQ2NTM2OTJhNmQ4ZTZmZjNjOTcwMjQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MGJkMGJkYzZlMWVhMjg0NTVlNGJlYjI5ZDFhMzU3YjgzYzRjM2NlYTdkODgy
|
14
|
+
MDU2MTg2ZGM5OTZmOGI5YzEyODBmODc5NGM0MWJiYzYzN2ZlYzE3MGZiNTBl
|
15
|
+
Yjk2YTY3ZWUxZGIyNTBkN2UwODI1NzhjMTlkYmEyNzg2NjUzYzk=
|
@@ -0,0 +1,44 @@
|
|
1
|
+
#
|
2
|
+
# Author:: Matt Eldridge (<matt.eldridge@us.ibm.com>)
|
3
|
+
# © Copyright IBM Corporation 2014.
|
4
|
+
#
|
5
|
+
# LICENSE: MIT (http://opensource.org/licenses/MIT)
|
6
|
+
#
|
7
|
+
|
8
|
+
require 'fog/core/model'
|
9
|
+
|
10
|
+
module Fog
|
11
|
+
module Compute
|
12
|
+
class Softlayer
|
13
|
+
class NetworkComponent < Fog::Model
|
14
|
+
identity :id
|
15
|
+
|
16
|
+
attribute :name
|
17
|
+
attribute :port
|
18
|
+
attribute :mac_address, :aliases => 'macAddress'
|
19
|
+
attribute :max_speed, :aliases => 'maxSpeed'
|
20
|
+
attribute :modify_date, :aliases => 'modifyDate'
|
21
|
+
attribute :status
|
22
|
+
attribute :speed
|
23
|
+
attribute :primary_ip_address, :aliases => 'primaryIpAddress'
|
24
|
+
|
25
|
+
def save
|
26
|
+
raise "#{self.class.name} objects are readonly."
|
27
|
+
end
|
28
|
+
|
29
|
+
def create
|
30
|
+
raise "#{self.class.name} objects are readonly."
|
31
|
+
end
|
32
|
+
|
33
|
+
def update
|
34
|
+
raise "#{self.class.name} objects are readonly."
|
35
|
+
end
|
36
|
+
|
37
|
+
def destroy
|
38
|
+
raise "#{self.class.name} objects are readonly."
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
#
|
2
|
+
# Author:: Matt Eldridge (<matt.eldridge@us.ibm.com>)
|
3
|
+
# © Copyright IBM Corporation 2014.
|
4
|
+
#
|
5
|
+
# LICENSE: MIT (http://opensource.org/licenses/MIT)
|
6
|
+
#
|
7
|
+
|
8
|
+
require 'fog/core/collection'
|
9
|
+
require 'fog/softlayer/models/compute/key_pair'
|
10
|
+
|
11
|
+
module Fog
|
12
|
+
module Compute
|
13
|
+
class Softlayer
|
14
|
+
class NetworkComponents < Fog::Collection
|
15
|
+
model Fog::Compute::Softlayer::NetworkComponent
|
16
|
+
|
17
|
+
# just a stub
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -28,6 +28,7 @@ module Fog
|
|
28
28
|
attribute :image_id
|
29
29
|
attribute :ephemeral_storage, :aliases => 'localDiskFlag'
|
30
30
|
attribute :key_pairs, :aliases => 'sshKeys'
|
31
|
+
attribute :network_components
|
31
32
|
|
32
33
|
# Times
|
33
34
|
attribute :created_at, :aliases => ['createDate', 'provisionDate'], :type => :time
|
@@ -129,6 +130,14 @@ module Fog
|
|
129
130
|
if self.key_pairs
|
130
131
|
attributes[:key_pairs].map! { |key| { :id => key.id } }
|
131
132
|
end
|
133
|
+
if self.network_components
|
134
|
+
self.network_components = self.network_components.map do |component|
|
135
|
+
component[:maxSpeed] = component.delete(:speed) if component[:speed]
|
136
|
+
component[:maxSpeed] = component.delete(:max_speed) if component[:max_speed]
|
137
|
+
component
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
132
141
|
remap_attributes(attributes, attributes_mapping)
|
133
142
|
clean_attributes
|
134
143
|
end
|
@@ -202,6 +211,30 @@ module Fog
|
|
202
211
|
attributes[:user_data]
|
203
212
|
end
|
204
213
|
|
214
|
+
def network_components
|
215
|
+
if id
|
216
|
+
(public_network_components << private_network_components).flatten
|
217
|
+
else
|
218
|
+
attributes[:network_components]
|
219
|
+
end
|
220
|
+
end
|
221
|
+
|
222
|
+
def public_network_components
|
223
|
+
if attributes['frontendNetworkComponents']
|
224
|
+
attributes['frontendNetworkComponents'].map { |n| Fog::Compute::Softlayer::NetworkComponent.new(n) }
|
225
|
+
else
|
226
|
+
[]
|
227
|
+
end
|
228
|
+
end
|
229
|
+
|
230
|
+
def private_network_components
|
231
|
+
if attributes['backendNetworkComponents']
|
232
|
+
attributes['backendNetworkComponents'].map { |n| Fog::Compute::Softlayer::NetworkComponent.new(n) }
|
233
|
+
else
|
234
|
+
[]
|
235
|
+
end
|
236
|
+
end
|
237
|
+
|
205
238
|
def ready?
|
206
239
|
if bare_metal?
|
207
240
|
state == "on"
|
@@ -311,7 +344,8 @@ module Fog
|
|
311
344
|
:private_vlan => :primaryBackendNetworkComponent,
|
312
345
|
:key_pairs => :sshKeys,
|
313
346
|
:private_network_only => :privateNetworkOnlyFlag,
|
314
|
-
:user_data => :userData
|
347
|
+
:user_data => :userData,
|
348
|
+
:network_components => :networkComponents,
|
315
349
|
}
|
316
350
|
|
317
351
|
conditional = if bare_metal?
|
@@ -26,7 +26,7 @@ module Fog
|
|
26
26
|
|
27
27
|
class Real
|
28
28
|
def get_bare_metal_server(identifier)
|
29
|
-
request(:hardware_server, identifier, :expected => [200, 404], :query => 'objectMask=mask[datacenter,tagReferences,memory,provisionDate,processorCoreAmount,hardDrives,datacenter,hourlyBillingFlag,operatingSystem.softwareLicense.softwareDescription.referenceCode,sshKeys.id,privateNetworkOnlyFlag,userData]')
|
29
|
+
request(:hardware_server, identifier, :expected => [200, 404], :query => 'objectMask=mask[datacenter,tagReferences,memory,provisionDate,processorCoreAmount,hardDrives,datacenter,hourlyBillingFlag,operatingSystem.softwareLicense.softwareDescription.referenceCode,sshKeys.id,privateNetworkOnlyFlag,userData,frontendNetworkComponents,backendNetworkComponents]')
|
30
30
|
end
|
31
31
|
end
|
32
32
|
end
|
@@ -20,7 +20,7 @@ module Fog
|
|
20
20
|
|
21
21
|
class Real
|
22
22
|
def get_bare_metal_servers
|
23
|
-
request(:account, :get_hardware, :query => 'objectMask=mask[datacenter,tagReferences,memory,processorCoreAmount,hardDrives,datacenter,hourlyBillingFlag,operatingSystem.softwareLicense.softwareDescription.referenceCode,sshKeys.id,privateNetworkOnlyFlag,userData]')
|
23
|
+
request(:account, :get_hardware, :query => 'objectMask=mask[datacenter,tagReferences,memory,processorCoreAmount,hardDrives,datacenter,hourlyBillingFlag,operatingSystem.softwareLicense.softwareDescription.referenceCode,sshKeys.id,privateNetworkOnlyFlag,userData,frontendNetworkComponents,backendNetworkComponents]')
|
24
24
|
end
|
25
25
|
end
|
26
26
|
end
|
@@ -26,7 +26,7 @@ module Fog
|
|
26
26
|
|
27
27
|
class Real
|
28
28
|
def get_vm(identifier)
|
29
|
-
request(:virtual_guest, identifier, :expected => [200, 404], :query => 'objectMask=mask[datacenter,tagReferences,blockDevices,blockDeviceTemplateGroup.globalIdentifier,operatingSystem.softwareLicense.softwareDescription.referenceCode,sshKeys.id,privateNetworkOnlyFlag,userData]')
|
29
|
+
request(:virtual_guest, identifier, :expected => [200, 404], :query => 'objectMask=mask[datacenter,tagReferences,blockDevices,blockDeviceTemplateGroup.globalIdentifier,operatingSystem.softwareLicense.softwareDescription.referenceCode,sshKeys.id,privateNetworkOnlyFlag,userData,frontendNetworkComponents,backendNetworkComponents]')
|
30
30
|
end
|
31
31
|
end
|
32
32
|
end
|
@@ -20,7 +20,7 @@ module Fog
|
|
20
20
|
|
21
21
|
class Real
|
22
22
|
def get_vms
|
23
|
-
request(:account, :get_virtual_guests, :query => 'objectMask=mask[datacenter,tagReferences,blockDevices,blockDeviceTemplateGroup.globalIdentifier,operatingSystem.softwareLicense.softwareDescription.referenceCode,primaryNetworkComponent.networkVlan,sshKeys.id,privateNetworkOnlyFlag,userData]')
|
23
|
+
request(:account, :get_virtual_guests, :query => 'objectMask=mask[datacenter,tagReferences,blockDevices,blockDeviceTemplateGroup.globalIdentifier,operatingSystem.softwareLicense.softwareDescription.referenceCode,primaryNetworkComponent.networkVlan,sshKeys.id,privateNetworkOnlyFlag,userData,frontendNetworkComponents,backendNetworkComponents]')
|
24
24
|
end
|
25
25
|
end
|
26
26
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fog-softlayer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Eldridge
|
@@ -219,6 +219,8 @@ files:
|
|
219
219
|
- lib/fog/softlayer/models/compute/images.rb
|
220
220
|
- lib/fog/softlayer/models/compute/key_pair.rb
|
221
221
|
- lib/fog/softlayer/models/compute/key_pairs.rb
|
222
|
+
- lib/fog/softlayer/models/compute/network_component.rb
|
223
|
+
- lib/fog/softlayer/models/compute/network_components.rb
|
222
224
|
- lib/fog/softlayer/models/compute/server.rb
|
223
225
|
- lib/fog/softlayer/models/compute/servers.rb
|
224
226
|
- lib/fog/softlayer/models/compute/tag.rb
|