fog-softlayer 0.3.6.pre.f7e3358 → 0.3.6.pre.f82ffe9

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.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZWI2OTJkMjg3YmQyM2I5MzY4MTZiNmI1YmMwNDQwM2I3YmMzNTQ4OA==
4
+ Y2EwNTExYmJhNGM1ZGM0Y2I2M2JmMmY5MTQxY2I0ZDZkZjI4MTQ5Mg==
5
5
  data.tar.gz: !binary |-
6
- ZWM0ZmQ5N2NmYzc0OTc3NDZmNjE5YmY2N2Y0Mzg1NTM0NTk4ZTYxMg==
6
+ MTU4ZTRmMjkxYTFhMDAxNjg3MGU2NmU5N2E3ZGEwOGU3MzBhYTkyMA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MjUzMDZjYjBlMzQzYzI1ZjM1ZjI3OGNlYjk5MmM2ZTE2MDg3YTk1YmMwMDg1
10
- MmRhMzBkZTdjNmJmYTk2NTVkOWQ2MGY2OWY1OWZjNmY5MmUyYzcyOGNiNzVk
11
- M2I3MDZmMzM0ZTFkMGViMDViODRhMWQ1NDQwOTVhZmEwNzExODQ=
9
+ YmJhODZmZWE3MjMwNjNkNGFlODIwYTU4OTMzOTE2NjJhNWI2MjlkM2NjYjYz
10
+ MGJhOTJiMmRjOGNiZjczNWI5N2ExMGNjMDhlYjRmY2YyN2VmOTk4YTM0ZTVm
11
+ Y2E3MGM5ZmY1MzI2NmU2OTM4ZjFlM2VlYjFhOTQ4NGViZDhlYjg=
12
12
  data.tar.gz: !binary |-
13
- OTllNjkwOWJlNGI2NTBlMjc5MzNjMzgzYWZiYmJiMDJlYTMwNDM4YjJjMmEw
14
- ZWZmYzY1ODNjZmFlYTQ2NzBmODExMjIwZTljODAwN2UzYmFhMTJkMmZjNWMy
15
- NzUyODhhMTA2YWRkYTQ5NGVkNDY5YjcyNDkxOWJlN2E3MTBjNGM=
13
+ NjJhOWQ5MDVlZDNhZWRmM2NjNzYxZTAzMmZmNDM4Y2NlMjEzMTc2MTk1MjA1
14
+ ZTAwNjk3MWNiYjFhNWJkYzNmNWQwYWYzNzJjMGRjYjE0ZGJmY2YwNTZjNjEz
15
+ NzMyZTY5ZGQyN2NhMGEzYzA3YTFhMDFjNzA0OGE4MjNjZTM2MWY=
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  ### `fog-softlayer` - SoftLayer module for fog.
2
2
  [![Gem Version](https://badge.fury.io/rb/fog-softlayer.png)](http://badge.fury.io/rb/fog-softlayer)
3
- [![Build Status](https://api.travis-ci.org/fog/fog-softlayer.svg)](https://travis-ci.org/fog/fog-softlayer)
4
- [![Dependency Status](https://gemnasium.com/fog/fog-softlayer.svg)](https://gemnasium.com/fog/fog-softlayer)
3
+ [![Build Status](https://api.travis-ci.org/softlayer/fog-softlayer.svg)](https://travis-ci.org/softlayer/fog-softlayer)
4
+ [![Dependency Status](https://gemnasium.com/softlayer/fog-softlayer.svg)](https://gemnasium.com/softlayer/fog-softlayer)
5
5
 
6
6
  This gem is a module for the `fog` gem that allows you to manage resources in
7
7
  the SoftLayer Cloud.
@@ -22,7 +22,6 @@ Gem::Specification.new do |spec|
22
22
 
23
23
  spec.add_dependency 'fog-core'
24
24
  spec.add_dependency 'fog-json'
25
- spec.add_dependency 'fog-xml', '0.0.1.alpha'
26
25
 
27
26
  spec.add_development_dependency('minitest')
28
27
  spec.add_development_dependency('rake')
@@ -33,6 +32,5 @@ Gem::Specification.new do |spec|
33
32
  spec.add_development_dependency('shindo', '~> 0.3.4')
34
33
  spec.add_development_dependency('fission')
35
34
  spec.add_development_dependency('pry')
36
- spec.add_development_dependency('pry-debugger')
37
35
  spec.add_development_dependency('osrcry')
38
36
  end
data/lib/fog.rb CHANGED
@@ -16,7 +16,6 @@ require 'fog'
16
16
 
17
17
  # Previously treated as "core"
18
18
  # data exchange specific (to be extracted and used on a per provider basis)
19
- require 'fog/xml'
20
19
  require 'fog/json'
21
20
 
22
21
  require 'fog/softlayer'
@@ -17,7 +17,8 @@ module Fog
17
17
  requires :softlayer_username, :softlayer_api_key
18
18
 
19
19
  # Excon connection settings
20
- recognizes :softlayer_api_url, :softlayer_default_domain, :softlayer_default_datacenter
20
+ recognizes :softlayer_api_url
21
+ recognizes :softlayer_default_domain
21
22
 
22
23
 
23
24
  model_path 'fog/softlayer/models/compute'
@@ -25,8 +26,6 @@ module Fog
25
26
  model :flavor
26
27
  collection :images
27
28
  model :image
28
- collection :key_pairs
29
- model :key_pair
30
29
  collection :servers
31
30
  model :server
32
31
  collection :tags
@@ -35,21 +34,17 @@ module Fog
35
34
  request_path 'fog/softlayer/requests/compute'
36
35
  request :create_bare_metal_server
37
36
  request :create_bare_metal_tags
38
- request :create_key_pair
39
37
  request :create_vm
40
38
  request :create_vms
41
39
  request :create_vm_tags
42
40
  request :delete_bare_metal_server
43
41
  request :delete_bare_metal_tags
44
- request :delete_key_pair
45
42
  request :delete_vm
46
43
  request :delete_vm_tags
47
44
  request :describe_tags
48
45
  request :get_bare_metal_server
49
46
  request :get_bare_metal_servers
50
47
  request :get_bare_metal_tags
51
- request :get_key_pair
52
- request :get_key_pairs
53
48
  request :get_references_by_tag_name
54
49
  request :get_tag
55
50
  request :get_vm_tags
@@ -70,7 +65,6 @@ module Fog
70
65
  @virtual_guests = []
71
66
  @bare_metal_servers = []
72
67
  @tags = []
73
- @key_pairs = []
74
68
  super(args)
75
69
  end
76
70
 
@@ -100,16 +94,13 @@ module Fog
100
94
  # Makes real connections to Softlayer.
101
95
  #
102
96
  class Real
103
- attr_accessor :softlayer_default_domain
104
- attr_accessor :softlayer_default_datacenter
97
+ attr_accessor :default_domain
105
98
  include Fog::Softlayer::Slapi
106
99
  include Fog::Softlayer::Compute::Shared
107
100
 
108
101
  def initialize(options={})
109
102
  @softlayer_api_key = options[:softlayer_api_key]
110
103
  @softlayer_username = options[:softlayer_username]
111
- @softlayer_default_domain = options[:softlayer_default_domain]
112
- @softlayer_default_datacenter = options[:softlayer_default_datacenter]
113
104
  end
114
105
 
115
106
  def request(service, path, options = {})
@@ -117,6 +108,7 @@ module Fog
117
108
  Fog::Softlayer::Slapi.slapi_request(service, path, options)
118
109
  end
119
110
 
111
+
120
112
  def list_servers
121
113
  (self.get_vms.body.map {|s| s['bare_metal'] = false; s } << self.get_bare_metal_servers.body.map {|s| s['bare_metal'] = true; s}).flatten
122
114
  end
@@ -123,60 +123,32 @@ module Fog
123
123
  if self.private_vlan
124
124
  attributes[:private_vlan] = { :networkVlan => { :id => self.private_vlan.id } }
125
125
  end
126
- if self.key_pairs
127
- attributes[:key_pairs].map! { |key| { :id => key.id } }
128
- end
129
126
  remap_attributes(attributes, attributes_mapping)
130
127
  clean_attributes
131
128
  end
132
129
 
133
- def os
134
- attributes[:os]['softwareLicense']['softwareDescription']['referenceCode']
135
- end
136
-
137
- def os_code
138
- self.os if attributes[:os]
130
+ def vlan
131
+ attributes[:vlan] ||= _get_vlan
139
132
  end
140
133
 
141
134
  def private_vlan
142
135
  attributes[:private_vlan] ||= _get_private_vlan
143
136
  end
144
137
 
145
- def private_vlan=(value)
138
+ def vlan=(value)
146
139
  unless value.is_a?(Integer) or value.is_a?(Fog::Network::Softlayer::Network)
147
140
  raise ArgumentError, "vlan argument for #{self.class.name}##{__method__} must be Integer or Fog::Network::Softlayer::Network."
148
141
  end
149
142
  value = Fog::Network[:softlayer].networks.get(value) if value.is_a?(Integer)
150
- attributes[:private_vlan] = value
151
- end
152
-
153
- def key_pairs
154
- attributes[:key_pairs]
155
- end
156
-
157
- def key_pairs=(keys)
158
- raise ArgumentError, "Argument #{local_variables.first.to_s} for #{self.class.name}##{__method__} must be Array." unless keys.is_a?(Array)
159
- attributes[:key_pairs] = []
160
- keys.map do |key|
161
- key = self.symbolize_keys(key) if key.is_a?(Hash)
162
- unless key[:id] or key.is_a?(Fog::Compute::Softlayer::KeyPair)
163
- raise ArgumentError, "Elements of keys array for #{self.class.name}##{__method__} must be a Hash with key 'id', or Fog::Compute::Softlayer::KeyPair"
164
- end
165
- key = service.key_pairs.get(key[:id]) unless key[:id].is_a?(Fog::Compute::Softlayer::KeyPair)
166
- attributes[:key_pairs] << key
167
- end
168
- end
169
-
170
- def vlan
171
- attributes[:vlan] ||= _get_vlan
143
+ attributes[:vlan] = value
172
144
  end
173
145
 
174
- def vlan=(value)
146
+ def private_vlan=(value)
175
147
  unless value.is_a?(Integer) or value.is_a?(Fog::Network::Softlayer::Network)
176
148
  raise ArgumentError, "vlan argument for #{self.class.name}##{__method__} must be Integer or Fog::Network::Softlayer::Network."
177
149
  end
178
150
  value = Fog::Network[:softlayer].networks.get(value) if value.is_a?(Integer)
179
- attributes[:vlan] = value
151
+ attributes[:private_vlan] = value
180
152
  end
181
153
 
182
154
  def ram=(set)
@@ -240,6 +212,7 @@ module Fog
240
212
  # * BUILD -> ERROR (on error)
241
213
  def save
242
214
  raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if persisted?
215
+
243
216
  copy = self.dup
244
217
  copy.pre_save
245
218
 
@@ -290,7 +263,6 @@ module Fog
290
263
  :os_code => :operatingSystemReferenceCode,
291
264
  :vlan => :primaryNetworkComponent,
292
265
  :private_vlan => :primaryBackendNetworkComponent,
293
- :key_pairs => :sshKeys,
294
266
 
295
267
  }
296
268
 
@@ -359,8 +331,7 @@ module Fog
359
331
  def set_defaults
360
332
  attributes[:hourly_billing_flag] = true if attributes[:hourly_billing_flag].nil?
361
333
  attributes[:ephemeral_storage] = false if attributes[:ephemeral_storage].nil?
362
- attributes[:domain] = service.softlayer_default_domain if service.softlayer_default_domain and attributes[:domain].nil?
363
- self.datacenter = service.softlayer_default_datacenter if service.softlayer_default_datacenter and attributes[:datacenter].nil?
334
+ attributes[:domain] = service.default_domain if service.default_domain and attributes[:domain].nil?
364
335
  end
365
336
 
366
337
  end
@@ -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]')
29
+ request(:hardware_server, identifier, :expected => [200, 404], :query => 'objectMask=mask[datacenter,tagReferences,memory,provisionDate,processorCoreAmount,hardDrives,datacenter,hourlyBillingFlag,operatingSystem.passwords.password]')
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]')
23
+ request(:account, :get_hardware, :query => 'objectMask=mask[datacenter,tagReferences,memory,processorCoreAmount,hardDrives,datacenter,hourlyBillingFlag,operatingSystem.passwords.password]')
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]')
29
+ request(:virtual_guest, identifier, :expected => [200, 404], :query => 'objectMask=mask[datacenter,tagReferences,blockDevices,blockDeviceTemplateGroup.globalIdentifier,operatingSystem.passwords.password]')
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]')
23
+ request(:account, :get_virtual_guests, :query => 'objectMask=mask[datacenter,tagReferences,blockDevices,blockDeviceTemplateGroup.globalIdentifier,operatingSystem.passwords.password,primaryNetworkComponent.networkVlan]')
24
24
  end
25
25
  end
26
26
  end
@@ -7,6 +7,6 @@
7
7
 
8
8
  module Fog
9
9
  module Softlayer
10
- VERSION = "0.3.6-f7e3358"
10
+ VERSION = "0.3.6-f82ffe9"
11
11
  end
12
12
  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.6.pre.f7e3358
4
+ version: 0.3.6.pre.f82ffe9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Eldridge
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - ! '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: fog-xml
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - '='
46
- - !ruby/object:Gem::Version
47
- version: 0.0.1.alpha
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - '='
53
- - !ruby/object:Gem::Version
54
- version: 0.0.1.alpha
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: minitest
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -178,20 +164,6 @@ dependencies:
178
164
  - - ! '>='
179
165
  - !ruby/object:Gem::Version
180
166
  version: '0'
181
- - !ruby/object:Gem::Dependency
182
- name: pry-debugger
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ! '>='
186
- - !ruby/object:Gem::Version
187
- version: '0'
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - ! '>='
193
- - !ruby/object:Gem::Version
194
- version: '0'
195
167
  - !ruby/object:Gem::Dependency
196
168
  name: osrcry
197
169
  requirement: !ruby/object:Gem::Requirement
@@ -244,8 +216,6 @@ files:
244
216
  - lib/fog/softlayer/models/compute/flavors.rb
245
217
  - lib/fog/softlayer/models/compute/image.rb
246
218
  - lib/fog/softlayer/models/compute/images.rb
247
- - lib/fog/softlayer/models/compute/key_pair.rb
248
- - lib/fog/softlayer/models/compute/key_pairs.rb
249
219
  - lib/fog/softlayer/models/compute/server.rb
250
220
  - lib/fog/softlayer/models/compute/servers.rb
251
221
  - lib/fog/softlayer/models/compute/tag.rb
@@ -271,27 +241,22 @@ files:
271
241
  - lib/fog/softlayer/network.rb
272
242
  - lib/fog/softlayer/requests/compute/create_bare_metal_server.rb
273
243
  - lib/fog/softlayer/requests/compute/create_bare_metal_tags.rb
274
- - lib/fog/softlayer/requests/compute/create_key_pair.rb
275
244
  - lib/fog/softlayer/requests/compute/create_vm.rb
276
245
  - lib/fog/softlayer/requests/compute/create_vm_tags.rb
277
246
  - lib/fog/softlayer/requests/compute/create_vms.rb
278
247
  - lib/fog/softlayer/requests/compute/delete_bare_metal_server.rb
279
248
  - lib/fog/softlayer/requests/compute/delete_bare_metal_tags.rb
280
- - lib/fog/softlayer/requests/compute/delete_key_pair.rb
281
249
  - lib/fog/softlayer/requests/compute/delete_vm.rb
282
250
  - lib/fog/softlayer/requests/compute/delete_vm_tags.rb
283
251
  - lib/fog/softlayer/requests/compute/describe_tags.rb
284
252
  - lib/fog/softlayer/requests/compute/get_bare_metal_server.rb
285
253
  - lib/fog/softlayer/requests/compute/get_bare_metal_servers.rb
286
254
  - lib/fog/softlayer/requests/compute/get_bare_metal_tags.rb
287
- - lib/fog/softlayer/requests/compute/get_key_pair.rb
288
- - lib/fog/softlayer/requests/compute/get_key_pairs.rb
289
255
  - lib/fog/softlayer/requests/compute/get_references_by_tag_name.rb
290
256
  - lib/fog/softlayer/requests/compute/get_tag.rb
291
257
  - lib/fog/softlayer/requests/compute/get_vm.rb
292
258
  - lib/fog/softlayer/requests/compute/get_vm_tags.rb
293
259
  - lib/fog/softlayer/requests/compute/get_vms.rb
294
- - lib/fog/softlayer/requests/compute/update_key_pair.rb
295
260
  - lib/fog/softlayer/requests/dns/create_domain.rb
296
261
  - lib/fog/softlayer/requests/dns/create_record.rb
297
262
  - lib/fog/softlayer/requests/dns/delete_domain.rb
@@ -1,48 +0,0 @@
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 KeyPair < Fog::Model
14
- identity :id
15
-
16
- attribute :label
17
- attribute :create_date, :aliases => 'createDate'
18
- attribute :modify_date, :aliases => 'modifyDate'
19
- attribute :note, :aliases => 'notes'
20
- attribute :key
21
-
22
- def save
23
- identity ? update : create
24
- end
25
-
26
- def create
27
- requires :key, :label
28
- response = service.create_key_pair(attributes).body
29
- merge_attributes(response)
30
- self
31
- end
32
-
33
- def update
34
- requires :id
35
- merge_attributes(service.update_key_pair(self.id, self.attributes).body)
36
- self
37
- end
38
-
39
- def destroy
40
- requires :id
41
- service.delete_key_pair(self.id)
42
- true
43
- end
44
-
45
- end
46
- end
47
- end
48
- end
@@ -1,37 +0,0 @@
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 KeyPairs < Fog::Collection
15
- model Fog::Compute::Softlayer::KeyPair
16
-
17
- def all
18
- data = service.get_key_pairs.body
19
- load(data)
20
- end
21
-
22
- def get(id)
23
- if key_pair = service.get_key_pair(id).body
24
- new(key_pair)
25
- end
26
- rescue Fog::Network::Softlayer::NotFound
27
- nil
28
- end
29
-
30
- def by_label(label)
31
- all.select { |key_pair| key_pair.label == label }.first
32
- end
33
-
34
- end
35
- end
36
- end
37
- end
@@ -1,41 +0,0 @@
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
- module Fog
8
- module Compute
9
- class Softlayer
10
-
11
- class Mock
12
-
13
- def create_key_pair(opts)
14
- response = Excon::Response.new
15
-
16
- response.status = 200
17
- response.body = []
18
-
19
- response.body = {
20
- "createDate" => Time.now.iso8601,
21
- "fingerprint" => "1a:1a:1a:1a:1a:1a:1a:1a:1a:1a:1a:1a:1a:1a:1a:1a",
22
- "id" => Fog::Mock.random_numbers(5).to_i,
23
- "key" => opts[:key],
24
- "label" => opts[:label],
25
- "modifyDate" => nil
26
- }
27
-
28
- @key_pairs.push(response.body)
29
- response
30
- end
31
- end
32
-
33
- class Real
34
- def create_key_pair(opts)
35
- request(:security_ssh_key, :create_object, :body => opts, :http_method => :post)
36
- end
37
- end
38
-
39
- end
40
- end
41
- end
@@ -1,37 +0,0 @@
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
- module Fog
8
- module Compute
9
- class Softlayer
10
-
11
- class Mock
12
-
13
- def delete_key_pair(id)
14
- response = Excon::Response.new
15
- response.status = 200
16
- if @key_pairs.reject! { |kp| kp['id'] == id }.nil?
17
- response.status = 404
18
- response.body = {
19
- "error" => "Unable to find object with id of '#{id}'.",
20
- "code" => "SoftLayer_Exception_ObjectNotFound"
21
- }
22
- else
23
- response.body = true
24
- end
25
- response
26
- end
27
- end
28
-
29
- class Real
30
- def delete_key_pair(id)
31
- request(:security_ssh_key, id, :http_method => :delete)
32
- end
33
- end
34
-
35
- end
36
- end
37
- end
@@ -1,36 +0,0 @@
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
- module Fog
8
- module Compute
9
- class Softlayer
10
-
11
- class Mock
12
- def get_key_pair(id)
13
- response = Excon::Response.new
14
- response.status = 200
15
- response.body = key_pair = @key_pairs.select { |kp| kp[:id] == id }.first
16
-
17
- if key_pair.nil?
18
- response.body = {
19
- "error"=>"Unable to find object with id of '#{identifier}'.",
20
- "code"=>"SoftLayer_Exception_ObjectNotFound"
21
- }
22
- response.status = 404
23
- end
24
- response
25
- end
26
-
27
- end
28
-
29
- class Real
30
- def get_key_pair(id)
31
- request(:security_ssh_key, id)
32
- end
33
- end
34
- end
35
- end
36
- end
@@ -1,29 +0,0 @@
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
- module Fog
9
- module Compute
10
- class Softlayer
11
-
12
- class Mock
13
- def get_key_pairs
14
- response = Excon::Response.new
15
- response.body = @key_pairs
16
- response.status = 200
17
- response
18
- end
19
-
20
- end
21
-
22
- class Real
23
- def get_key_pairs
24
- request(:account, :get_ssh_keys)
25
- end
26
- end
27
- end
28
- end
29
- end
@@ -1,42 +0,0 @@
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
- module Fog
8
- module Compute
9
- class Softlayer
10
-
11
- class Mock
12
-
13
- def update_key_pair(id, opts)
14
- response = Excon::Response.new
15
- response.status = 200
16
-
17
- key_pair, index = @key_pairs.each_with_index.select { |kp, i| kp['id'] == id }
18
-
19
- if key_pair.nil?
20
- response.status = 404
21
- response.body = {
22
- "error" => "Unable to find object with id of '#{id}'.",
23
- "code" => "SoftLayer_Exception_ObjectNotFound"
24
- }
25
- else
26
- @key_pairs[index] = key_pair.merge(opts)
27
- response.body = true
28
- end
29
- response
30
- end
31
- end
32
-
33
- class Real
34
- def update_key_pair(id, opts)
35
- request(:security_ssh_key, id, :body => opts, :http_method => :put)
36
- end
37
- end
38
-
39
- end
40
- end
41
- end
42
-