xclarity_client 0.6.3 → 0.6.8
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 +5 -5
- data/docs/apib/discover_request.apib +3 -1
- data/docs/apib/event.apib +0 -1
- data/docs/apib/manage_request.apib +359 -0
- data/docs/apib/storages.apib +3 -3
- data/docs/apib/update_comp.apib +426 -0
- data/docs/apib/update_repo.apib +0 -57
- data/lib/xclarity_client.rb +0 -1
- data/lib/xclarity_client/client.rb +3 -0
- data/lib/xclarity_client/connection/connection.rb +73 -35
- data/lib/xclarity_client/endpoints/endpoints.rb +3 -0
- data/lib/xclarity_client/endpoints/manage_request.rb +11 -0
- data/lib/xclarity_client/endpoints/management_server.rb +5 -0
- data/lib/xclarity_client/endpoints/storage.rb +7 -6
- data/lib/xclarity_client/endpoints/update_comp.rb +18 -0
- data/lib/xclarity_client/mixins/job_mixin.rb +0 -4
- data/lib/xclarity_client/mixins/manage_request_mixin.rb +54 -0
- data/lib/xclarity_client/mixins/management_server_mixin.rb +40 -0
- data/lib/xclarity_client/mixins/mixins.rb +3 -0
- data/lib/xclarity_client/mixins/node_mixin.rb +42 -0
- data/lib/xclarity_client/mixins/update_comp_mixin.rb +37 -0
- data/lib/xclarity_client/mixins/update_repo_mixin.rb +107 -7
- data/lib/xclarity_client/services/job_management.rb +2 -4
- data/lib/xclarity_client/services/manage_request_management.rb +62 -0
- data/lib/xclarity_client/services/management_server_management.rb +86 -0
- data/lib/xclarity_client/services/node_management.rb +46 -0
- data/lib/xclarity_client/services/osimage_management.rb +3 -2
- data/lib/xclarity_client/services/remote_access_management.rb +6 -4
- data/lib/xclarity_client/services/services.rb +3 -0
- data/lib/xclarity_client/services/update_comp_management.rb +111 -0
- data/lib/xclarity_client/services/update_repo_management.rb +100 -47
- data/lib/xclarity_client/services/virtual_appliance_management.rb +13 -16
- data/lib/xclarity_client/services/xclarity_service.rb +2 -3
- data/lib/xclarity_client/version.rb +1 -1
- data/lib/xclarity_client/xclarity_credentials_validator.rb +8 -11
- data/xclarity_client.gemspec +2 -2
- metadata +26 -11
- data/lib/xclarity_client/xclarity_base.rb +0 -88
data/xclarity_client.gemspec
CHANGED
@@ -17,12 +17,12 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
18
18
|
spec.require_paths = ["lib"]
|
19
19
|
|
20
|
-
spec.add_development_dependency
|
20
|
+
spec.add_development_dependency('bundler', '>= 1.11.2')
|
21
21
|
spec.add_development_dependency "rake", "~> 10.0"
|
22
22
|
spec.add_development_dependency "rspec", "~> 3.0"
|
23
23
|
spec.add_development_dependency "apib-mock_server", "~> 1.0.3"
|
24
24
|
spec.add_development_dependency "webmock", "~> 2.1.0"
|
25
|
-
spec.add_dependency "faraday",
|
25
|
+
spec.add_dependency "faraday", '>= 0.9', '< 2.0.0'
|
26
26
|
spec.add_dependency "faraday-cookie_jar", "~> 0.0.6"
|
27
27
|
spec.add_dependency "httpclient", "~>2.8.3"
|
28
28
|
spec.add_dependency "uuid", "~> 2.3.8"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: xclarity_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Manasa Rao
|
@@ -9,22 +9,22 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2020-07-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- - "
|
18
|
+
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version:
|
20
|
+
version: 1.11.2
|
21
21
|
type: :development
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- - "
|
25
|
+
- - ">="
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version:
|
27
|
+
version: 1.11.2
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: rake
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -85,16 +85,22 @@ dependencies:
|
|
85
85
|
name: faraday
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
|
-
- - "
|
88
|
+
- - ">="
|
89
89
|
- !ruby/object:Gem::Version
|
90
90
|
version: '0.9'
|
91
|
+
- - "<"
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 2.0.0
|
91
94
|
type: :runtime
|
92
95
|
prerelease: false
|
93
96
|
version_requirements: !ruby/object:Gem::Requirement
|
94
97
|
requirements:
|
95
|
-
- - "
|
98
|
+
- - ">="
|
96
99
|
- !ruby/object:Gem::Version
|
97
100
|
version: '0.9'
|
101
|
+
- - "<"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 2.0.0
|
98
104
|
- !ruby/object:Gem::Dependency
|
99
105
|
name: faraday-cookie_jar
|
100
106
|
requirement: !ruby/object:Gem::Requirement
|
@@ -204,6 +210,7 @@ files:
|
|
204
210
|
- docs/apib/fan_muxes.apib
|
205
211
|
- docs/apib/ffdc.apib
|
206
212
|
- docs/apib/jobs.apib
|
213
|
+
- docs/apib/manage_request.apib
|
207
214
|
- docs/apib/node.apib
|
208
215
|
- docs/apib/node_bmc.apib
|
209
216
|
- docs/apib/persisted_result.apib
|
@@ -213,6 +220,7 @@ files:
|
|
213
220
|
- docs/apib/storages.apib
|
214
221
|
- docs/apib/switches.apib
|
215
222
|
- docs/apib/unmanage_request.apib
|
223
|
+
- docs/apib/update_comp.apib
|
216
224
|
- docs/apib/update_repo.apib
|
217
225
|
- docs/apib/users.apib
|
218
226
|
- example/simple.rb
|
@@ -242,6 +250,8 @@ files:
|
|
242
250
|
- lib/xclarity_client/endpoints/globalsettings.rb
|
243
251
|
- lib/xclarity_client/endpoints/hostplatform.rb
|
244
252
|
- lib/xclarity_client/endpoints/job.rb
|
253
|
+
- lib/xclarity_client/endpoints/manage_request.rb
|
254
|
+
- lib/xclarity_client/endpoints/management_server.rb
|
245
255
|
- lib/xclarity_client/endpoints/node.rb
|
246
256
|
- lib/xclarity_client/endpoints/osimage.rb
|
247
257
|
- lib/xclarity_client/endpoints/persisted_result.rb
|
@@ -252,6 +262,7 @@ files:
|
|
252
262
|
- lib/xclarity_client/endpoints/storage.rb
|
253
263
|
- lib/xclarity_client/endpoints/switch.rb
|
254
264
|
- lib/xclarity_client/endpoints/unmanage_request.rb
|
265
|
+
- lib/xclarity_client/endpoints/update_comp.rb
|
255
266
|
- lib/xclarity_client/endpoints/update_repo.rb
|
256
267
|
- lib/xclarity_client/endpoints/user.rb
|
257
268
|
- lib/xclarity_client/endpoints/xclarity_endpoint.rb
|
@@ -279,6 +290,8 @@ files:
|
|
279
290
|
- lib/xclarity_client/mixins/global_setting_mixin.rb
|
280
291
|
- lib/xclarity_client/mixins/host_platform_mixin.rb
|
281
292
|
- lib/xclarity_client/mixins/job_mixin.rb
|
293
|
+
- lib/xclarity_client/mixins/manage_request_mixin.rb
|
294
|
+
- lib/xclarity_client/mixins/management_server_mixin.rb
|
282
295
|
- lib/xclarity_client/mixins/mixins.rb
|
283
296
|
- lib/xclarity_client/mixins/node_mixin.rb
|
284
297
|
- lib/xclarity_client/mixins/os_image_mixin.rb
|
@@ -290,6 +303,7 @@ files:
|
|
290
303
|
- lib/xclarity_client/mixins/storage_mixin.rb
|
291
304
|
- lib/xclarity_client/mixins/switch_mixin.rb
|
292
305
|
- lib/xclarity_client/mixins/unmanage_request_mixin.rb
|
306
|
+
- lib/xclarity_client/mixins/update_comp_mixin.rb
|
293
307
|
- lib/xclarity_client/mixins/update_repo_mixin.rb
|
294
308
|
- lib/xclarity_client/mixins/user_mixin.rb
|
295
309
|
- lib/xclarity_client/schemas.rb
|
@@ -311,6 +325,8 @@ files:
|
|
311
325
|
- lib/xclarity_client/services/globalsettings_management.rb
|
312
326
|
- lib/xclarity_client/services/hostplatform_management.rb
|
313
327
|
- lib/xclarity_client/services/job_management.rb
|
328
|
+
- lib/xclarity_client/services/manage_request_management.rb
|
329
|
+
- lib/xclarity_client/services/management_server_management.rb
|
314
330
|
- lib/xclarity_client/services/mixins/endpoint_manager_mixin.rb
|
315
331
|
- lib/xclarity_client/services/mixins/list_name_interpreter_mixin.rb
|
316
332
|
- lib/xclarity_client/services/mixins/power_action_sender_mixin.rb
|
@@ -326,13 +342,13 @@ files:
|
|
326
342
|
- lib/xclarity_client/services/storage_management.rb
|
327
343
|
- lib/xclarity_client/services/switch_management.rb
|
328
344
|
- lib/xclarity_client/services/unmanage_request_management.rb
|
345
|
+
- lib/xclarity_client/services/update_comp_management.rb
|
329
346
|
- lib/xclarity_client/services/update_repo_management.rb
|
330
347
|
- lib/xclarity_client/services/user_management.rb
|
331
348
|
- lib/xclarity_client/services/virtual_appliance_management.rb
|
332
349
|
- lib/xclarity_client/services/xclarity_management_mixin.rb
|
333
350
|
- lib/xclarity_client/services/xclarity_service.rb
|
334
351
|
- lib/xclarity_client/version.rb
|
335
|
-
- lib/xclarity_client/xclarity_base.rb
|
336
352
|
- lib/xclarity_client/xclarity_credentials_validator.rb
|
337
353
|
- xclarity_client.gemspec
|
338
354
|
homepage: https://github.com/lenovo/xclarity_client
|
@@ -353,8 +369,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
353
369
|
- !ruby/object:Gem::Version
|
354
370
|
version: '0'
|
355
371
|
requirements: []
|
356
|
-
|
357
|
-
rubygems_version: 2.6.14
|
372
|
+
rubygems_version: 3.1.3
|
358
373
|
signing_key:
|
359
374
|
specification_version: 4
|
360
375
|
summary: Lenovo XClarity API Client
|
@@ -1,88 +0,0 @@
|
|
1
|
-
require 'faraday'
|
2
|
-
require 'faraday-cookie_jar'
|
3
|
-
require 'uri'
|
4
|
-
require 'uri/https'
|
5
|
-
|
6
|
-
module XClarityClient
|
7
|
-
class XClarityBase
|
8
|
-
|
9
|
-
attr_reader :conn
|
10
|
-
|
11
|
-
def initialize(conf, uri)
|
12
|
-
connection_builder(conf, uri)
|
13
|
-
end
|
14
|
-
|
15
|
-
def connection_builder(conf, uri)
|
16
|
-
$lxca_log.info "XClarityClient::XClarityBase connection_builder", "Building the url"
|
17
|
-
#Building configuration
|
18
|
-
hostname = URI.parse(conf.host)
|
19
|
-
url = URI::HTTPS.build({ :host => hostname.scheme ? hostname.host : hostname.path,
|
20
|
-
:port => conf.port.to_i,
|
21
|
-
:path => uri,
|
22
|
-
:query => hostname.query,
|
23
|
-
:fragment => hostname.fragment }).to_s
|
24
|
-
|
25
|
-
$lxca_log.info "XClarityClient::XClarityBase connection_builder", "Creating connection to #{url}"
|
26
|
-
|
27
|
-
@conn = Faraday.new(url: url) do |faraday|
|
28
|
-
faraday.request :url_encoded # form-encode POST params
|
29
|
-
faraday.response :logger, $lxca_log.log # log requests to STDOUT -- This line, should be uncommented if you wanna inspect the URL Request
|
30
|
-
faraday.use :cookie_jar if conf.auth_type == 'token'
|
31
|
-
faraday.adapter Faraday.default_adapter # make requests with Net::HTTP
|
32
|
-
faraday.ssl[:verify] = conf.verify_ssl == 'PEER'
|
33
|
-
end
|
34
|
-
|
35
|
-
@conn.headers[:user_agent] = "LXCA via Ruby Client/#{XClarityClient::VERSION}" + (conf.user_agent_label.nil? ? "" : " (#{conf.user_agent_label})")
|
36
|
-
@conn.basic_auth(conf.username, conf.password) if conf.auth_type == 'basic_auth'
|
37
|
-
$lxca_log.info "XClarityClient::XclarityBase connection_builder", "Connection created Successfuly"
|
38
|
-
@conn
|
39
|
-
end
|
40
|
-
|
41
|
-
private
|
42
|
-
|
43
|
-
def connection(uri = "", opts = {})
|
44
|
-
query = opts.size > 0 ? "?" + opts.map {|k, v| "#{k}=#{v}"}.join(",") : ""
|
45
|
-
begin
|
46
|
-
@conn.get(uri + query)
|
47
|
-
rescue Faraday::Error::ConnectionFailed => e
|
48
|
-
$lxca_log.error "XClarityClient::XclarityBase connection", "Error trying to send a GET to #{uri + query}"
|
49
|
-
Faraday::Response.new
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
def do_post(uri="", request = {})
|
54
|
-
begin
|
55
|
-
@conn.post do |req|
|
56
|
-
req.url uri
|
57
|
-
req.headers['Content-Type'] = 'application/json'
|
58
|
-
req.body = request
|
59
|
-
end
|
60
|
-
rescue Faraday::Error::ConnectionFailed => e
|
61
|
-
$lxca_log.error "XClarityClient::XclarityBase do_post", "Error trying to send a POST to #{uri}"
|
62
|
-
$lxca_log.error "XClarityClient::XclarityBase do_post", "Request sent: #{request}"
|
63
|
-
Faraday::Response.new
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
def do_put (uri="", request = {})
|
68
|
-
begin
|
69
|
-
@conn.put do |req|
|
70
|
-
req.url uri
|
71
|
-
req.headers['Content-Type'] = 'application/json'
|
72
|
-
req.body = request
|
73
|
-
end
|
74
|
-
rescue Faraday::Error::ConnectionFailed => e
|
75
|
-
$lxca_log.error "XClarityClient::XclarityBase do_put", "Error trying to send a PUT to #{uri}"
|
76
|
-
$lxca_log.error "XClarityClient::XclarityBase do_put", "Request sent: #{request}"
|
77
|
-
Faraday::Response.new
|
78
|
-
end
|
79
|
-
end
|
80
|
-
|
81
|
-
def do_delete (uri="")
|
82
|
-
@conn.delete do |req|
|
83
|
-
req.url uri
|
84
|
-
req.headers['Content-Type'] = 'application/json'
|
85
|
-
end
|
86
|
-
end
|
87
|
-
end
|
88
|
-
end
|