fog-softlayer 0.4.7 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +13 -24
- data/CHANGELOG.md +92 -0
- data/examples/storage.md +5 -0
- data/lib/fog/softlayer/models/compute/images.rb +6 -0
- data/lib/fog/softlayer/models/compute/server.rb +13 -3
- data/lib/fog/softlayer/slapi.rb +3 -2
- data/lib/fog/softlayer/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7904d0f30a7c506a8afd3b630ca41aa9d1f9d720
|
4
|
+
data.tar.gz: 2b1b5d83081491d2495f62ffc5dc624184e48b18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 26afb6fbb520309723542cd507c898861df2eeb02abb437b80aafbe514da7086a56d82b7b75b67fde93e3bd813f04def7b8d80e071f29c5f5bf6f5d8cad85002
|
7
|
+
data.tar.gz: 3d21c80bd21da8cd4b3d642133dca84e5bc4a28b883e4011785bd27c1c64a825533633189f539e91331486f39956cfa8abc4c425bdcdf9009b0b6f94501a23a5
|
data/.travis.yml
CHANGED
@@ -1,38 +1,27 @@
|
|
1
1
|
language: ruby
|
2
2
|
|
3
|
+
sudo: false
|
4
|
+
|
3
5
|
script: bundle exec rake travis
|
4
6
|
|
7
|
+
rvm:
|
8
|
+
- 2.0
|
9
|
+
- 2.1
|
10
|
+
- 2.2
|
11
|
+
- jruby-head
|
12
|
+
|
13
|
+
gemfile:
|
14
|
+
- Gemfile
|
15
|
+
- gemfiles/Gemfile-edge
|
16
|
+
|
5
17
|
matrix:
|
6
18
|
fast_finish: true
|
7
|
-
include:
|
8
|
-
- rvm: 1.8.7
|
9
|
-
gemfile: gemfiles/Gemfile-ruby-1.8.7
|
10
|
-
- rvm: 1.9.3
|
11
|
-
gemfile: Gemfile
|
12
|
-
- rvm: 2.0.0
|
13
|
-
gemfile: Gemfile
|
14
|
-
- rvm: 2.1.0
|
15
|
-
gemfile: Gemfile
|
16
|
-
- rvm: 2.1.1
|
17
|
-
gemfile: Gemfile
|
18
|
-
# env: COVERAGE=true
|
19
|
-
- rvm: 2.1.1
|
20
|
-
gemfile: gemfiles/Gemfile-edge
|
21
|
-
- rvm: jruby-18mode
|
22
|
-
gemfile: gemfiles/Gemfile-ruby-1.8.7
|
23
|
-
- rvm: jruby-19mode
|
24
|
-
gemfile: Gemfile
|
25
|
-
- rvm: jruby-head
|
26
|
-
gemfile: Gemfile
|
27
|
-
|
28
19
|
allow_failures:
|
29
|
-
- rvm: 1.8.7
|
30
|
-
- rvm: jruby-18mode
|
31
20
|
- rvm: jruby-head
|
32
|
-
|
33
21
|
notifications:
|
34
22
|
email:
|
35
23
|
- matt.eldridge@us.ibm.com
|
36
24
|
|
37
25
|
before_install:
|
38
26
|
- gem update --system # todo: workaround for https://github.com/rubygems/rubygems/pull/763
|
27
|
+
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,95 @@
|
|
1
|
+
# v0.4.7
|
2
|
+
|
3
|
+
__features__
|
4
|
+
|
5
|
+
* Improve management on Bare Metal, upgrading and updating machines
|
6
|
+
(supports also maintenance windows) @mfbmina
|
7
|
+
|
8
|
+
* Initial support for [Brand
|
9
|
+
Service](http://sldn.softlayer.com/reference/services/SoftLayer_Brand),
|
10
|
+
actually creating new brand records @mfbmina
|
11
|
+
|
12
|
+
__fixes__
|
13
|
+
|
14
|
+
* Validate SoftLayer username format @ravinggenius
|
15
|
+
|
16
|
+
# v0.4.6
|
17
|
+
|
18
|
+
__features__
|
19
|
+
|
20
|
+
* Generate order template for Bare Metal and Virtual Machines
|
21
|
+
|
22
|
+
* Get upgrade options (and prices!) for machines @mfbmina
|
23
|
+
|
24
|
+
* Retrieve maintenance windows on datacenter @mfbmina
|
25
|
+
|
26
|
+
__fixes__
|
27
|
+
|
28
|
+
No fixes! :wink:
|
29
|
+
|
30
|
+
# v0.4.5
|
31
|
+
|
32
|
+
__fixes__
|
33
|
+
|
34
|
+
Load value of @public when getting a container @cphrmky
|
35
|
+
|
36
|
+
# v0.4.4
|
37
|
+
|
38
|
+
__features__
|
39
|
+
|
40
|
+
Finish implementation that allow creation of public object storage
|
41
|
+
containers/directories @cphrmky
|
42
|
+
|
43
|
+
__fixes__
|
44
|
+
|
45
|
+
No fixes! :wink:
|
46
|
+
|
47
|
+
# v0.4.3
|
48
|
+
|
49
|
+
__fixes__
|
50
|
+
|
51
|
+
Add missing parameter to get_vm and get_vms requests @cphrmky
|
52
|
+
|
53
|
+
# v0.4.2
|
54
|
+
|
55
|
+
__features__
|
56
|
+
|
57
|
+
* Get server details using IP Address @mfbmina
|
58
|
+
|
59
|
+
* Get Bare Metal and Virtual Machines create options @mfbmina
|
60
|
+
|
61
|
+
* Get active tickets for server @mfbmina
|
62
|
+
|
63
|
+
* Get all users of a server @mfbmina
|
64
|
+
|
65
|
+
# v0.4.1
|
66
|
+
|
67
|
+
__features__
|
68
|
+
|
69
|
+
* Implemented stop, start and reboot operations for virtual and bare
|
70
|
+
metal servers @mafabra
|
71
|
+
|
72
|
+
* Initial support on ordering SoftLayer Products @fernandes
|
73
|
+
|
74
|
+
* Support setting network link speed when creating a compute instance
|
75
|
+
@cphrmky
|
76
|
+
|
77
|
+
* Support sshable? from fog-core @cphrmky
|
78
|
+
|
79
|
+
* Set user metadata
|
80
|
+
|
81
|
+
__fixes__
|
82
|
+
|
83
|
+
* Decreased cores on tiny template @urasoko
|
84
|
+
|
85
|
+
* Fix for API user with `@` character @fernandes
|
86
|
+
|
87
|
+
* Set correct headers @plribeiro3000
|
88
|
+
|
89
|
+
* Fix bug on SLAPI request @cphrmky
|
90
|
+
|
91
|
+
* Avoid overwriting Hash#deep_merge @amatsuda
|
92
|
+
|
1
93
|
## 0.3.10 2014-07-22
|
2
94
|
* Added support for Global IP addresses
|
3
95
|
* Create.
|
data/examples/storage.md
CHANGED
@@ -83,6 +83,11 @@ If you are unfamiliar with fog, we recommend reading our [getting started](getti
|
|
83
83
|
1. Get a signed [temporary] url for a file/object
|
84
84
|
|
85
85
|
```ruby
|
86
|
+
### NOTE
|
87
|
+
## Be sure you have set a meta_temp_url_key for your account at least once before
|
88
|
+
## @sl.post_set_meta_temp_url_key('someSortaSecretStuffHere')
|
89
|
+
### /NOTE
|
90
|
+
|
86
91
|
file = @sl.directories.get('a-container').files.get('data.txt')
|
87
92
|
file.url(Time.now + 300) # url expires in 5 minutes
|
88
93
|
# => "https://dal05.objectstorage.softlayer.net:443/v1/AUTH_1a1a1a1a-1a1a-1a1a-1a1a-1a1a1a1a1a1a/a-container/data.txt?temp_url_sig=1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a&temp_url_expires=1401901023"
|
@@ -23,6 +23,12 @@ module Fog
|
|
23
23
|
self
|
24
24
|
end
|
25
25
|
|
26
|
+
# Returns an array of all private images for current account.
|
27
|
+
def private
|
28
|
+
load(service.request(:account, :getPrivateBlockDeviceTemplateGroups).body)
|
29
|
+
self
|
30
|
+
end
|
31
|
+
|
26
32
|
# Used to retrieve an image
|
27
33
|
def get(uuid)
|
28
34
|
self.class.new(:service => service).all.detect {|image| image.id == uuid}
|
@@ -46,6 +46,7 @@ module Fog
|
|
46
46
|
attribute :private_network_only, :aliases => 'privateNetworkOnlyFlag'
|
47
47
|
attribute :user_data, :aliases => 'userData'
|
48
48
|
attribute :uid, :aliases => 'globalIdentifier'
|
49
|
+
attribute :provision_script, :aliases => 'postInstallScriptUri'
|
49
50
|
|
50
51
|
def initialize(attributes = {})
|
51
52
|
# Forces every request inject bare_metal parameter
|
@@ -67,7 +68,7 @@ module Fog
|
|
67
68
|
def bare_metal?
|
68
69
|
bare_metal
|
69
70
|
end
|
70
|
-
|
71
|
+
|
71
72
|
def bare_metal
|
72
73
|
@bare_metal
|
73
74
|
end
|
@@ -222,6 +223,14 @@ module Fog
|
|
222
223
|
attributes[:user_data]
|
223
224
|
end
|
224
225
|
|
226
|
+
def provision_script=(value)
|
227
|
+
attributes[:provision_script] = value
|
228
|
+
end
|
229
|
+
|
230
|
+
def provision_script
|
231
|
+
attributes[:provision_script]
|
232
|
+
end
|
233
|
+
|
225
234
|
def network_components
|
226
235
|
if id
|
227
236
|
(public_network_components << private_network_components).flatten
|
@@ -435,6 +444,7 @@ module Fog
|
|
435
444
|
:key_pairs => :sshKeys,
|
436
445
|
:private_network_only => :privateNetworkOnlyFlag,
|
437
446
|
:user_data => :userData,
|
447
|
+
:provision_script => :postInstallScriptUri,
|
438
448
|
:network_components => :networkComponents,
|
439
449
|
}
|
440
450
|
|
@@ -466,7 +476,7 @@ module Fog
|
|
466
476
|
true
|
467
477
|
end
|
468
478
|
end
|
469
|
-
|
479
|
+
|
470
480
|
##
|
471
481
|
# Remove model attributes that aren't expected by the SoftLayer API
|
472
482
|
def clean_attributes
|
@@ -494,7 +504,7 @@ module Fog
|
|
494
504
|
|
495
505
|
def validate_attributes
|
496
506
|
requires :name, :domain, :cpu, :ram, :datacenter
|
497
|
-
requires_one :os_code
|
507
|
+
requires_one :os_code, :image_id
|
498
508
|
requires_one :disk, :image_id
|
499
509
|
bare_metal? and image_id and raise ArgumentError, "Bare Metal Cloud does not support booting from Image"
|
500
510
|
end
|
data/lib/fog/softlayer/slapi.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fog-softlayer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Eldridge
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-10-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fog-core
|
@@ -441,10 +441,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
441
441
|
version: '0'
|
442
442
|
requirements: []
|
443
443
|
rubyforge_project:
|
444
|
-
rubygems_version: 2.
|
444
|
+
rubygems_version: 2.2.2
|
445
445
|
signing_key:
|
446
446
|
specification_version: 4
|
447
447
|
summary: This library can be used as a module for `fog` or as standalone provider
|
448
448
|
to use the SoftLayer Cloud in applications
|
449
449
|
test_files:
|
450
450
|
- spec/fog/compute/softlayer_spec.rb
|
451
|
+
has_rdoc:
|