ibm_power_hmc 0.16.1 → 0.17.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ibm_power_hmc/connection.rb +59 -23
- data/lib/ibm_power_hmc/parser.rb +9 -0
- data/lib/ibm_power_hmc/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b656be196e11b14214f13c50871c1f9a892d6346db7729e2ce0f1cc4f976c5be
|
4
|
+
data.tar.gz: 24f50dbe1015ac99524604cece6275cd5fd9c79f0236acb2e8a01de0bcd6bd71
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: deb0194fb5f3df5bbcc69182f30f29956f11a66cf2a91740dec214d63fce5b16383626ef600f3478084616b23ee1a557620ce45cc05ff7adbdb0364719d2a371
|
7
|
+
data.tar.gz: 6c19000f0cf64c5413552d60a304e51005b688403e4171367ed3d7d5384a9315a819225e9a5255b51735ddf69f0e38c040888cacbd1ec1688b67f1c594a361e6
|
@@ -80,17 +80,32 @@ module IbmPowerHmc
|
|
80
80
|
end
|
81
81
|
|
82
82
|
##
|
83
|
-
# @!method managed_systems(search = nil)
|
83
|
+
# @!method managed_systems(search = nil, group_name = nil)
|
84
84
|
# Retrieve the list of systems managed by the HMC.
|
85
85
|
# @param search [String] The optional search criteria.
|
86
|
+
# @param group_name [String] The extended group attributes.
|
86
87
|
# @return [Array<IbmPowerHmc::ManagedSystem>] The list of managed systems.
|
87
|
-
def managed_systems(search = nil)
|
88
|
+
def managed_systems(search = nil, group_name = nil)
|
88
89
|
method_url = "/rest/api/uom/ManagedSystem"
|
89
90
|
method_url += "/search/(#{ERB::Util.url_encode(search)})" unless search.nil?
|
91
|
+
method_url += "?group=#{group_name}" unless group_name.nil?
|
90
92
|
response = request(:get, method_url)
|
91
93
|
FeedParser.new(response.body).objects(:ManagedSystem)
|
92
94
|
end
|
93
95
|
|
96
|
+
##
|
97
|
+
# @!method managed_system(sys_uuid = nil, group_name = nil)
|
98
|
+
# Retrieve information about a managed system.
|
99
|
+
# @param sys_uuid [String] The UUID of the managed system.
|
100
|
+
# @param group_name [String] The extended group attributes.
|
101
|
+
# @return [IbmPowerHmc::ManagedSystem] The managed system.
|
102
|
+
def managed_system(sys_uuid, group_name = nil)
|
103
|
+
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}"
|
104
|
+
method_url += "?group=#{group_name}" unless group_name.nil?
|
105
|
+
response = request(:get, method_url)
|
106
|
+
Parser.new(response.body).object(:ManagedSystem)
|
107
|
+
end
|
108
|
+
|
94
109
|
##
|
95
110
|
# @!method managed_systems_quick
|
96
111
|
# Retrieve the list of systems managed by the HMC (using Quick API).
|
@@ -115,32 +130,20 @@ module IbmPowerHmc
|
|
115
130
|
end
|
116
131
|
|
117
132
|
##
|
118
|
-
# @!method
|
119
|
-
# Retrieve information about a managed system.
|
120
|
-
# @param sys_uuid [String] The UUID of the managed system.
|
121
|
-
# @param group_name [String] The extended group attributes.
|
122
|
-
# @return [IbmPowerHmc::ManagedSystem] The managed system.
|
123
|
-
def managed_system(sys_uuid, group_name = nil)
|
124
|
-
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}"
|
125
|
-
method_url += "?group=#{group_name}" unless group_name.nil?
|
126
|
-
|
127
|
-
response = request(:get, method_url)
|
128
|
-
Parser.new(response.body).object(:ManagedSystem)
|
129
|
-
end
|
130
|
-
|
131
|
-
##
|
132
|
-
# @!method lpars(sys_uuid = nil, search = nil)
|
133
|
+
# @!method lpars(sys_uuid = nil, search = nil, group_name = nil)
|
133
134
|
# Retrieve the list of logical partitions managed by the HMC.
|
134
135
|
# @param sys_uuid [String] The UUID of the managed system.
|
135
136
|
# @param search [String] The optional search criteria.
|
137
|
+
# @param group_name [String] The extended group attributes.
|
136
138
|
# @return [Array<IbmPowerHmc::LogicalPartition>] The list of logical partitions.
|
137
|
-
def lpars(sys_uuid = nil, search = nil)
|
139
|
+
def lpars(sys_uuid = nil, search = nil, group_name = nil)
|
138
140
|
if sys_uuid.nil?
|
139
141
|
method_url = "/rest/api/uom/LogicalPartition"
|
140
142
|
method_url += "/search/(#{ERB::Util.url_encode(search)})" unless search.nil?
|
141
143
|
else
|
142
144
|
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}/LogicalPartition"
|
143
145
|
end
|
146
|
+
method_url += "?group=#{group_name}" unless group_name.nil?
|
144
147
|
response = request(:get, method_url)
|
145
148
|
FeedParser.new(response.body).objects(:LogicalPartition)
|
146
149
|
end
|
@@ -159,11 +162,25 @@ module IbmPowerHmc
|
|
159
162
|
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}/LogicalPartition/#{lpar_uuid}"
|
160
163
|
end
|
161
164
|
method_url += "?group=#{group_name}" unless group_name.nil?
|
162
|
-
|
163
165
|
response = request(:get, method_url)
|
164
166
|
Parser.new(response.body).object(:LogicalPartition)
|
165
167
|
end
|
166
168
|
|
169
|
+
##
|
170
|
+
# @!method lpars_quick(sys_uuid = nil)
|
171
|
+
# Retrieve the list of logical partitions managed by the HMC (using Quick API).
|
172
|
+
# @param sys_uuid [String] The UUID of the managed system.
|
173
|
+
# @return [Array<Hash>] The list of logical partitions.
|
174
|
+
def lpars_quick(sys_uuid = nil)
|
175
|
+
if sys_uuid.nil?
|
176
|
+
method_url = "/rest/api/uom/LogicalPartition/quick/All"
|
177
|
+
else
|
178
|
+
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}/LogicalPartition/quick/All"
|
179
|
+
end
|
180
|
+
response = request(:get, method_url)
|
181
|
+
JSON.parse(response.body)
|
182
|
+
end
|
183
|
+
|
167
184
|
##
|
168
185
|
# @!method lpar_quick_property(lpar_uuid, property_name)
|
169
186
|
# Retrieve a quick property of a logical partition.
|
@@ -226,20 +243,25 @@ module IbmPowerHmc
|
|
226
243
|
end
|
227
244
|
|
228
245
|
##
|
229
|
-
# @!method vioses(sys_uuid = nil, search = nil, permissive = true)
|
246
|
+
# @!method vioses(sys_uuid = nil, search = nil, group_name = nil, permissive = true)
|
230
247
|
# Retrieve the list of virtual I/O servers managed by the HMC.
|
231
248
|
# @param sys_uuid [String] The UUID of the managed system.
|
232
249
|
# @param search [String] The optional search criteria.
|
250
|
+
# @param group_name [String] The extended group attributes.
|
233
251
|
# @param permissive [Boolean] Skip virtual I/O servers that have error conditions.
|
234
252
|
# @return [Array<IbmPowerHmc::VirtualIOServer>] The list of virtual I/O servers.
|
235
|
-
def vioses(sys_uuid = nil, search = nil, permissive = true)
|
253
|
+
def vioses(sys_uuid = nil, search = nil, group_name = nil, permissive = true)
|
236
254
|
if sys_uuid.nil?
|
237
255
|
method_url = "/rest/api/uom/VirtualIOServer"
|
238
256
|
method_url += "/search/(#{ERB::Util.url_encode(search)})" unless search.nil?
|
239
257
|
else
|
240
258
|
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}/VirtualIOServer"
|
241
259
|
end
|
242
|
-
|
260
|
+
query = {}
|
261
|
+
query["ignoreError"] = "true" if permissive
|
262
|
+
query["group"] = group_name unless group_name.nil?
|
263
|
+
method_url += "?" + query.map { |h| h.join("=") }.join("&") unless query.empty?
|
264
|
+
|
243
265
|
response = request(:get, method_url)
|
244
266
|
FeedParser.new(response.body).objects(:VirtualIOServer)
|
245
267
|
end
|
@@ -258,11 +280,25 @@ module IbmPowerHmc
|
|
258
280
|
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}/VirtualIOServer/#{vios_uuid}"
|
259
281
|
end
|
260
282
|
method_url += "?group=#{group_name}" unless group_name.nil?
|
261
|
-
|
262
283
|
response = request(:get, method_url)
|
263
284
|
Parser.new(response.body).object(:VirtualIOServer)
|
264
285
|
end
|
265
286
|
|
287
|
+
##
|
288
|
+
# @!method vioses_quick(sys_uuid = nil)
|
289
|
+
# Retrieve the list of virtual I/O servers managed by the HMC (using Quick API).
|
290
|
+
# @param sys_uuid [String] The UUID of the managed system.
|
291
|
+
# @return [Array<Hash>] The list of virtual I/O servers.
|
292
|
+
def vioses_quick(sys_uuid = nil)
|
293
|
+
if sys_uuid.nil?
|
294
|
+
method_url = "/rest/api/uom/VirtualIOServer/quick/All"
|
295
|
+
else
|
296
|
+
method_url = "/rest/api/uom/ManagedSystem/#{sys_uuid}/VirtualIOServer/quick/All"
|
297
|
+
end
|
298
|
+
response = request(:get, method_url)
|
299
|
+
JSON.parse(response.body)
|
300
|
+
end
|
301
|
+
|
266
302
|
##
|
267
303
|
# @!method groups
|
268
304
|
# Retrieve the list of groups defined on the HMC.
|
data/lib/ibm_power_hmc/parser.rb
CHANGED
@@ -379,6 +379,11 @@ module IbmPowerHmc
|
|
379
379
|
def io_adapters
|
380
380
|
collection_of("PartitionIOConfiguration/ProfileIOSlots/ProfileIOSlot/AssociatedIOSlot/RelatedIOAdapter", "*[1]")
|
381
381
|
end
|
382
|
+
|
383
|
+
def shared_processor_pool_uuid
|
384
|
+
href = singleton("ProcessorPool", "href")
|
385
|
+
uuid_from_href(href) unless href.nil?
|
386
|
+
end
|
382
387
|
end
|
383
388
|
|
384
389
|
# Logical Partition information
|
@@ -933,6 +938,10 @@ module IbmPowerHmc
|
|
933
938
|
def lpar_uuids
|
934
939
|
uuids_from_links("AssignedPartitions")
|
935
940
|
end
|
941
|
+
|
942
|
+
def sys_uuid
|
943
|
+
uuid_from_href(href, -3)
|
944
|
+
end
|
936
945
|
end
|
937
946
|
|
938
947
|
class PartitionTemplateSummary < AbstractRest
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ibm_power_hmc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- IBM Power
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-10-
|
11
|
+
date: 2022-10-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|