right_api_client 1.5.15 → 1.5.16
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 +7 -0
- data/.rspec +4 -0
- data/CHANGELOG.md +3 -0
- data/Gemfile +6 -1
- data/Gemfile.lock +21 -3
- data/LICENSE.txt +1 -1
- data/config/login.yml.example +7 -2
- data/lib/right_api_client/client.rb +29 -9
- data/lib/right_api_client/resource.rb +1 -1
- data/lib/right_api_client/resource_detail.rb +4 -1
- data/lib/right_api_client/resources.rb +1 -1
- data/lib/right_api_client/version.rb +1 -1
- data/right_api_client.gemspec +4 -2
- data/right_api_client.rconf +1 -1
- data/spec/functional/client_spec.rb +17 -0
- data/spec/support/mock_spec_helper.rb +3 -3
- metadata +122 -135
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 2af6588a889b4481d483cab397c80441d8604792
|
4
|
+
data.tar.gz: 33d1712937a923cadcfbf6a5b92e112b85d273a0
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: bf2fbd1a63a0a699a1e5a52522088ceb9d31b54eb3bc08a670ab1d89c5ffd4fbcadfc28214284b6ae339c125affb5df05f441e84f5114f9c731bfda5ba090534
|
7
|
+
data.tar.gz: 1175def15b5720a226d0097f9a27517216e5fb597a169e15bfc2e41d56869caef16aeafded911017b38704363607b6379a627dddca5fe0df6e6fce77b7ec2789
|
data/.rspec
ADDED
data/CHANGELOG.md
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,18 +1,29 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
right_api_client (1.5.
|
5
|
-
json
|
4
|
+
right_api_client (1.5.16)
|
5
|
+
json (~> 1.0)
|
6
|
+
mime-types (~> 1.0)
|
6
7
|
rest-client (~> 1.6)
|
7
8
|
|
8
9
|
GEM
|
9
10
|
remote: https://rubygems.org/
|
10
11
|
specs:
|
12
|
+
columnize (0.3.6)
|
13
|
+
debugger (1.6.6)
|
14
|
+
columnize (>= 0.3.1)
|
15
|
+
debugger-linecache (~> 1.2.0)
|
16
|
+
debugger-ruby_core_source (~> 1.3.2)
|
17
|
+
debugger-linecache (1.2.0)
|
18
|
+
debugger-ruby_core_source (1.3.2)
|
11
19
|
diff-lcs (1.1.3)
|
12
20
|
flexmock (0.8.7)
|
13
21
|
json (1.8.1)
|
22
|
+
linecache (0.46)
|
23
|
+
rbx-require-relative (> 0.0.4)
|
14
24
|
mime-types (1.25.1)
|
15
25
|
rake (0.8.7)
|
26
|
+
rbx-require-relative (0.0.9)
|
16
27
|
rest-client (1.6.7)
|
17
28
|
mime-types (>= 1.16)
|
18
29
|
rspec (2.9.0)
|
@@ -23,6 +34,11 @@ GEM
|
|
23
34
|
rspec-expectations (2.9.1)
|
24
35
|
diff-lcs (~> 1.1.3)
|
25
36
|
rspec-mocks (2.9.0)
|
37
|
+
ruby-debug (0.10.4)
|
38
|
+
columnize (>= 0.1)
|
39
|
+
ruby-debug-base (~> 0.10.4.0)
|
40
|
+
ruby-debug-base (0.10.4)
|
41
|
+
linecache (>= 0.3)
|
26
42
|
simplecov (0.4.2)
|
27
43
|
simplecov-html (~> 0.4.4)
|
28
44
|
simplecov-html (0.4.5)
|
@@ -31,9 +47,11 @@ PLATFORMS
|
|
31
47
|
ruby
|
32
48
|
|
33
49
|
DEPENDENCIES
|
34
|
-
bundler
|
50
|
+
bundler (~> 1.0)
|
51
|
+
debugger
|
35
52
|
flexmock (= 0.8.7)
|
36
53
|
rake (= 0.8.7)
|
37
54
|
right_api_client!
|
38
55
|
rspec (= 2.9.0)
|
56
|
+
ruby-debug
|
39
57
|
simplecov (= 0.4.2)
|
data/LICENSE.txt
CHANGED
data/config/login.yml.example
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# The account number is at the end of the browser address bar.
|
7
7
|
:account_id: my_account_id
|
8
8
|
|
9
|
-
# There are
|
9
|
+
# There are five login mechanisms:
|
10
10
|
|
11
11
|
# 0. Use the following parameters to login with your email and base64-encoded password:
|
12
12
|
# To encode your plaintext password, use 'base64' command or similar.
|
@@ -22,9 +22,14 @@
|
|
22
22
|
# User Data box, you will see RS_API_TOKEN = your_account_id:the_instance_token
|
23
23
|
:instance_token: my_instance_token
|
24
24
|
|
25
|
-
# 3. Use the following parameter to
|
25
|
+
# 3. Use the following parameter to send a pre-authenticated cookie with every request:
|
26
26
|
:cookies: my_cookie_string
|
27
27
|
|
28
|
+
# 4. Use the following parameter to send an existing OAuth access token with every request:
|
29
|
+
# To learn more about OAuth and how to obtain an access token, see
|
30
|
+
# http://support.rightscale.com/12-Guides/03-Rightscale_API/OAuth
|
31
|
+
:access_token: my_token_string
|
32
|
+
|
28
33
|
# The following are optional parameters:
|
29
34
|
:api_url: (this defaults to https://my.rightscale.com)
|
30
35
|
:api_version: (this defaults to 1.5)
|
@@ -27,10 +27,10 @@ module RightApi
|
|
27
27
|
# permitted parameters for initializing
|
28
28
|
AUTH_PARAMS = %w[
|
29
29
|
email password_base64 password account_id api_url api_version
|
30
|
-
cookies instance_token timeout open_timeout max_attempts enable_retry
|
30
|
+
cookies instance_token access_token timeout open_timeout max_attempts enable_retry
|
31
31
|
]
|
32
32
|
|
33
|
-
attr_reader :cookies, :instance_token, :last_request, :timeout, :open_timeout, :max_attempts, :enable_retry
|
33
|
+
attr_reader :cookies, :instance_token, :access_token, :last_request, :timeout, :open_timeout, :max_attempts, :enable_retry
|
34
34
|
attr_accessor :account_id, :api_url
|
35
35
|
|
36
36
|
def initialize(args)
|
@@ -51,10 +51,15 @@ module RightApi
|
|
51
51
|
@rest_client = RestClient::Resource.new(@api_url, :open_timeout => @open_timeout, :timeout => @timeout)
|
52
52
|
@last_request = {}
|
53
53
|
|
54
|
-
# There are
|
55
|
-
#
|
54
|
+
# There are four options for login:
|
55
|
+
# - credentials
|
56
|
+
# - instance API token
|
57
|
+
# - existing user-supplied cookies
|
58
|
+
# - existing user-supplied OAuth access token
|
59
|
+
#
|
60
|
+
# The latter two options are not really login; they imply that the user logged in out of band.
|
56
61
|
# See config/login.yml.example for more info.
|
57
|
-
login() unless @cookies
|
62
|
+
login() unless @cookies || @access_token
|
58
63
|
|
59
64
|
timestamp_cookies
|
60
65
|
|
@@ -104,9 +109,9 @@ module RightApi
|
|
104
109
|
|
105
110
|
# Given a path returns a RightApiClient::Resource instance.
|
106
111
|
#
|
107
|
-
def resource(path)
|
112
|
+
def resource(path, params={})
|
108
113
|
|
109
|
-
r = Resource.process(self, *do_get(path))
|
114
|
+
r = Resource.process(self, *do_get(path, params))
|
110
115
|
|
111
116
|
r.respond_to?(:show) ? r.show : r
|
112
117
|
end
|
@@ -175,7 +180,7 @@ module RightApi
|
|
175
180
|
response = nil
|
176
181
|
attempts = 0
|
177
182
|
begin
|
178
|
-
response = @rest_client[path].post(params, '
|
183
|
+
response = @rest_client[path].post(params, 'X-Api-Version' => @api_version) do |response, request, result, &block|
|
179
184
|
if response.code == 302
|
180
185
|
update_api_url(response)
|
181
186
|
response.follow_redirection(request, result, &block)
|
@@ -195,7 +200,19 @@ module RightApi
|
|
195
200
|
|
196
201
|
# Returns the request headers
|
197
202
|
def headers
|
198
|
-
|
203
|
+
h = {
|
204
|
+
'X-Api-Version' => @api_version,
|
205
|
+
'X-Account' => @account_id,
|
206
|
+
:accept => :json,
|
207
|
+
}
|
208
|
+
|
209
|
+
if @access_token
|
210
|
+
h['Authorization'] = "Bearer #{@access_token}"
|
211
|
+
elsif @cookies
|
212
|
+
h[:cookies] = @cookies
|
213
|
+
end
|
214
|
+
|
215
|
+
h
|
199
216
|
end
|
200
217
|
|
201
218
|
def update_last_request(request, response)
|
@@ -373,6 +390,9 @@ module RightApi
|
|
373
390
|
end
|
374
391
|
|
375
392
|
def re_login?(e)
|
393
|
+
# cannot successfully re-login with only an access token; we want the
|
394
|
+
# expiration error to be raised.
|
395
|
+
return false if @access_token
|
376
396
|
e.message.index('403') && e.message =~ %r(.*Session cookie is expired or invalid)
|
377
397
|
end
|
378
398
|
|
@@ -3,7 +3,7 @@ module RightApi
|
|
3
3
|
# This class dynamically adds methods and properties to instances depending on what type of resource they are.
|
4
4
|
class Resource
|
5
5
|
include Helper
|
6
|
-
attr_reader :client, :href
|
6
|
+
attr_reader :client, :href, :resource_type
|
7
7
|
|
8
8
|
# Will create a (or an array of) new Resource object(s)
|
9
9
|
# All parameters are treated as read only
|
@@ -77,7 +77,10 @@ module RightApi
|
|
77
77
|
# future we might like to extract resource_type from child_href
|
78
78
|
# and not hard-code it.
|
79
79
|
if child_href.index('instance')
|
80
|
-
define_instance_method(k)
|
80
|
+
define_instance_method(k) do |*args|
|
81
|
+
path = add_id_and_params_to_path(child_href, *args)
|
82
|
+
RightApi::Resource.process(client, 'instance', path, v)
|
83
|
+
end
|
81
84
|
end
|
82
85
|
end
|
83
86
|
end
|
data/right_api_client.gemspec
CHANGED
@@ -10,6 +10,7 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.email = [ 'rubygems@rightscale.com' ]
|
11
11
|
s.homepage = 'https://github.com/rightscale/right_api_client'
|
12
12
|
s.summary = 'RightScale MultiCloud API HTTP Client'
|
13
|
+
s.license = 'MIT'
|
13
14
|
s.description = %{
|
14
15
|
The right_api_client gem simplifies the use of RightScale's MultiCloud API.
|
15
16
|
It provides a simple object model of the API resources, and handles all of the
|
@@ -19,12 +20,13 @@ fine details involved in making HTTP calls and translating their responses.
|
|
19
20
|
s.test_files = `git ls-files spec config`.split(' ')
|
20
21
|
s.rubygems_version = '1.3.7'
|
21
22
|
|
22
|
-
s.add_runtime_dependency 'json'
|
23
|
+
s.add_runtime_dependency 'json', '~> 1.0'
|
24
|
+
s.add_runtime_dependency 'mime-types', '~> 1.0'
|
23
25
|
s.add_runtime_dependency 'rest-client', '~> 1.6'
|
24
26
|
|
25
27
|
s.add_development_dependency 'rake', '0.8.7'
|
26
28
|
s.add_development_dependency 'rspec', '2.9.0'
|
27
29
|
s.add_development_dependency 'flexmock', '0.8.7'
|
28
30
|
s.add_development_dependency 'simplecov', '0.4.2'
|
29
|
-
s.add_development_dependency 'bundler'
|
31
|
+
s.add_development_dependency 'bundler', '~> 1.0'
|
30
32
|
end
|
data/right_api_client.rconf
CHANGED
@@ -13,6 +13,9 @@ describe RightApi::Client do
|
|
13
13
|
puts e.message
|
14
14
|
puts e.backtrace
|
15
15
|
end
|
16
|
+
|
17
|
+
# Don't bother to run tests if the client didn't initialize
|
18
|
+
@client.should_not be_nil
|
16
19
|
end
|
17
20
|
|
18
21
|
it "logs in" do
|
@@ -37,6 +40,20 @@ describe RightApi::Client do
|
|
37
40
|
client1.cookies.should == @client.cookies
|
38
41
|
end
|
39
42
|
|
43
|
+
it "accepts an access_token argument when creating a new client" do
|
44
|
+
my_hash = YAML.load_file(File.expand_path(@creds, __FILE__))
|
45
|
+
my_hash.delete(:email)
|
46
|
+
my_hash.delete(:password)
|
47
|
+
my_hash.delete(:cookies)
|
48
|
+
|
49
|
+
access_token = @client.cookies.detect { |k, _| k =~ /^rs_gbl/ }.last
|
50
|
+
access_token.should_not be_nil
|
51
|
+
my_hash[:access_token] = access_token
|
52
|
+
|
53
|
+
client1 = RightApi::Client.new(my_hash)
|
54
|
+
client1.access_token.should == access_token
|
55
|
+
end
|
56
|
+
|
40
57
|
it "timestamps cookies" do
|
41
58
|
|
42
59
|
@client.cookies.timestamp.should_not == nil
|
@@ -6,14 +6,14 @@ module MockSpecHelper
|
|
6
6
|
@rest_client = RestClient::Resource.new(RightApi::Client::DEFAULT_API_URL)
|
7
7
|
flexmock(RestClient::Resource).should_receive(:new).and_return(@rest_client)
|
8
8
|
@session = flexmock(:cookies => {})
|
9
|
-
@header = {'
|
9
|
+
@header = {'X-Api-Version' => @api_version, 'X-Account' => @test_account_id, :cookies => {}, :accept => :json}
|
10
10
|
end
|
11
11
|
|
12
12
|
def given_user_facing_client
|
13
13
|
mock_rest_client
|
14
14
|
flexmock(@rest_client).should_receive(:post).with(
|
15
15
|
{'email' => 'email', 'password' => 'password', 'account_href' => '/api/accounts/1'},
|
16
|
-
{'
|
16
|
+
{'X-Api-Version' => @api_version}, Proc).and_return(@session)
|
17
17
|
flexmock(@rest_client).should_receive(:get).with(@header, Proc).and_return(['', '{}'])
|
18
18
|
@client = RightApi::Client.new(:email => 'email', :password => 'password', :account_id => @test_account_id)
|
19
19
|
end
|
@@ -22,7 +22,7 @@ module MockSpecHelper
|
|
22
22
|
mock_rest_client
|
23
23
|
flexmock(@rest_client).should_receive(:post).with(
|
24
24
|
{'instance_token' => 'instance_token', 'account_href' => '/api/accounts/1'},
|
25
|
-
{'
|
25
|
+
{'X-Api-Version' => @api_version}, Proc).and_return(@session)
|
26
26
|
flexmock(@rest_client).should_receive(:get).with(@header, Proc).and_return(['', '{"links": [
|
27
27
|
{
|
28
28
|
"href": "/api/clouds/1/instances/1",
|
metadata
CHANGED
@@ -1,143 +1,139 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: right_api_client
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 5
|
9
|
-
- 15
|
10
|
-
version: 1.5.15
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.5.16
|
11
5
|
platform: ruby
|
12
|
-
authors:
|
6
|
+
authors:
|
13
7
|
- RightScale, Inc.
|
14
8
|
autorequire:
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
21
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
22
|
-
none: false
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
hash: 3
|
27
|
-
segments:
|
28
|
-
- 0
|
29
|
-
version: "0"
|
30
|
-
type: :runtime
|
11
|
+
date: 2014-03-26 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
31
14
|
name: json
|
32
|
-
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.0'
|
20
|
+
type: :runtime
|
33
21
|
prerelease: false
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: mime-types
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.0'
|
45
34
|
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
46
42
|
name: rest-client
|
47
|
-
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.6'
|
48
|
+
type: :runtime
|
48
49
|
prerelease: false
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.6'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '='
|
60
|
+
- !ruby/object:Gem::Version
|
60
61
|
version: 0.8.7
|
61
62
|
type: :development
|
62
|
-
name: rake
|
63
|
-
version_requirements: *id003
|
64
63
|
prerelease: false
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 0.8.7
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rspec
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '='
|
74
|
+
- !ruby/object:Gem::Version
|
76
75
|
version: 2.9.0
|
77
76
|
type: :development
|
78
|
-
name: rspec
|
79
|
-
version_requirements: *id004
|
80
77
|
prerelease: false
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 2.9.0
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: flexmock
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '='
|
88
|
+
- !ruby/object:Gem::Version
|
92
89
|
version: 0.8.7
|
93
90
|
type: :development
|
94
|
-
name: flexmock
|
95
|
-
version_requirements: *id005
|
96
91
|
prerelease: false
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.8.7
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: simplecov
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '='
|
102
|
+
- !ruby/object:Gem::Version
|
108
103
|
version: 0.4.2
|
109
104
|
type: :development
|
110
|
-
name: simplecov
|
111
|
-
version_requirements: *id006
|
112
105
|
prerelease: false
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
hash: 3
|
120
|
-
segments:
|
121
|
-
- 0
|
122
|
-
version: "0"
|
123
|
-
type: :development
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 0.4.2
|
111
|
+
- !ruby/object:Gem::Dependency
|
124
112
|
name: bundler
|
125
|
-
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '1.0'
|
118
|
+
type: :development
|
126
119
|
prerelease: false
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '1.0'
|
125
|
+
description: "\nThe right_api_client gem simplifies the use of RightScale's MultiCloud
|
126
|
+
API.\nIt provides a simple object model of the API resources, and handles all of
|
127
|
+
the\nfine details involved in making HTTP calls and translating their responses.\n
|
128
|
+
\ "
|
129
|
+
email:
|
132
130
|
- rubygems@rightscale.com
|
133
131
|
executables: []
|
134
|
-
|
135
132
|
extensions: []
|
136
|
-
|
137
133
|
extra_rdoc_files: []
|
138
|
-
|
139
|
-
|
140
|
-
- .
|
134
|
+
files:
|
135
|
+
- ".gitignore"
|
136
|
+
- ".rspec"
|
141
137
|
- CHANGELOG.md
|
142
138
|
- Gemfile
|
143
139
|
- Gemfile.lock
|
@@ -167,39 +163,30 @@ files:
|
|
167
163
|
- spec/unit/resource_spec.rb
|
168
164
|
- spec/unit/resources_spec.rb
|
169
165
|
homepage: https://github.com/rightscale/right_api_client
|
170
|
-
licenses:
|
171
|
-
|
166
|
+
licenses:
|
167
|
+
- MIT
|
168
|
+
metadata: {}
|
172
169
|
post_install_message:
|
173
170
|
rdoc_options: []
|
174
|
-
|
175
|
-
require_paths:
|
171
|
+
require_paths:
|
176
172
|
- lib
|
177
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
178
|
-
|
179
|
-
requirements:
|
173
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
174
|
+
requirements:
|
180
175
|
- - ">="
|
181
|
-
- !ruby/object:Gem::Version
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
version: "0"
|
186
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
187
|
-
none: false
|
188
|
-
requirements:
|
176
|
+
- !ruby/object:Gem::Version
|
177
|
+
version: '0'
|
178
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
179
|
+
requirements:
|
189
180
|
- - ">="
|
190
|
-
- !ruby/object:Gem::Version
|
191
|
-
|
192
|
-
segments:
|
193
|
-
- 0
|
194
|
-
version: "0"
|
181
|
+
- !ruby/object:Gem::Version
|
182
|
+
version: '0'
|
195
183
|
requirements: []
|
196
|
-
|
197
184
|
rubyforge_project:
|
198
|
-
rubygems_version:
|
185
|
+
rubygems_version: 2.2.2
|
199
186
|
signing_key:
|
200
|
-
specification_version:
|
187
|
+
specification_version: 4
|
201
188
|
summary: RightScale MultiCloud API HTTP Client
|
202
|
-
test_files:
|
189
|
+
test_files:
|
203
190
|
- config/login.yml.example
|
204
191
|
- spec/functional/audit_entries_spec.rb
|
205
192
|
- spec/functional/client_spec.rb
|