xclarity_client 0.5.9 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/docs/apib/persisted_result.apib +196 -0
- data/docs/apib/unmanage_request.apib +163 -0
- data/docs/apib/users.apib +26 -0
- data/lib/utils/logger.rb +1 -0
- data/lib/xclarity_client/client.rb +95 -43
- data/lib/xclarity_client/connection/connection.rb +118 -0
- data/lib/xclarity_client/discover.rb +1 -1
- data/lib/xclarity_client/{aicc.rb → endpoints/aicc.rb} +1 -8
- data/lib/xclarity_client/endpoints/buildable_resource_mixin.rb +61 -0
- data/lib/xclarity_client/{cabinet.rb → endpoints/cabinet.rb} +1 -7
- data/lib/xclarity_client/{canister.rb → endpoints/canister.rb} +1 -7
- data/lib/xclarity_client/{chassi.rb → endpoints/chassi.rb} +1 -8
- data/lib/xclarity_client/{cmm.rb → endpoints/cmm.rb} +1 -7
- data/lib/xclarity_client/{config_pattern.rb → endpoints/config_pattern.rb} +2 -9
- data/lib/xclarity_client/{config_profile.rb → endpoints/config_profile.rb} +1 -8
- data/lib/xclarity_client/{config_target.rb → endpoints/config_target.rb} +1 -8
- data/lib/xclarity_client/{discover_request.rb → endpoints/discover_request.rb} +1 -8
- data/lib/xclarity_client/{discovery.rb → endpoints/discovery.rb} +1 -8
- data/lib/xclarity_client/endpoints/endpoints.rb +34 -0
- data/lib/xclarity_client/{event.rb → endpoints/event.rb} +1 -7
- data/lib/xclarity_client/{fan.rb → endpoints/fan.rb} +1 -9
- data/lib/xclarity_client/{fan_mux.rb → endpoints/fan_mux.rb} +2 -10
- data/lib/xclarity_client/{ffdc.rb → endpoints/ffdc.rb} +1 -8
- data/lib/xclarity_client/endpoints/globalsettings.rb +12 -0
- data/lib/xclarity_client/endpoints/hostplatform.rb +17 -0
- data/lib/xclarity_client/{job.rb → endpoints/job.rb} +1 -8
- data/lib/xclarity_client/{node.rb → endpoints/node.rb} +1 -8
- data/lib/xclarity_client/endpoints/osimage.rb +14 -0
- data/lib/xclarity_client/endpoints/persisted_result.rb +8 -0
- data/lib/xclarity_client/{power_supply.rb → endpoints/power_supply.rb} +2 -8
- data/lib/xclarity_client/endpoints/remote_access.rb +8 -0
- data/lib/xclarity_client/endpoints/remotefileserver.rb +15 -0
- data/lib/xclarity_client/{scalable_complex.rb → endpoints/scalable_complex.rb} +1 -8
- data/lib/xclarity_client/{switch.rb → endpoints/switch.rb} +1 -8
- data/lib/xclarity_client/endpoints/unmanage_request.rb +8 -0
- data/lib/xclarity_client/{update_repo.rb → endpoints/update_repo.rb} +1 -8
- data/lib/xclarity_client/{user.rb → endpoints/user.rb} +5 -9
- data/lib/xclarity_client/endpoints/xclarity_endpoint.rb +13 -0
- data/lib/xclarity_client/errors/errors.rb +10 -0
- data/lib/xclarity_client/schemas.rb +199 -0
- data/lib/xclarity_client/services/aicc_management.rb +9 -0
- data/lib/xclarity_client/services/cabinet_management.rb +9 -0
- data/lib/xclarity_client/services/canister_management.rb +9 -0
- data/lib/xclarity_client/services/chassi_management.rb +9 -0
- data/lib/xclarity_client/services/cmm_management.rb +9 -0
- data/lib/xclarity_client/services/config_pattern_management.rb +41 -0
- data/lib/xclarity_client/{config_profile_management.rb → services/config_profile_management.rb} +8 -14
- data/lib/xclarity_client/services/config_target_management.rb +9 -0
- data/lib/xclarity_client/services/discover_request_management.rb +30 -0
- data/lib/xclarity_client/services/discovery_management.rb +9 -0
- data/lib/xclarity_client/services/event_management.rb +9 -0
- data/lib/xclarity_client/services/fan_management.rb +9 -0
- data/lib/xclarity_client/services/fan_mux_management.rb +9 -0
- data/lib/xclarity_client/services/ffdc_management.rb +9 -0
- data/lib/xclarity_client/services/globalsettings_management.rb +26 -0
- data/lib/xclarity_client/services/hostplatform_management.rb +32 -0
- data/lib/xclarity_client/services/job_management.rb +27 -0
- data/lib/xclarity_client/services/mixins/endpoint_manager_mixin.rb +30 -0
- data/lib/xclarity_client/services/mixins/list_name_interpreter_mixin.rb +61 -0
- data/lib/xclarity_client/services/mixins/response_builder_mixin.rb +38 -0
- data/lib/xclarity_client/{node_management.rb → services/node_management.rb} +7 -11
- data/lib/xclarity_client/services/osimage_management.rb +47 -0
- data/lib/xclarity_client/services/persisted_result_management.rb +11 -0
- data/lib/xclarity_client/services/power_supply_management.rb +9 -0
- data/lib/xclarity_client/services/remote_access_management.rb +57 -0
- data/lib/xclarity_client/services/remotefileserver_management.rb +41 -0
- data/lib/xclarity_client/services/scalable_complex_management.rb +9 -0
- data/lib/xclarity_client/services/services.rb +37 -0
- data/lib/xclarity_client/services/switch_management.rb +9 -0
- data/lib/xclarity_client/services/unmanage_request_management.rb +38 -0
- data/lib/xclarity_client/{update_repo_management.rb → services/update_repo_management.rb} +4 -12
- data/lib/xclarity_client/services/user_management.rb +42 -0
- data/lib/xclarity_client/services/xclarity_service.rb +139 -0
- data/lib/xclarity_client/version.rb +1 -1
- data/lib/xclarity_client/xclarity_base.rb +2 -2
- data/lib/xclarity_client.rb +6 -50
- data/xclarity_client.gemspec +1 -0
- metadata +93 -53
- data/lib/xclarity_client/aicc_management.rb +0 -16
- data/lib/xclarity_client/cabinet_management.rb +0 -17
- data/lib/xclarity_client/canister_management.rb +0 -17
- data/lib/xclarity_client/chassi_management.rb +0 -17
- data/lib/xclarity_client/cmm_management.rb +0 -17
- data/lib/xclarity_client/config_pattern_management.rb +0 -48
- data/lib/xclarity_client/config_target_management.rb +0 -14
- data/lib/xclarity_client/discover_request_management.rb +0 -32
- data/lib/xclarity_client/discovery_management.rb +0 -17
- data/lib/xclarity_client/event_management.rb +0 -17
- data/lib/xclarity_client/fan_management.rb +0 -17
- data/lib/xclarity_client/fan_mux_management.rb +0 -17
- data/lib/xclarity_client/ffdc_management.rb +0 -13
- data/lib/xclarity_client/job_management.rb +0 -28
- data/lib/xclarity_client/power_supply_management.rb +0 -17
- data/lib/xclarity_client/scalable_complex_management.rb +0 -17
- data/lib/xclarity_client/switch_management.rb +0 -16
- data/lib/xclarity_client/user_management.rb +0 -17
- data/lib/xclarity_client/xclarity_resource.rb +0 -21
- /data/lib/xclarity_client/{error → errors}/authentication_error.rb +0 -0
- /data/lib/xclarity_client/{error → errors}/connection_failed.rb +0 -0
- /data/lib/xclarity_client/{error → errors}/connection_failed_unknown.rb +0 -0
- /data/lib/xclarity_client/{error → errors}/connection_refused.rb +0 -0
- /data/lib/xclarity_client/{error → errors}/hostname_unknown.rb +0 -0
- /data/lib/xclarity_client/{virtual_appliance_management.rb → services/virtual_appliance_management.rb} +0 -0
- /data/lib/xclarity_client/{xclarity_management_mixin.rb → services/xclarity_management_mixin.rb} +0 -0
@@ -0,0 +1,37 @@
|
|
1
|
+
module XClarityClient
|
2
|
+
module Services
|
3
|
+
end
|
4
|
+
end
|
5
|
+
|
6
|
+
require 'xclarity_client/services/xclarity_management_mixin'
|
7
|
+
require 'xclarity_client/services/xclarity_service'
|
8
|
+
|
9
|
+
require 'xclarity_client/services/aicc_management'
|
10
|
+
require 'xclarity_client/services/cabinet_management'
|
11
|
+
require 'xclarity_client/services/canister_management'
|
12
|
+
require 'xclarity_client/services/chassi_management'
|
13
|
+
require 'xclarity_client/services/cmm_management'
|
14
|
+
require 'xclarity_client/services/config_pattern_management'
|
15
|
+
require 'xclarity_client/services/config_profile_management'
|
16
|
+
require 'xclarity_client/services/config_target_management'
|
17
|
+
require 'xclarity_client/services/discover_request_management'
|
18
|
+
require 'xclarity_client/services/discovery_management'
|
19
|
+
require 'xclarity_client/services/event_management'
|
20
|
+
require 'xclarity_client/services/fan_management'
|
21
|
+
require 'xclarity_client/services/fan_mux_management'
|
22
|
+
require 'xclarity_client/services/ffdc_management'
|
23
|
+
require 'xclarity_client/services/job_management'
|
24
|
+
require 'xclarity_client/services/node_management'
|
25
|
+
require 'xclarity_client/services/persisted_result_management'
|
26
|
+
require 'xclarity_client/services/power_supply_management'
|
27
|
+
require 'xclarity_client/services/remote_access_management'
|
28
|
+
require 'xclarity_client/services/scalable_complex_management'
|
29
|
+
require 'xclarity_client/services/switch_management'
|
30
|
+
require 'xclarity_client/services/unmanage_request_management'
|
31
|
+
require 'xclarity_client/services/update_repo_management'
|
32
|
+
require 'xclarity_client/services/user_management'
|
33
|
+
require 'xclarity_client/services/virtual_appliance_management'
|
34
|
+
require 'xclarity_client/services/osimage_management'
|
35
|
+
require 'xclarity_client/services/globalsettings_management'
|
36
|
+
require 'xclarity_client/services/hostplatform_management'
|
37
|
+
require 'xclarity_client/services/remotefileserver_management'
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'json'
|
2
|
+
|
3
|
+
module XClarityClient
|
4
|
+
class UnmanageRequestManagement< Services::XClarityService
|
5
|
+
manages_endpoint UnmanageRequest
|
6
|
+
|
7
|
+
def population(opts = {})
|
8
|
+
fetch_all(opts)
|
9
|
+
end
|
10
|
+
|
11
|
+
def unmanage_discovered_devices(endpoints, force)
|
12
|
+
deploy_hash = {}
|
13
|
+
deploy_hash.merge!({:endpoints => endpoints})
|
14
|
+
if force.downcase.eql? "true"
|
15
|
+
deploy_hash.merge!({:forceUnmanage => true})
|
16
|
+
else
|
17
|
+
deploy_hash.merge!({:forceUnmanage => false})
|
18
|
+
end
|
19
|
+
response = @connection.do_post(managed_resource::BASE_URI, JSON.generate(deploy_hash))
|
20
|
+
if response.status == 200 or response.status == 201
|
21
|
+
puts response.headers[:location].split("/")[-1]
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def fetch_unmanage_request(job_id)
|
26
|
+
response = @connection.do_get(managed_resource::BASE_URI + "/jobs/" + job_id)
|
27
|
+
return [] unless response.success?
|
28
|
+
|
29
|
+
body = JSON.parse(response.body)
|
30
|
+
|
31
|
+
body = {managed_resource::LIST_NAME => body} if body.is_a? Array
|
32
|
+
body = {managed_resource::LIST_NAME => [body]} unless body.has_key? managed_resource::LIST_NAME
|
33
|
+
body[managed_resource::LIST_NAME].map do |resource_params|
|
34
|
+
managed_resource.new resource_params
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -1,24 +1,16 @@
|
|
1
|
-
require 'json'
|
2
|
-
|
3
1
|
module XClarityClient
|
4
|
-
class UpdateRepoManagement <
|
5
|
-
|
6
|
-
include XClarityClient::ManagementMixin
|
7
|
-
|
8
|
-
def initialize(conf)
|
9
|
-
super(conf, UpdateRepo::BASE_URI)
|
10
|
-
end
|
2
|
+
class UpdateRepoManagement < Services::XClarityService
|
3
|
+
manages_endpoint UpdateRepo
|
11
4
|
|
12
5
|
def population(opts = {})
|
13
6
|
raise "Option key must be provided for update_repo resource" if opts.empty?
|
14
7
|
raise "Option key must be provided for update_repo resource" if not (opts.has_key?(:key) || opts.has_key?("key"))
|
15
8
|
repoKey = opts[:key] || opts["key"]
|
16
9
|
if repoKey == "supportedMts" || repoKey == "size" || repoKey == "lastRefreshed" || repoKey == "importDir" || repoKey == "publicKeys" || repoKey == "updates" || repoKey == "updatesByMt" || repoKey == "updatesByMtByComp"
|
17
|
-
|
18
|
-
else
|
10
|
+
fetch_all(opts)
|
11
|
+
else
|
19
12
|
raise "The value for option key should be one of these : supportedMts, lastRefreshed, size, importDir, publicKeys, updates, updatesByMt, updatesByMtByComp"
|
20
13
|
end
|
21
14
|
end
|
22
|
-
|
23
15
|
end
|
24
16
|
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'json'
|
2
|
+
|
3
|
+
module XClarityClient
|
4
|
+
class UserManagement < Services::XClarityService
|
5
|
+
manages_endpoint User
|
6
|
+
|
7
|
+
def population(opts = {})
|
8
|
+
fetch_all(opts)
|
9
|
+
end
|
10
|
+
|
11
|
+
def change_password(current_password, new_password)
|
12
|
+
payload = {
|
13
|
+
password: current_password,
|
14
|
+
newPassword: new_password,
|
15
|
+
confirmPassword: new_password
|
16
|
+
}
|
17
|
+
|
18
|
+
request_body = JSON.generate(payload)
|
19
|
+
|
20
|
+
response = @connection.do_put(managed_resource::SUB_URIS[:changePassword], request_body)
|
21
|
+
|
22
|
+
mount_response_change_password(response)
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
# Mounts a friendly response for the change password request
|
28
|
+
#
|
29
|
+
# @param [response] response provided by LXCA in change password endpoint
|
30
|
+
# @return [Hash] represents LXCA response
|
31
|
+
# :changed [Boolean] says if the password was changed or not
|
32
|
+
# :message [String] message from LXCA about the operation
|
33
|
+
def mount_response_change_password(response)
|
34
|
+
response = JSON.parse(response.body)
|
35
|
+
|
36
|
+
{
|
37
|
+
changed: response['response']['changed'],
|
38
|
+
message: response['messages'].first['explanation']
|
39
|
+
}
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,139 @@
|
|
1
|
+
require 'xclarity_client/connection/connection'
|
2
|
+
require 'xclarity_client/services/mixins/response_builder_mixin'
|
3
|
+
require 'xclarity_client/services/mixins/endpoint_manager_mixin'
|
4
|
+
|
5
|
+
module XClarityClient
|
6
|
+
module Services
|
7
|
+
class XClarityService
|
8
|
+
include ResponseBuilderMixin
|
9
|
+
extend EndpointManagerMixin
|
10
|
+
|
11
|
+
def initialize(connection_conf)
|
12
|
+
@connection = XClarityClient::Connection.new(connection_conf)
|
13
|
+
end
|
14
|
+
|
15
|
+
#
|
16
|
+
# Fetchs all resources represented by `managed_resource` from LXCA
|
17
|
+
#
|
18
|
+
# @return [Array] containing all `managed_resource` from LXCA
|
19
|
+
# @see EndpointManagerMixin#managed_resource
|
20
|
+
#
|
21
|
+
def fetch_all(opts = {})
|
22
|
+
$lxca_log.info "XclarityClient::Endpoints::XClarityService fetch_all",
|
23
|
+
"Sending request to #{managed_resource} resource"
|
24
|
+
|
25
|
+
response = @connection.do_get(managed_resource::BASE_URI, opts)
|
26
|
+
|
27
|
+
$lxca_log.info "XclarityClient::Endpoints::XClarityService fetch_all",
|
28
|
+
"Response received from #{managed_resource::BASE_URI}"
|
29
|
+
|
30
|
+
build_response_with_resource_list(response, managed_resource)
|
31
|
+
end
|
32
|
+
|
33
|
+
def get_object(uuids, includeAttributes, excludeAttributes)
|
34
|
+
$lxca_log.info "XclarityClient::Endpoints::XClarityService get_object",
|
35
|
+
"Sending request to #{managed_resource} resource"
|
36
|
+
|
37
|
+
uuids.reject! { |uuid| UUID.validate(uuid).nil? } unless uuids.nil?
|
38
|
+
|
39
|
+
response = if not includeAttributes.nil?
|
40
|
+
get_object_with_include_attributes(uuids, includeAttributes)
|
41
|
+
elsif not excludeAttributes.nil?
|
42
|
+
get_object_with_exclude_attributes(uuids, excludeAttributes)
|
43
|
+
elsif not uuids.nil?
|
44
|
+
@connection.do_get(managed_resource::BASE_URI + "/" + uuids.join(","))
|
45
|
+
else
|
46
|
+
@connection.do_get(managed_resource::BASE_URI)
|
47
|
+
end
|
48
|
+
|
49
|
+
build_response_with_resource_list(response, managed_resource)
|
50
|
+
end
|
51
|
+
|
52
|
+
def get_object_with_id(ids, includeAttributes, excludeAttributes)
|
53
|
+
response = if not includeAttributes.nil?
|
54
|
+
get_object_with_id_include_attributes(ids, includeAttributes, managed_resource)
|
55
|
+
elsif not excludeAttributes.nil?
|
56
|
+
get_object_with_id_exclude_attributes(ids, excludeAttributes, managed_resource)
|
57
|
+
elsif not ids.nil?
|
58
|
+
@connection.do_get(managed_resource::BASE_URI + "/" + ids.join(","))
|
59
|
+
else
|
60
|
+
@connection.do_get(managed_resource::BASE_URI)
|
61
|
+
end
|
62
|
+
|
63
|
+
build_response_with_resource_list(response, managed_resource)
|
64
|
+
end
|
65
|
+
|
66
|
+
def get_object_with_opts(opts, resource)
|
67
|
+
raise "The opts cannot be empty" if opts.empty?
|
68
|
+
filter = ""
|
69
|
+
|
70
|
+
response = if not opts.empty?
|
71
|
+
if not opts.has_key? "type"
|
72
|
+
if opts.has_key? "filterWith"
|
73
|
+
filter += "?filterWith="
|
74
|
+
filter += "#{opts["filterWith"]}"
|
75
|
+
|
76
|
+
elsif opts.has_key? "sort"
|
77
|
+
filter += ",sort=" if filter != ""
|
78
|
+
filter += "?sort=" if filter == ""
|
79
|
+
filter += "#{opts["sort"]}"
|
80
|
+
end
|
81
|
+
else
|
82
|
+
filter += "?type=#{opts["type"]}"
|
83
|
+
end
|
84
|
+
$lxca_log.info "XclarityClient::ManagementMixin get_object_with_include", "Sending request to #{resource} resource using the following filter: #{filter}"
|
85
|
+
@connection.do_get(resource::BASE_URI + filter)
|
86
|
+
end
|
87
|
+
|
88
|
+
build_response_with_resource_list(response, managed_resource)
|
89
|
+
end
|
90
|
+
|
91
|
+
private
|
92
|
+
|
93
|
+
#
|
94
|
+
#
|
95
|
+
#
|
96
|
+
def get_object_with_include_attributes(uuids, attributes)
|
97
|
+
$lxca_log.info "XclarityClient::ManagementMixin get_object_with_include",
|
98
|
+
"Sending request to #{managed_resource} resource including the following attributes: #{attributes.join(",")}"
|
99
|
+
|
100
|
+
response = if not uuids.nil?
|
101
|
+
@connection.do_get(managed_resource::BASE_URI + "/" + uuids.join(",") + "?includeAttributes=" + attributes.join(","))
|
102
|
+
else
|
103
|
+
@connection.do_get(managed_resource::BASE_URI + "?includeAttributes=" + attributes.join(","))
|
104
|
+
end
|
105
|
+
|
106
|
+
end
|
107
|
+
|
108
|
+
#
|
109
|
+
#
|
110
|
+
#
|
111
|
+
def get_object_with_exclude_attributes(uuids, attributes)
|
112
|
+
$lxca_log.info "XclarityClient::ManagementMixin get_object_with_include",
|
113
|
+
"Sending request to #{managed_resource} resource excluding the following attributes: #{attributes.join(",")}"
|
114
|
+
|
115
|
+
response = if not uuids.nil?
|
116
|
+
@connection.do_get(managed_resource::BASE_URI + "/#{uuids.join(",")}"+"?excludeAttributes=#{attributes.join(",")}")
|
117
|
+
else
|
118
|
+
@connection.do_get(managed_resource::BASE_URI + "?excludeAttributes=" + attributes.join(","))
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
122
|
+
def get_object_with_id_include_attributes(uuids, attributes, resource)
|
123
|
+
response = if not uuids.nil?
|
124
|
+
@connection.do_get(resource::BASE_URI + "/" + uuids.join(",") + "?includeAttributes=" + attributes.join(","))
|
125
|
+
else
|
126
|
+
@connection.do_get(resource::BASE_URI + "?includeAttributes=" + attributes.join(","))
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
130
|
+
def get_object_with_id_exclude_attributes(uuids, attributes, resource)
|
131
|
+
response = if not uuids.nil?
|
132
|
+
@connection.do_get(resource::BASE_URI + "/#{uuids.join(",")}"+"?excludeAttributes=#{attributes.join(",")}")
|
133
|
+
else
|
134
|
+
@connection.do_get(resource::BASE_URI + "?excludeAttributes=" + attributes.join(","))
|
135
|
+
end
|
136
|
+
end
|
137
|
+
end
|
138
|
+
end
|
139
|
+
end
|
@@ -26,12 +26,12 @@ module XClarityClient
|
|
26
26
|
|
27
27
|
@conn = Faraday.new(url: url) do |faraday|
|
28
28
|
faraday.request :url_encoded # form-encode POST params
|
29
|
-
faraday.response :logger
|
29
|
+
faraday.response :logger, $lxca_log.log # log requests to STDOUT -- This line, should be uncommented if you wanna inspect the URL Request
|
30
30
|
faraday.use :cookie_jar if conf.auth_type == 'token'
|
31
31
|
faraday.adapter Faraday.default_adapter # make requests with Net::HTTP
|
32
32
|
faraday.ssl[:verify] = conf.verify_ssl == 'PEER'
|
33
33
|
end
|
34
|
-
|
34
|
+
|
35
35
|
@conn.headers[:user_agent] = "LXCA via Ruby Client/#{XClarityClient::VERSION}" + (conf.user_agent_label.nil? ? "" : " (#{conf.user_agent_label})")
|
36
36
|
@conn.basic_auth(conf.username, conf.password) if conf.auth_type == 'basic_auth'
|
37
37
|
$lxca_log.info "XClarityClient::XclarityBase connection_builder", "Connection created Successfuly"
|
data/lib/xclarity_client.rb
CHANGED
@@ -5,59 +5,15 @@ module XClarityClient
|
|
5
5
|
$lxca_log = XClarityClient::XClarityLogger.new
|
6
6
|
end
|
7
7
|
|
8
|
+
require 'xclarity_client/errors/errors'
|
9
|
+
|
8
10
|
require 'xclarity_client/configuration'
|
9
11
|
require 'xclarity_client/xclarity_base'
|
10
|
-
require 'xclarity_client/xclarity_resource'
|
11
|
-
require 'xclarity_client/xclarity_management_mixin'
|
12
12
|
require 'xclarity_client/xclarity_power_management_mixin'
|
13
13
|
require 'xclarity_client/xclarity_credentials_validator'
|
14
|
-
require 'xclarity_client/virtual_appliance_management'
|
15
|
-
require 'xclarity_client/aicc'
|
16
|
-
require 'xclarity_client/aicc_management'
|
17
|
-
require 'xclarity_client/node'
|
18
|
-
require 'xclarity_client/node_management'
|
19
|
-
require 'xclarity_client/chassi'
|
20
|
-
require 'xclarity_client/chassi_management'
|
21
|
-
require 'xclarity_client/scalable_complex'
|
22
|
-
require 'xclarity_client/scalable_complex_management'
|
23
|
-
require 'xclarity_client/power_supply'
|
24
|
-
require 'xclarity_client/power_supply_management'
|
25
|
-
require 'xclarity_client/switch'
|
26
|
-
require 'xclarity_client/switch_management'
|
27
|
-
require 'xclarity_client/fan_mux'
|
28
|
-
require 'xclarity_client/fan_mux_management'
|
29
|
-
require 'xclarity_client/fan'
|
30
|
-
require 'xclarity_client/fan_management'
|
31
|
-
require 'xclarity_client/cmm'
|
32
|
-
require 'xclarity_client/cmm_management'
|
33
|
-
require 'xclarity_client/canister'
|
34
|
-
require 'xclarity_client/canister_management'
|
35
|
-
require 'xclarity_client/cabinet'
|
36
|
-
require 'xclarity_client/cabinet_management'
|
37
|
-
require 'xclarity_client/event'
|
38
|
-
require 'xclarity_client/event_management'
|
39
|
-
require 'xclarity_client/ffdc'
|
40
|
-
require 'xclarity_client/ffdc_management'
|
41
|
-
require 'xclarity_client/job'
|
42
|
-
require 'xclarity_client/job_management'
|
43
|
-
require 'xclarity_client/update_repo'
|
44
|
-
require 'xclarity_client/update_repo_management'
|
45
|
-
require 'xclarity_client/user'
|
46
|
-
require 'xclarity_client/user_management'
|
47
14
|
require 'xclarity_client/discover'
|
48
15
|
require 'xclarity_client/client'
|
49
|
-
require 'xclarity_client/
|
50
|
-
|
51
|
-
require 'xclarity_client/
|
52
|
-
require 'xclarity_client/
|
53
|
-
require 'xclarity_client/config_pattern'
|
54
|
-
require 'xclarity_client/config_pattern_management'
|
55
|
-
require 'xclarity_client/error/authentication_error'
|
56
|
-
require 'xclarity_client/error/connection_failed'
|
57
|
-
require 'xclarity_client/error/connection_failed_unknown'
|
58
|
-
require 'xclarity_client/error/connection_refused'
|
59
|
-
require 'xclarity_client/error/hostname_unknown'
|
60
|
-
require 'xclarity_client/discover_request'
|
61
|
-
require 'xclarity_client/discover_request_management'
|
62
|
-
require 'xclarity_client/discovery'
|
63
|
-
require 'xclarity_client/discovery_management'
|
16
|
+
require 'xclarity_client/schemas'
|
17
|
+
|
18
|
+
require 'xclarity_client/endpoints/endpoints'
|
19
|
+
require 'xclarity_client/services/services'
|
data/xclarity_client.gemspec
CHANGED
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.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Manasa Rao
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-
|
12
|
+
date: 2018-04-06 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -137,6 +137,20 @@ dependencies:
|
|
137
137
|
- - "~>"
|
138
138
|
- !ruby/object:Gem::Version
|
139
139
|
version: 1.8.3
|
140
|
+
- !ruby/object:Gem::Dependency
|
141
|
+
name: json-schema
|
142
|
+
requirement: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - "~>"
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: 2.8.0
|
147
|
+
type: :runtime
|
148
|
+
prerelease: false
|
149
|
+
version_requirements: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - "~>"
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: 2.8.0
|
140
154
|
description:
|
141
155
|
email:
|
142
156
|
- mrao@lenovo.com
|
@@ -174,72 +188,98 @@ files:
|
|
174
188
|
- docs/apib/jobs.apib
|
175
189
|
- docs/apib/node.apib
|
176
190
|
- docs/apib/node_bmc.apib
|
191
|
+
- docs/apib/persisted_result.apib
|
177
192
|
- docs/apib/power_supply.apib
|
178
193
|
- docs/apib/scalable_complex.apib
|
179
194
|
- docs/apib/squisher.rb
|
180
195
|
- docs/apib/switches.apib
|
196
|
+
- docs/apib/unmanage_request.apib
|
181
197
|
- docs/apib/update_repo.apib
|
182
198
|
- docs/apib/users.apib
|
183
199
|
- example/simple.rb
|
184
200
|
- lib/utils/logger.rb
|
185
201
|
- lib/xclarity_client.rb
|
186
|
-
- lib/xclarity_client/aicc.rb
|
187
|
-
- lib/xclarity_client/aicc_management.rb
|
188
|
-
- lib/xclarity_client/cabinet.rb
|
189
|
-
- lib/xclarity_client/cabinet_management.rb
|
190
|
-
- lib/xclarity_client/canister.rb
|
191
|
-
- lib/xclarity_client/canister_management.rb
|
192
|
-
- lib/xclarity_client/chassi.rb
|
193
|
-
- lib/xclarity_client/chassi_management.rb
|
194
202
|
- lib/xclarity_client/client.rb
|
195
|
-
- lib/xclarity_client/cmm.rb
|
196
|
-
- lib/xclarity_client/cmm_management.rb
|
197
|
-
- lib/xclarity_client/config_pattern.rb
|
198
|
-
- lib/xclarity_client/config_pattern_management.rb
|
199
|
-
- lib/xclarity_client/config_profile.rb
|
200
|
-
- lib/xclarity_client/config_profile_management.rb
|
201
|
-
- lib/xclarity_client/config_target.rb
|
202
|
-
- lib/xclarity_client/config_target_management.rb
|
203
203
|
- lib/xclarity_client/configuration.rb
|
204
|
+
- lib/xclarity_client/connection/connection.rb
|
204
205
|
- lib/xclarity_client/discover.rb
|
205
|
-
- lib/xclarity_client/
|
206
|
-
- lib/xclarity_client/
|
207
|
-
- lib/xclarity_client/
|
208
|
-
- lib/xclarity_client/
|
209
|
-
- lib/xclarity_client/
|
210
|
-
- lib/xclarity_client/
|
211
|
-
- lib/xclarity_client/
|
212
|
-
- lib/xclarity_client/
|
213
|
-
- lib/xclarity_client/
|
214
|
-
- lib/xclarity_client/
|
215
|
-
- lib/xclarity_client/
|
216
|
-
- lib/xclarity_client/
|
217
|
-
- lib/xclarity_client/
|
218
|
-
- lib/xclarity_client/
|
219
|
-
- lib/xclarity_client/
|
220
|
-
- lib/xclarity_client/ffdc.rb
|
221
|
-
- lib/xclarity_client/
|
222
|
-
- lib/xclarity_client/
|
223
|
-
- lib/xclarity_client/
|
224
|
-
- lib/xclarity_client/node.rb
|
225
|
-
- lib/xclarity_client/
|
226
|
-
- lib/xclarity_client/
|
227
|
-
- lib/xclarity_client/
|
228
|
-
- lib/xclarity_client/
|
229
|
-
- lib/xclarity_client/
|
230
|
-
- lib/xclarity_client/
|
231
|
-
- lib/xclarity_client/
|
232
|
-
- lib/xclarity_client/
|
233
|
-
- lib/xclarity_client/
|
234
|
-
- lib/xclarity_client/user.rb
|
235
|
-
- lib/xclarity_client/
|
206
|
+
- lib/xclarity_client/endpoints/aicc.rb
|
207
|
+
- lib/xclarity_client/endpoints/buildable_resource_mixin.rb
|
208
|
+
- lib/xclarity_client/endpoints/cabinet.rb
|
209
|
+
- lib/xclarity_client/endpoints/canister.rb
|
210
|
+
- lib/xclarity_client/endpoints/chassi.rb
|
211
|
+
- lib/xclarity_client/endpoints/cmm.rb
|
212
|
+
- lib/xclarity_client/endpoints/config_pattern.rb
|
213
|
+
- lib/xclarity_client/endpoints/config_profile.rb
|
214
|
+
- lib/xclarity_client/endpoints/config_target.rb
|
215
|
+
- lib/xclarity_client/endpoints/discover_request.rb
|
216
|
+
- lib/xclarity_client/endpoints/discovery.rb
|
217
|
+
- lib/xclarity_client/endpoints/endpoints.rb
|
218
|
+
- lib/xclarity_client/endpoints/event.rb
|
219
|
+
- lib/xclarity_client/endpoints/fan.rb
|
220
|
+
- lib/xclarity_client/endpoints/fan_mux.rb
|
221
|
+
- lib/xclarity_client/endpoints/ffdc.rb
|
222
|
+
- lib/xclarity_client/endpoints/globalsettings.rb
|
223
|
+
- lib/xclarity_client/endpoints/hostplatform.rb
|
224
|
+
- lib/xclarity_client/endpoints/job.rb
|
225
|
+
- lib/xclarity_client/endpoints/node.rb
|
226
|
+
- lib/xclarity_client/endpoints/osimage.rb
|
227
|
+
- lib/xclarity_client/endpoints/persisted_result.rb
|
228
|
+
- lib/xclarity_client/endpoints/power_supply.rb
|
229
|
+
- lib/xclarity_client/endpoints/remote_access.rb
|
230
|
+
- lib/xclarity_client/endpoints/remotefileserver.rb
|
231
|
+
- lib/xclarity_client/endpoints/scalable_complex.rb
|
232
|
+
- lib/xclarity_client/endpoints/switch.rb
|
233
|
+
- lib/xclarity_client/endpoints/unmanage_request.rb
|
234
|
+
- lib/xclarity_client/endpoints/update_repo.rb
|
235
|
+
- lib/xclarity_client/endpoints/user.rb
|
236
|
+
- lib/xclarity_client/endpoints/xclarity_endpoint.rb
|
237
|
+
- lib/xclarity_client/errors/authentication_error.rb
|
238
|
+
- lib/xclarity_client/errors/connection_failed.rb
|
239
|
+
- lib/xclarity_client/errors/connection_failed_unknown.rb
|
240
|
+
- lib/xclarity_client/errors/connection_refused.rb
|
241
|
+
- lib/xclarity_client/errors/errors.rb
|
242
|
+
- lib/xclarity_client/errors/hostname_unknown.rb
|
243
|
+
- lib/xclarity_client/schemas.rb
|
244
|
+
- lib/xclarity_client/services/aicc_management.rb
|
245
|
+
- lib/xclarity_client/services/cabinet_management.rb
|
246
|
+
- lib/xclarity_client/services/canister_management.rb
|
247
|
+
- lib/xclarity_client/services/chassi_management.rb
|
248
|
+
- lib/xclarity_client/services/cmm_management.rb
|
249
|
+
- lib/xclarity_client/services/config_pattern_management.rb
|
250
|
+
- lib/xclarity_client/services/config_profile_management.rb
|
251
|
+
- lib/xclarity_client/services/config_target_management.rb
|
252
|
+
- lib/xclarity_client/services/discover_request_management.rb
|
253
|
+
- lib/xclarity_client/services/discovery_management.rb
|
254
|
+
- lib/xclarity_client/services/event_management.rb
|
255
|
+
- lib/xclarity_client/services/fan_management.rb
|
256
|
+
- lib/xclarity_client/services/fan_mux_management.rb
|
257
|
+
- lib/xclarity_client/services/ffdc_management.rb
|
258
|
+
- lib/xclarity_client/services/globalsettings_management.rb
|
259
|
+
- lib/xclarity_client/services/hostplatform_management.rb
|
260
|
+
- lib/xclarity_client/services/job_management.rb
|
261
|
+
- lib/xclarity_client/services/mixins/endpoint_manager_mixin.rb
|
262
|
+
- lib/xclarity_client/services/mixins/list_name_interpreter_mixin.rb
|
263
|
+
- lib/xclarity_client/services/mixins/response_builder_mixin.rb
|
264
|
+
- lib/xclarity_client/services/node_management.rb
|
265
|
+
- lib/xclarity_client/services/osimage_management.rb
|
266
|
+
- lib/xclarity_client/services/persisted_result_management.rb
|
267
|
+
- lib/xclarity_client/services/power_supply_management.rb
|
268
|
+
- lib/xclarity_client/services/remote_access_management.rb
|
269
|
+
- lib/xclarity_client/services/remotefileserver_management.rb
|
270
|
+
- lib/xclarity_client/services/scalable_complex_management.rb
|
271
|
+
- lib/xclarity_client/services/services.rb
|
272
|
+
- lib/xclarity_client/services/switch_management.rb
|
273
|
+
- lib/xclarity_client/services/unmanage_request_management.rb
|
274
|
+
- lib/xclarity_client/services/update_repo_management.rb
|
275
|
+
- lib/xclarity_client/services/user_management.rb
|
276
|
+
- lib/xclarity_client/services/virtual_appliance_management.rb
|
277
|
+
- lib/xclarity_client/services/xclarity_management_mixin.rb
|
278
|
+
- lib/xclarity_client/services/xclarity_service.rb
|
236
279
|
- lib/xclarity_client/version.rb
|
237
|
-
- lib/xclarity_client/virtual_appliance_management.rb
|
238
280
|
- lib/xclarity_client/xclarity_base.rb
|
239
281
|
- lib/xclarity_client/xclarity_credentials_validator.rb
|
240
|
-
- lib/xclarity_client/xclarity_management_mixin.rb
|
241
282
|
- lib/xclarity_client/xclarity_power_management_mixin.rb
|
242
|
-
- lib/xclarity_client/xclarity_resource.rb
|
243
283
|
- xclarity_client.gemspec
|
244
284
|
homepage: https://github.com/lenovo/xclarity_client
|
245
285
|
licenses: []
|
@@ -260,7 +300,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
260
300
|
version: '0'
|
261
301
|
requirements: []
|
262
302
|
rubyforge_project:
|
263
|
-
rubygems_version: 2.
|
303
|
+
rubygems_version: 2.6.14
|
264
304
|
signing_key:
|
265
305
|
specification_version: 4
|
266
306
|
summary: Lenovo XClarity API Client
|
@@ -1,16 +0,0 @@
|
|
1
|
-
# XClarityClient module/namespace
|
2
|
-
module XClarityClient
|
3
|
-
# Aicc Management class
|
4
|
-
class AiccManagement < XClarityBase
|
5
|
-
include XClarityClient::ManagementMixin
|
6
|
-
|
7
|
-
def initialize(conf)
|
8
|
-
super(conf, Aicc::BASE_URI)
|
9
|
-
end
|
10
|
-
|
11
|
-
def population(opts = {})
|
12
|
-
get_all_resources(Aicc, opts)
|
13
|
-
end
|
14
|
-
|
15
|
-
end
|
16
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require 'json'
|
2
|
-
|
3
|
-
module XClarityClient
|
4
|
-
class CabinetManagement < XClarityBase
|
5
|
-
|
6
|
-
include XClarityClient::ManagementMixin
|
7
|
-
|
8
|
-
def initialize(conf)
|
9
|
-
super(conf, Cabinet::BASE_URI)
|
10
|
-
end
|
11
|
-
|
12
|
-
def population(opts = {})
|
13
|
-
get_all_resources(Cabinet, opts)
|
14
|
-
end
|
15
|
-
|
16
|
-
end
|
17
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require 'json'
|
2
|
-
|
3
|
-
module XClarityClient
|
4
|
-
class CanisterManagement < XClarityBase
|
5
|
-
|
6
|
-
include XClarityClient::ManagementMixin
|
7
|
-
|
8
|
-
def initialize(conf)
|
9
|
-
super(conf, Canister::BASE_URI)
|
10
|
-
end
|
11
|
-
|
12
|
-
def population(opts = {})
|
13
|
-
get_all_resources(Canister, opts)
|
14
|
-
end
|
15
|
-
|
16
|
-
end
|
17
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require 'json'
|
2
|
-
|
3
|
-
module XClarityClient
|
4
|
-
class ChassiManagement < XClarityBase
|
5
|
-
|
6
|
-
include XClarityClient::ManagementMixin
|
7
|
-
|
8
|
-
def initialize(conf)
|
9
|
-
super(conf, Chassi::BASE_URI)
|
10
|
-
end
|
11
|
-
|
12
|
-
def population(opts = {})
|
13
|
-
get_all_resources(Chassi, opts)
|
14
|
-
end
|
15
|
-
|
16
|
-
end
|
17
|
-
end
|