rest_connection 1.0.12 → 1.0.13
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.
@@ -60,10 +60,35 @@ class Deployment
|
|
60
60
|
|
61
61
|
def servers_no_reload
|
62
62
|
connection.logger("WARNING: No Servers in the Deployment!") if @params['servers'].empty?
|
63
|
-
|
64
|
-
|
63
|
+
|
64
|
+
cloud_id = nil
|
65
|
+
@params["tags"].each do |hash|
|
66
|
+
if hash["name"] =~ /info:cloud=(\d+)/
|
67
|
+
cloud_id = $1
|
68
|
+
break
|
69
|
+
end
|
65
70
|
end
|
66
|
-
|
71
|
+
|
72
|
+
unless @params['servers'].reduce(true) { |bool,s| bool && s.is_a?(ServerInterface) }
|
73
|
+
@params['servers'].map! do |s|
|
74
|
+
# Create a temporary, legacy type server for each server in deployment.
|
75
|
+
id = s['href'].match(/(\d{6,})$/)[0]
|
76
|
+
serv = Server[id.to_i]
|
77
|
+
|
78
|
+
# Query for settings. AWS servers will return valid details, Generics won't.
|
79
|
+
cloud_id = nil
|
80
|
+
begin
|
81
|
+
settings = serv.first.settings
|
82
|
+
cloud_id = settings['cloud_id']
|
83
|
+
puts "Cloud id #{cloud_id} found for server #{id.to_s}, assuming AWS server"
|
84
|
+
rescue
|
85
|
+
puts "Settings not returned from server #{id.to_s}, using API 1.0 call, assuming Generic server"
|
86
|
+
end
|
87
|
+
|
88
|
+
# Now we pass on cloud_id, it will be nil for generic servers, of a valid number for AWS servers
|
89
|
+
ServerInterface.new(cloud_id, s, self.rs_id)
|
90
|
+
end
|
91
|
+
end
|
67
92
|
end
|
68
93
|
|
69
94
|
def servers
|
@@ -27,13 +27,15 @@ class ServerInterface
|
|
27
27
|
attr_reader :multicloud
|
28
28
|
|
29
29
|
def initialize(cid = nil, params = {}, deployment_id = nil)
|
30
|
+
|
31
|
+
# If cid is nil, assume generic server, otherwise check value and if cloud
|
32
|
+
# id is in range of AWS clouds we can assume it's an AWS server
|
30
33
|
if cid
|
31
34
|
@multicloud = (cid.to_i > 10 ? true : false)
|
32
|
-
elsif params["href"]
|
33
|
-
@multicloud = false
|
34
35
|
else
|
35
36
|
@multicloud = true
|
36
37
|
end
|
38
|
+
|
37
39
|
if @multicloud
|
38
40
|
if deployment_id
|
39
41
|
name = params["nickname"] || params["name"] || params[:nickname] || params[:name]
|
@@ -103,7 +105,7 @@ class ServerInterface
|
|
103
105
|
{"1.0" => [:pricing]},
|
104
106
|
{"1.0" => [:max_spot_price]},
|
105
107
|
{ "1.5" => [:inputs]},
|
106
|
-
{
|
108
|
+
{"1.0" => [:multi_cloud_image_href], "1.5" => [:mci_href, :multi_cloud_image_href]},
|
107
109
|
{ "1.5" => [:datacenter_href]},
|
108
110
|
{"1.0" => [:aki_image_href], "1.5" => [:kernel_image_href]},
|
109
111
|
{"1.0" => [:ari_image_href], "1.5" => [:ramdisk_image_href]}]
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rest_connection
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 13
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 1.0.
|
9
|
+
- 13
|
10
|
+
version: 1.0.13
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- RightScale, Inc.
|
@@ -18,8 +18,6 @@ cert_chain: []
|
|
18
18
|
date: 2014-04-03 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
|
-
name: net-ssh
|
22
|
-
prerelease: false
|
23
21
|
requirement: &id001 !ruby/object:Gem::Requirement
|
24
22
|
none: false
|
25
23
|
requirements:
|
@@ -30,10 +28,10 @@ dependencies:
|
|
30
28
|
- 0
|
31
29
|
version: "0"
|
32
30
|
type: :runtime
|
31
|
+
name: net-ssh
|
33
32
|
version_requirements: *id001
|
34
|
-
- !ruby/object:Gem::Dependency
|
35
|
-
name: json
|
36
33
|
prerelease: false
|
34
|
+
- !ruby/object:Gem::Dependency
|
37
35
|
requirement: &id002 !ruby/object:Gem::Requirement
|
38
36
|
none: false
|
39
37
|
requirements:
|
@@ -44,10 +42,10 @@ dependencies:
|
|
44
42
|
- 0
|
45
43
|
version: "0"
|
46
44
|
type: :runtime
|
45
|
+
name: json
|
47
46
|
version_requirements: *id002
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
name: highline
|
50
47
|
prerelease: false
|
48
|
+
- !ruby/object:Gem::Dependency
|
51
49
|
requirement: &id003 !ruby/object:Gem::Requirement
|
52
50
|
none: false
|
53
51
|
requirements:
|
@@ -58,10 +56,10 @@ dependencies:
|
|
58
56
|
- 0
|
59
57
|
version: "0"
|
60
58
|
type: :runtime
|
59
|
+
name: highline
|
61
60
|
version_requirements: *id003
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: rest-client
|
64
61
|
prerelease: false
|
62
|
+
- !ruby/object:Gem::Dependency
|
65
63
|
requirement: &id004 !ruby/object:Gem::Requirement
|
66
64
|
none: false
|
67
65
|
requirements:
|
@@ -72,10 +70,10 @@ dependencies:
|
|
72
70
|
- 0
|
73
71
|
version: "0"
|
74
72
|
type: :runtime
|
73
|
+
name: rest-client
|
75
74
|
version_requirements: *id004
|
76
|
-
- !ruby/object:Gem::Dependency
|
77
|
-
name: rake
|
78
75
|
prerelease: false
|
76
|
+
- !ruby/object:Gem::Dependency
|
79
77
|
requirement: &id005 !ruby/object:Gem::Requirement
|
80
78
|
none: false
|
81
79
|
requirements:
|
@@ -88,10 +86,10 @@ dependencies:
|
|
88
86
|
- 7
|
89
87
|
version: 0.8.7
|
90
88
|
type: :development
|
89
|
+
name: rake
|
91
90
|
version_requirements: *id005
|
92
|
-
- !ruby/object:Gem::Dependency
|
93
|
-
name: bundler
|
94
91
|
prerelease: false
|
92
|
+
- !ruby/object:Gem::Dependency
|
95
93
|
requirement: &id006 !ruby/object:Gem::Requirement
|
96
94
|
none: false
|
97
95
|
requirements:
|
@@ -102,10 +100,10 @@ dependencies:
|
|
102
100
|
- 0
|
103
101
|
version: "0"
|
104
102
|
type: :development
|
103
|
+
name: bundler
|
105
104
|
version_requirements: *id006
|
106
|
-
- !ruby/object:Gem::Dependency
|
107
|
-
name: rspec
|
108
105
|
prerelease: false
|
106
|
+
- !ruby/object:Gem::Dependency
|
109
107
|
requirement: &id007 !ruby/object:Gem::Requirement
|
110
108
|
none: false
|
111
109
|
requirements:
|
@@ -118,10 +116,10 @@ dependencies:
|
|
118
116
|
- 0
|
119
117
|
version: 1.3.0
|
120
118
|
type: :development
|
119
|
+
name: rspec
|
121
120
|
version_requirements: *id007
|
122
|
-
- !ruby/object:Gem::Dependency
|
123
|
-
name: nokogiri
|
124
121
|
prerelease: false
|
122
|
+
- !ruby/object:Gem::Dependency
|
125
123
|
requirement: &id008 !ruby/object:Gem::Requirement
|
126
124
|
none: false
|
127
125
|
requirements:
|
@@ -134,10 +132,10 @@ dependencies:
|
|
134
132
|
- 0
|
135
133
|
version: 1.6.0
|
136
134
|
type: :runtime
|
135
|
+
name: nokogiri
|
137
136
|
version_requirements: *id008
|
138
|
-
- !ruby/object:Gem::Dependency
|
139
|
-
name: activesupport
|
140
137
|
prerelease: false
|
138
|
+
- !ruby/object:Gem::Dependency
|
141
139
|
requirement: &id009 !ruby/object:Gem::Requirement
|
142
140
|
none: false
|
143
141
|
requirements:
|
@@ -150,10 +148,10 @@ dependencies:
|
|
150
148
|
- 0
|
151
149
|
version: 4.0.0
|
152
150
|
type: :runtime
|
151
|
+
name: activesupport
|
153
152
|
version_requirements: *id009
|
154
|
-
- !ruby/object:Gem::Dependency
|
155
|
-
name: ruby-debug
|
156
153
|
prerelease: false
|
154
|
+
- !ruby/object:Gem::Dependency
|
157
155
|
requirement: &id010 !ruby/object:Gem::Requirement
|
158
156
|
none: false
|
159
157
|
requirements:
|
@@ -164,7 +162,9 @@ dependencies:
|
|
164
162
|
- 0
|
165
163
|
version: "0"
|
166
164
|
type: :development
|
165
|
+
name: ruby-debug
|
167
166
|
version_requirements: *id010
|
167
|
+
prerelease: false
|
168
168
|
description: "\n\
|
169
169
|
This gem is deprecated! Please use right_api_client instead.\n\
|
170
170
|
The rest_connection gem simplifies the use of RESTful APIs.\n\
|
@@ -334,4 +334,3 @@ test_files:
|
|
334
334
|
- spec/server_template_internal.rb
|
335
335
|
- spec/spec_helper.rb
|
336
336
|
- spec/tag_spec.rb
|
337
|
-
has_rdoc:
|