ovirt-engine-sdk 4.4.0 → 4.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.adoc +5 -0
- data/lib/ovirtsdk4/readers.rb +306 -4
- data/lib/ovirtsdk4/services.rb +967 -25
- data/lib/ovirtsdk4/types.rb +1201 -192
- data/lib/ovirtsdk4/version.rb +1 -1
- data/lib/ovirtsdk4/writers.rb +94 -1
- metadata +2 -2
data/lib/ovirtsdk4/services.rb
CHANGED
@@ -722,6 +722,12 @@ module OvirtSDK4
|
|
722
722
|
class UserService < Service
|
723
723
|
end
|
724
724
|
|
725
|
+
class UserOptionService < Service
|
726
|
+
end
|
727
|
+
|
728
|
+
class UserOptionsService < Service
|
729
|
+
end
|
730
|
+
|
725
731
|
class UsersService < Service
|
726
732
|
end
|
727
733
|
|
@@ -758,6 +764,18 @@ module OvirtSDK4
|
|
758
764
|
class VmCdromsService < Service
|
759
765
|
end
|
760
766
|
|
767
|
+
class VmCheckpointService < Service
|
768
|
+
end
|
769
|
+
|
770
|
+
class VmCheckpointDiskService < Service
|
771
|
+
end
|
772
|
+
|
773
|
+
class VmCheckpointDisksService < Service
|
774
|
+
end
|
775
|
+
|
776
|
+
class VmCheckpointsService < Service
|
777
|
+
end
|
778
|
+
|
761
779
|
class VmDiskService < MeasurableService
|
762
780
|
end
|
763
781
|
|
@@ -6240,6 +6258,48 @@ module OvirtSDK4
|
|
6240
6258
|
|
6241
6259
|
class DataCenterService < Service
|
6242
6260
|
|
6261
|
+
CLEAN_FINISHED_TASKS = [
|
6262
|
+
[:async, TrueClass].freeze,
|
6263
|
+
].freeze
|
6264
|
+
|
6265
|
+
private_constant :CLEAN_FINISHED_TASKS
|
6266
|
+
|
6267
|
+
#
|
6268
|
+
# Currently, the storage pool manager (SPM) fails to
|
6269
|
+
# switch to another host if the SPM has uncleared tasks.
|
6270
|
+
# Clearing all finished tasks enables the SPM switching.
|
6271
|
+
#
|
6272
|
+
# For example, to clean all the finished tasks on a data center with ID `123` send a request like this:
|
6273
|
+
#
|
6274
|
+
# [source]
|
6275
|
+
# ----
|
6276
|
+
# POST /ovirt-engine/api/datacenters/123/cleanfinishedtasks
|
6277
|
+
# ----
|
6278
|
+
#
|
6279
|
+
# With a request body like this:
|
6280
|
+
#
|
6281
|
+
# [source,xml]
|
6282
|
+
# ----
|
6283
|
+
# <action/>
|
6284
|
+
# ----
|
6285
|
+
#
|
6286
|
+
# @param opts [Hash] Additional options.
|
6287
|
+
#
|
6288
|
+
# @option opts [Boolean] :async Indicates if the action should be performed asynchronously.
|
6289
|
+
#
|
6290
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
6291
|
+
#
|
6292
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
6293
|
+
#
|
6294
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
6295
|
+
# given then the timeout set globally for the connection will be used.
|
6296
|
+
#
|
6297
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
6298
|
+
#
|
6299
|
+
def clean_finished_tasks(opts = {})
|
6300
|
+
internal_action(:cleanfinishedtasks, nil, CLEAN_FINISHED_TASKS, opts)
|
6301
|
+
end
|
6302
|
+
|
6243
6303
|
GET = [
|
6244
6304
|
[:filter, TrueClass].freeze,
|
6245
6305
|
[:follow, String].freeze,
|
@@ -6352,6 +6412,53 @@ module OvirtSDK4
|
|
6352
6412
|
internal_remove(REMOVE, opts)
|
6353
6413
|
end
|
6354
6414
|
|
6415
|
+
SET_MASTER = [
|
6416
|
+
[:async, TrueClass].freeze,
|
6417
|
+
[:storage_domain, StorageDomain].freeze,
|
6418
|
+
].freeze
|
6419
|
+
|
6420
|
+
private_constant :SET_MASTER
|
6421
|
+
|
6422
|
+
#
|
6423
|
+
# Used for manually setting a storage domain in the data center as a master.
|
6424
|
+
# For example, for setting a storage domain with ID '456' as a master on a data center with ID '123',
|
6425
|
+
# send a request like this:
|
6426
|
+
#
|
6427
|
+
# [source]
|
6428
|
+
# ----
|
6429
|
+
# POST /ovirt-engine/api/datacenters/123/setmaster
|
6430
|
+
# ----
|
6431
|
+
#
|
6432
|
+
# With a request body like this:
|
6433
|
+
#
|
6434
|
+
# [source,xml]
|
6435
|
+
# ----
|
6436
|
+
# <action>
|
6437
|
+
# <storage_domain id="456"/>
|
6438
|
+
# </action>
|
6439
|
+
# ----
|
6440
|
+
#
|
6441
|
+
# The new master storage domain can be also specified by its name.
|
6442
|
+
#
|
6443
|
+
# @param opts [Hash] Additional options.
|
6444
|
+
#
|
6445
|
+
# @option opts [Boolean] :async Indicates if the action should be performed asynchronously.
|
6446
|
+
#
|
6447
|
+
# @option opts [StorageDomain] :storage_domain The new master storage domain for the data center.
|
6448
|
+
#
|
6449
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
6450
|
+
#
|
6451
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
6452
|
+
#
|
6453
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
6454
|
+
# given then the timeout set globally for the connection will be used.
|
6455
|
+
#
|
6456
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
6457
|
+
#
|
6458
|
+
def set_master(opts = {})
|
6459
|
+
internal_action(:setmaster, nil, SET_MASTER, opts)
|
6460
|
+
end
|
6461
|
+
|
6355
6462
|
UPDATE = [
|
6356
6463
|
[:async, TrueClass].freeze,
|
6357
6464
|
].freeze
|
@@ -7545,6 +7652,7 @@ module OvirtSDK4
|
|
7545
7652
|
|
7546
7653
|
LIST = [
|
7547
7654
|
[:follow, String].freeze,
|
7655
|
+
[:include_active, TrueClass].freeze,
|
7548
7656
|
[:max, Integer].freeze,
|
7549
7657
|
].freeze
|
7550
7658
|
|
@@ -7560,6 +7668,8 @@ module OvirtSDK4
|
|
7560
7668
|
# @option opts [String] :follow Indicates which inner links should be _followed_. The objects referenced by these links will be fetched as part
|
7561
7669
|
# of the current request. See <<documents/003_common_concepts/follow, here>> for details.
|
7562
7670
|
#
|
7671
|
+
# @option opts [Boolean] :include_active If true return also active snapshots. If not specified active snapshots are not returned.
|
7672
|
+
#
|
7563
7673
|
# @option opts [Integer] :max Sets the maximum number of snapshots to return. If not specified all the snapshots are returned.
|
7564
7674
|
#
|
7565
7675
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
@@ -12421,6 +12531,7 @@ module OvirtSDK4
|
|
12421
12531
|
ADD = [
|
12422
12532
|
[:activate, TrueClass].freeze,
|
12423
12533
|
[:deploy_hosted_engine, TrueClass].freeze,
|
12534
|
+
[:reboot, TrueClass].freeze,
|
12424
12535
|
[:undeploy_hosted_engine, TrueClass].freeze,
|
12425
12536
|
].freeze
|
12426
12537
|
|
@@ -12504,6 +12615,8 @@ module OvirtSDK4
|
|
12504
12615
|
# as `true`, i.e., deploy the hosted engine components. Omitting this parameter equals `false`, and
|
12505
12616
|
# the host performs no operation in the hosted engine area.
|
12506
12617
|
#
|
12618
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
12619
|
+
#
|
12507
12620
|
# @option opts [Boolean] :undeploy_hosted_engine When set to `true`, this host un-deploys the hosted engine components and does not
|
12508
12621
|
# function as part of the High Availability cluster. A missing value is treated as `true`, i.e., un-deploy.
|
12509
12622
|
# Omitting this parameter equals `false` and the host performs no operation in the hosted engine area.
|
@@ -12636,6 +12749,7 @@ module OvirtSDK4
|
|
12636
12749
|
ADD_USING_ROOT_PASSWORD = [
|
12637
12750
|
[:activate, TrueClass].freeze,
|
12638
12751
|
[:deploy_hosted_engine, TrueClass].freeze,
|
12752
|
+
[:reboot, TrueClass].freeze,
|
12639
12753
|
[:undeploy_hosted_engine, TrueClass].freeze,
|
12640
12754
|
].freeze
|
12641
12755
|
|
@@ -12657,6 +12771,8 @@ module OvirtSDK4
|
|
12657
12771
|
# as `true`, i.e., deploy the hosted engine components. Omitting this parameter equals `false`, and
|
12658
12772
|
# the host performs no operation in the hosted engine area.
|
12659
12773
|
#
|
12774
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
12775
|
+
#
|
12660
12776
|
# @option opts [Boolean] :undeploy_hosted_engine When set to `true`, this host un-deploys the hosted engine components and does not
|
12661
12777
|
# function as part of the High Availability cluster. A missing value is treated as `true`, i.e., un-deploy.
|
12662
12778
|
# Omitting this parameter equals `false` and the host performs no operation in the hosted engine area.
|
@@ -12679,13 +12795,14 @@ module OvirtSDK4
|
|
12679
12795
|
ADD_USING_SSH = [
|
12680
12796
|
[:activate, TrueClass].freeze,
|
12681
12797
|
[:deploy_hosted_engine, TrueClass].freeze,
|
12798
|
+
[:reboot, TrueClass].freeze,
|
12682
12799
|
[:undeploy_hosted_engine, TrueClass].freeze,
|
12683
12800
|
].freeze
|
12684
12801
|
|
12685
12802
|
private_constant :ADD_USING_SSH
|
12686
12803
|
|
12687
12804
|
#
|
12688
|
-
# Add a new host to the system providing the ssh password or
|
12805
|
+
# Add a new host to the system providing the ssh password, fingerprint or public key.
|
12689
12806
|
#
|
12690
12807
|
# @param host [Host] The host definition with which the new host is created is passed as a parameter, and the newly created host
|
12691
12808
|
# is returned.
|
@@ -12700,6 +12817,8 @@ module OvirtSDK4
|
|
12700
12817
|
# as `true`, i.e., deploy the hosted engine components. Omitting this parameter equals `false`, and
|
12701
12818
|
# the host performs no operation in the hosted engine area.
|
12702
12819
|
#
|
12820
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
12821
|
+
#
|
12703
12822
|
# @option opts [Boolean] :undeploy_hosted_engine When set to `true`, this host un-deploys the hosted engine components and does not
|
12704
12823
|
# function as part of the High Availability cluster. A missing value is treated as `true`, i.e., un-deploy.
|
12705
12824
|
# Omitting this parameter equals `false` and the host performs no operation in the hosted engine area.
|
@@ -15366,6 +15485,15 @@ module OvirtSDK4
|
|
15366
15485
|
internal_update(pool, MacPool, UPDATE, opts)
|
15367
15486
|
end
|
15368
15487
|
|
15488
|
+
#
|
15489
|
+
# Returns a reference to the service that manages the permissions that are associated with the MacPool.
|
15490
|
+
#
|
15491
|
+
# @return [AssignedPermissionsService] A reference to `permissions` service.
|
15492
|
+
#
|
15493
|
+
def permissions_service
|
15494
|
+
@permissions_service ||= AssignedPermissionsService.new(self, 'permissions')
|
15495
|
+
end
|
15496
|
+
|
15369
15497
|
#
|
15370
15498
|
# Locates the service corresponding to the given path.
|
15371
15499
|
#
|
@@ -15377,6 +15505,12 @@ module OvirtSDK4
|
|
15377
15505
|
if path.nil? || path == ''
|
15378
15506
|
return self
|
15379
15507
|
end
|
15508
|
+
if path == 'permissions'
|
15509
|
+
return permissions_service
|
15510
|
+
end
|
15511
|
+
if path.start_with?('permissions/')
|
15512
|
+
return permissions_service.service(path[12..-1])
|
15513
|
+
end
|
15380
15514
|
raise Error.new("The path \"#{path}\" doesn't correspond to any service")
|
15381
15515
|
end
|
15382
15516
|
|
@@ -20623,6 +20757,7 @@ module OvirtSDK4
|
|
20623
20757
|
# ----
|
20624
20758
|
# <action/>
|
20625
20759
|
# ----
|
20760
|
+
# NOTE: Confirm that the commit operation is finished and the virtual machine is down before running the virtual machine.
|
20626
20761
|
#
|
20627
20762
|
# @param opts [Hash] Additional options.
|
20628
20763
|
#
|
@@ -28885,7 +29020,7 @@ module OvirtSDK4
|
|
28885
29020
|
# <user_options>
|
28886
29021
|
# <property>
|
28887
29022
|
# <name>test</name>
|
28888
|
-
# <value>
|
29023
|
+
# <value>["any","JSON"]</value>
|
28889
29024
|
# </property>
|
28890
29025
|
# </user_options>
|
28891
29026
|
# </user>
|
@@ -28927,6 +29062,15 @@ module OvirtSDK4
|
|
28927
29062
|
@groups_service ||= DomainUserGroupsService.new(self, 'groups')
|
28928
29063
|
end
|
28929
29064
|
|
29065
|
+
#
|
29066
|
+
# Locates the `options` service.
|
29067
|
+
#
|
29068
|
+
# @return [UserOptionsService] A reference to `options` service.
|
29069
|
+
#
|
29070
|
+
def options_service
|
29071
|
+
@options_service ||= UserOptionsService.new(self, 'options')
|
29072
|
+
end
|
29073
|
+
|
28930
29074
|
#
|
28931
29075
|
# Locates the `permissions` service.
|
28932
29076
|
#
|
@@ -28986,6 +29130,12 @@ module OvirtSDK4
|
|
28986
29130
|
if path.start_with?('groups/')
|
28987
29131
|
return groups_service.service(path[7..-1])
|
28988
29132
|
end
|
29133
|
+
if path == 'options'
|
29134
|
+
return options_service
|
29135
|
+
end
|
29136
|
+
if path.start_with?('options/')
|
29137
|
+
return options_service.service(path[8..-1])
|
29138
|
+
end
|
28989
29139
|
if path == 'permissions'
|
28990
29140
|
return permissions_service
|
28991
29141
|
end
|
@@ -29015,6 +29165,273 @@ module OvirtSDK4
|
|
29015
29165
|
|
29016
29166
|
end
|
29017
29167
|
|
29168
|
+
class UserOptionService < Service
|
29169
|
+
|
29170
|
+
GET = [
|
29171
|
+
].freeze
|
29172
|
+
|
29173
|
+
private_constant :GET
|
29174
|
+
|
29175
|
+
#
|
29176
|
+
# Returns a user profile property of type JSON.
|
29177
|
+
#
|
29178
|
+
# Example request(for user with identifier `123` and option with identifier `456`):
|
29179
|
+
#
|
29180
|
+
# [source]
|
29181
|
+
# ----
|
29182
|
+
# GET /ovirt-engine/api/users/123/options/456
|
29183
|
+
# ----
|
29184
|
+
#
|
29185
|
+
# The result will be the following XML document:
|
29186
|
+
#
|
29187
|
+
# [source,xml]
|
29188
|
+
# ----
|
29189
|
+
# <user_option href="/ovirt-engine/api/users/123/options/456" id="456">
|
29190
|
+
# <name>SomeName</name>
|
29191
|
+
# <content>["any", "JSON"]</content>
|
29192
|
+
# <user href="/ovirt-engine/api/users/123" id="123"/>
|
29193
|
+
# </user_option>
|
29194
|
+
# ----
|
29195
|
+
#
|
29196
|
+
# @param opts [Hash] Additional options.
|
29197
|
+
#
|
29198
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29199
|
+
#
|
29200
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
29201
|
+
#
|
29202
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
29203
|
+
# given then the timeout set globally for the connection will be used.
|
29204
|
+
#
|
29205
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
29206
|
+
#
|
29207
|
+
# @return [UserOption]
|
29208
|
+
#
|
29209
|
+
def get(opts = {})
|
29210
|
+
internal_get(GET, opts)
|
29211
|
+
end
|
29212
|
+
|
29213
|
+
REMOVE = [
|
29214
|
+
].freeze
|
29215
|
+
|
29216
|
+
private_constant :REMOVE
|
29217
|
+
|
29218
|
+
#
|
29219
|
+
# Deletes an existing property of type JSON.
|
29220
|
+
#
|
29221
|
+
# Example request(for user with identifier `123` and option with identifier `456`):
|
29222
|
+
#
|
29223
|
+
# [source]
|
29224
|
+
# ----
|
29225
|
+
# DELETE /ovirt-engine/api/users/123/options/456
|
29226
|
+
# ----
|
29227
|
+
#
|
29228
|
+
# @param opts [Hash] Additional options.
|
29229
|
+
#
|
29230
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29231
|
+
#
|
29232
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
29233
|
+
#
|
29234
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
29235
|
+
# given then the timeout set globally for the connection will be used.
|
29236
|
+
#
|
29237
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
29238
|
+
#
|
29239
|
+
def remove(opts = {})
|
29240
|
+
internal_remove(REMOVE, opts)
|
29241
|
+
end
|
29242
|
+
|
29243
|
+
UPDATE = [
|
29244
|
+
].freeze
|
29245
|
+
|
29246
|
+
private_constant :UPDATE
|
29247
|
+
|
29248
|
+
#
|
29249
|
+
# Replaces an existing property of type JSON with a new one.
|
29250
|
+
#
|
29251
|
+
# Example request(for user with identifier `123` and option with identifier `456`):
|
29252
|
+
#
|
29253
|
+
# [source]
|
29254
|
+
# ----
|
29255
|
+
# PUT /ovirt-engine/api/users/123/options/456
|
29256
|
+
# ----
|
29257
|
+
#
|
29258
|
+
# Payload:
|
29259
|
+
#
|
29260
|
+
# [source,xml]
|
29261
|
+
# ----
|
29262
|
+
# <user_option>
|
29263
|
+
# <name>SomeName</name>
|
29264
|
+
# <content>{"new" : "JSON"}</content>
|
29265
|
+
# </user_option>
|
29266
|
+
# ----
|
29267
|
+
#
|
29268
|
+
# The result will be the following XML document:
|
29269
|
+
#
|
29270
|
+
# [source,xml]
|
29271
|
+
# ----
|
29272
|
+
# <user_option href="/ovirt-engine/api/users/123/options/789" id="789">
|
29273
|
+
# <name>SomeName</name>
|
29274
|
+
# <content>{"new" : "JSON"}</content>
|
29275
|
+
# <user href="/ovirt-engine/api/users/123" id="123"/>
|
29276
|
+
# </user_option>
|
29277
|
+
# ----
|
29278
|
+
#
|
29279
|
+
# @param option [UserOption] The `option` to update.
|
29280
|
+
# @param opts [Hash] Additional options.
|
29281
|
+
#
|
29282
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29283
|
+
#
|
29284
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
29285
|
+
#
|
29286
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
29287
|
+
# given then the timeout set globally for the connection will be used.
|
29288
|
+
#
|
29289
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
29290
|
+
#
|
29291
|
+
# @return [UserOption]
|
29292
|
+
#
|
29293
|
+
def update(option, opts = {})
|
29294
|
+
internal_update(option, UserOption, UPDATE, opts)
|
29295
|
+
end
|
29296
|
+
|
29297
|
+
#
|
29298
|
+
# Locates the service corresponding to the given path.
|
29299
|
+
#
|
29300
|
+
# @param path [String] The path of the service.
|
29301
|
+
#
|
29302
|
+
# @return [Service] A reference to the service.
|
29303
|
+
#
|
29304
|
+
def service(path)
|
29305
|
+
if path.nil? || path == ''
|
29306
|
+
return self
|
29307
|
+
end
|
29308
|
+
raise Error.new("The path \"#{path}\" doesn't correspond to any service")
|
29309
|
+
end
|
29310
|
+
|
29311
|
+
end
|
29312
|
+
|
29313
|
+
class UserOptionsService < Service
|
29314
|
+
|
29315
|
+
ADD = [
|
29316
|
+
].freeze
|
29317
|
+
|
29318
|
+
private_constant :ADD
|
29319
|
+
|
29320
|
+
#
|
29321
|
+
# Adds a new user profile property of type JSON.
|
29322
|
+
#
|
29323
|
+
# Example request(for user with identifier `123`):
|
29324
|
+
#
|
29325
|
+
# [source]
|
29326
|
+
# ----
|
29327
|
+
# POST /ovirt-engine/api/users/123/options
|
29328
|
+
# ----
|
29329
|
+
#
|
29330
|
+
# Payload:
|
29331
|
+
#
|
29332
|
+
# [source,xml]
|
29333
|
+
# ----
|
29334
|
+
# <user_option>
|
29335
|
+
# <name>SomeName</name>
|
29336
|
+
# <content>["any", "JSON"]</content>
|
29337
|
+
# </user_option>
|
29338
|
+
# ----
|
29339
|
+
#
|
29340
|
+
# @param option [UserOption] The `option` to add.
|
29341
|
+
#
|
29342
|
+
# @param opts [Hash] Additional options.
|
29343
|
+
#
|
29344
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29345
|
+
#
|
29346
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
29347
|
+
#
|
29348
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
29349
|
+
# given then the timeout set globally for the connection will be used.
|
29350
|
+
#
|
29351
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
29352
|
+
#
|
29353
|
+
# @return [UserOption]
|
29354
|
+
#
|
29355
|
+
def add(option, opts = {})
|
29356
|
+
internal_add(option, UserOption, ADD, opts)
|
29357
|
+
end
|
29358
|
+
|
29359
|
+
LIST = [
|
29360
|
+
].freeze
|
29361
|
+
|
29362
|
+
private_constant :LIST
|
29363
|
+
|
29364
|
+
#
|
29365
|
+
# Returns a list of user profile properties of type JSON.
|
29366
|
+
#
|
29367
|
+
# Example request(for user with identifier `123`):
|
29368
|
+
#
|
29369
|
+
# [source]
|
29370
|
+
# ----
|
29371
|
+
# GET /ovirt-engine/api/users/123/options
|
29372
|
+
# ----
|
29373
|
+
#
|
29374
|
+
# The result will be the following XML document:
|
29375
|
+
#
|
29376
|
+
# [source,xml]
|
29377
|
+
# ----
|
29378
|
+
# <user_options>
|
29379
|
+
# <user_option href="/ovirt-engine/api/users/123/options/456" id="456">
|
29380
|
+
# <name>SomeName</name>
|
29381
|
+
# <content>["any", "JSON"]</content>
|
29382
|
+
# <user href="/ovirt-engine/api/users/123" id="123"/>
|
29383
|
+
# </user_option>
|
29384
|
+
# </user_options>
|
29385
|
+
# ----
|
29386
|
+
#
|
29387
|
+
# @param opts [Hash] Additional options.
|
29388
|
+
#
|
29389
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29390
|
+
#
|
29391
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
29392
|
+
#
|
29393
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
29394
|
+
# given then the timeout set globally for the connection will be used.
|
29395
|
+
#
|
29396
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
29397
|
+
#
|
29398
|
+
# @return [Array<UserOption>]
|
29399
|
+
#
|
29400
|
+
def list(opts = {})
|
29401
|
+
internal_get(LIST, opts)
|
29402
|
+
end
|
29403
|
+
|
29404
|
+
#
|
29405
|
+
# Locates the `option` service.
|
29406
|
+
#
|
29407
|
+
# @param id [String] The identifier of the `option`.
|
29408
|
+
#
|
29409
|
+
# @return [UserOptionService] A reference to the `option` service.
|
29410
|
+
#
|
29411
|
+
def option_service(id)
|
29412
|
+
UserOptionService.new(self, id)
|
29413
|
+
end
|
29414
|
+
|
29415
|
+
#
|
29416
|
+
# Locates the service corresponding to the given path.
|
29417
|
+
#
|
29418
|
+
# @param path [String] The path of the service.
|
29419
|
+
#
|
29420
|
+
# @return [Service] A reference to the service.
|
29421
|
+
#
|
29422
|
+
def service(path)
|
29423
|
+
if path.nil? || path == ''
|
29424
|
+
return self
|
29425
|
+
end
|
29426
|
+
index = path.index('/')
|
29427
|
+
if index.nil?
|
29428
|
+
return option_service(path)
|
29429
|
+
end
|
29430
|
+
return option_service(path[0..(index - 1)]).service(path[(index + 1)..-1])
|
29431
|
+
end
|
29432
|
+
|
29433
|
+
end
|
29434
|
+
|
29018
29435
|
class UsersService < Service
|
29019
29436
|
|
29020
29437
|
ADD = [
|
@@ -29351,6 +29768,52 @@ module OvirtSDK4
|
|
29351
29768
|
|
29352
29769
|
class VmService < MeasurableService
|
29353
29770
|
|
29771
|
+
AUTO_PIN_CPU_AND_NUMA_NODES = [
|
29772
|
+
[:async, TrueClass].freeze,
|
29773
|
+
[:optimize_cpu_settings, TrueClass].freeze,
|
29774
|
+
].freeze
|
29775
|
+
|
29776
|
+
private_constant :AUTO_PIN_CPU_AND_NUMA_NODES
|
29777
|
+
|
29778
|
+
#
|
29779
|
+
# Apply an automatic CPU and NUMA configuration on the VM.
|
29780
|
+
#
|
29781
|
+
# An example for a request:
|
29782
|
+
# [source]
|
29783
|
+
# ----
|
29784
|
+
# POST /ovirt-engine/api/vms/123/autopincpuandnumanodes
|
29785
|
+
# ----
|
29786
|
+
#
|
29787
|
+
# With a request body like this:
|
29788
|
+
#
|
29789
|
+
# [source,xml]
|
29790
|
+
# ----
|
29791
|
+
# <action>
|
29792
|
+
# <optimize_cpu_settings>true</optimize_cpu_settings>
|
29793
|
+
# </action>
|
29794
|
+
# ----
|
29795
|
+
#
|
29796
|
+
# @param opts [Hash] Additional options.
|
29797
|
+
#
|
29798
|
+
# @option opts [Boolean] :async Indicates if the detach action should be performed asynchronously.
|
29799
|
+
#
|
29800
|
+
# @option opts [Boolean] :optimize_cpu_settings Specifies how the auto CPU and NUMA configuration is applied.
|
29801
|
+
# If set to true, will adjust the CPU topology to fit the VM pinned host hardware.
|
29802
|
+
# Otherwise, it will use the VM CPU topology.
|
29803
|
+
#
|
29804
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29805
|
+
#
|
29806
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
29807
|
+
#
|
29808
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
29809
|
+
# given then the timeout set globally for the connection will be used.
|
29810
|
+
#
|
29811
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
29812
|
+
#
|
29813
|
+
def auto_pin_cpu_and_numa_nodes(opts = {})
|
29814
|
+
internal_action(:autopincpuandnumanodes, nil, AUTO_PIN_CPU_AND_NUMA_NODES, opts)
|
29815
|
+
end
|
29816
|
+
|
29354
29817
|
CANCEL_MIGRATION = [
|
29355
29818
|
[:async, TrueClass].freeze,
|
29356
29819
|
].freeze
|
@@ -29547,6 +30010,8 @@ module OvirtSDK4
|
|
29547
30010
|
# </action>
|
29548
30011
|
# ----
|
29549
30012
|
#
|
30013
|
+
# NOTE: Confirm that the export operation has completed before attempting any actions on the export domain.
|
30014
|
+
#
|
29550
30015
|
# @param opts [Hash] Additional options.
|
29551
30016
|
#
|
29552
30017
|
# @option opts [Boolean] :async Indicates if the export should be performed asynchronously.
|
@@ -29619,6 +30084,7 @@ module OvirtSDK4
|
|
29619
30084
|
[:filter, TrueClass].freeze,
|
29620
30085
|
[:follow, String].freeze,
|
29621
30086
|
[:next_run, TrueClass].freeze,
|
30087
|
+
[:ovf_as_ova, TrueClass].freeze,
|
29622
30088
|
].freeze
|
29623
30089
|
|
29624
30090
|
private_constant :GET
|
@@ -29671,6 +30137,16 @@ module OvirtSDK4
|
|
29671
30137
|
# GET /vms/{vm:id};next_run=true
|
29672
30138
|
# ----
|
29673
30139
|
#
|
30140
|
+
# @option opts [Boolean] :ovf_as_ova Indicates if the results should expose the OVF as it appears in OVA files of that VM. The OVF document
|
30141
|
+
# describing the virtual machine. This parameter will work only when all_content=True is set.
|
30142
|
+
# The OVF will be presented in `initialization.configuration.data`.
|
30143
|
+
#
|
30144
|
+
# For example:
|
30145
|
+
# [source]
|
30146
|
+
# ----
|
30147
|
+
# GET /vms/{vm:id}?all_content=true&ovf_as_ova=true
|
30148
|
+
# ----
|
30149
|
+
#
|
29674
30150
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29675
30151
|
#
|
29676
30152
|
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
@@ -29919,6 +30395,7 @@ module OvirtSDK4
|
|
29919
30395
|
|
29920
30396
|
REBOOT = [
|
29921
30397
|
[:async, TrueClass].freeze,
|
30398
|
+
[:force, TrueClass].freeze,
|
29922
30399
|
].freeze
|
29923
30400
|
|
29924
30401
|
private_constant :REBOOT
|
@@ -29941,10 +30418,29 @@ module OvirtSDK4
|
|
29941
30418
|
# <action/>
|
29942
30419
|
# ----
|
29943
30420
|
#
|
30421
|
+
# To reboot the VM even if a backup is running for it,
|
30422
|
+
# the action should include the 'force' element.
|
30423
|
+
#
|
30424
|
+
# For example, to force reboot virtual machine `123`:
|
30425
|
+
#
|
30426
|
+
# ----
|
30427
|
+
# POST /ovirt-engine/api/vms/123/reboot
|
30428
|
+
# ----
|
30429
|
+
#
|
30430
|
+
# [source,xml]
|
30431
|
+
# ----
|
30432
|
+
# <action>
|
30433
|
+
# <force>true</force>
|
30434
|
+
# </action>
|
30435
|
+
# ----
|
30436
|
+
#
|
29944
30437
|
# @param opts [Hash] Additional options.
|
29945
30438
|
#
|
29946
30439
|
# @option opts [Boolean] :async Indicates if the reboot should be performed asynchronously.
|
29947
30440
|
#
|
30441
|
+
# @option opts [Boolean] :force Indicates if the VM should be forcibly rebooted even
|
30442
|
+
# if a backup is running for it.
|
30443
|
+
#
|
29948
30444
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
29949
30445
|
#
|
29950
30446
|
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
@@ -30025,6 +30521,7 @@ module OvirtSDK4
|
|
30025
30521
|
|
30026
30522
|
SHUTDOWN = [
|
30027
30523
|
[:async, TrueClass].freeze,
|
30524
|
+
[:force, TrueClass].freeze,
|
30028
30525
|
[:reason, String].freeze,
|
30029
30526
|
].freeze
|
30030
30527
|
|
@@ -30048,10 +30545,29 @@ module OvirtSDK4
|
|
30048
30545
|
# <action/>
|
30049
30546
|
# ----
|
30050
30547
|
#
|
30548
|
+
# To shutdown the VM even if a backup is running for it,
|
30549
|
+
# the action should include the 'force' element.
|
30550
|
+
#
|
30551
|
+
# For example, to force shutdown virtual machine `123`:
|
30552
|
+
#
|
30553
|
+
# ----
|
30554
|
+
# POST /ovirt-engine/api/vms/123/shutdown
|
30555
|
+
# ----
|
30556
|
+
#
|
30557
|
+
# [source,xml]
|
30558
|
+
# ----
|
30559
|
+
# <action>
|
30560
|
+
# <force>true</force>
|
30561
|
+
# </action>
|
30562
|
+
# ----
|
30563
|
+
#
|
30051
30564
|
# @param opts [Hash] Additional options.
|
30052
30565
|
#
|
30053
30566
|
# @option opts [Boolean] :async Indicates if the shutdown should be performed asynchronously.
|
30054
30567
|
#
|
30568
|
+
# @option opts [Boolean] :force Indicates if the VM should be forcibly shutdown even
|
30569
|
+
# if a backup is running for it.
|
30570
|
+
#
|
30055
30571
|
# @option opts [String] :reason The reason the virtual machine was stopped.
|
30056
30572
|
# Optionally set by user when shutting down the virtual machine.
|
30057
30573
|
#
|
@@ -30168,6 +30684,7 @@ module OvirtSDK4
|
|
30168
30684
|
|
30169
30685
|
STOP = [
|
30170
30686
|
[:async, TrueClass].freeze,
|
30687
|
+
[:force, TrueClass].freeze,
|
30171
30688
|
[:reason, String].freeze,
|
30172
30689
|
].freeze
|
30173
30690
|
|
@@ -30191,10 +30708,29 @@ module OvirtSDK4
|
|
30191
30708
|
# <action/>
|
30192
30709
|
# ----
|
30193
30710
|
#
|
30711
|
+
# To stop the VM even if a backup is running for it,
|
30712
|
+
# the action should include the 'force' element.
|
30713
|
+
#
|
30714
|
+
# For example, to force stop virtual machine `123`:
|
30715
|
+
#
|
30716
|
+
# ----
|
30717
|
+
# POST /ovirt-engine/api/vms/123/stop
|
30718
|
+
# ----
|
30719
|
+
#
|
30720
|
+
# [source,xml]
|
30721
|
+
# ----
|
30722
|
+
# <action>
|
30723
|
+
# <force>true</force>
|
30724
|
+
# </action>
|
30725
|
+
# ----
|
30726
|
+
#
|
30194
30727
|
# @param opts [Hash] Additional options.
|
30195
30728
|
#
|
30196
30729
|
# @option opts [Boolean] :async Indicates if the stop action should be performed asynchronously.
|
30197
30730
|
#
|
30731
|
+
# @option opts [Boolean] :force Indicates if the VM should be forcibly stop even
|
30732
|
+
# if a backup is running for it.
|
30733
|
+
#
|
30198
30734
|
# @option opts [String] :reason The reason the virtual machine was stopped.
|
30199
30735
|
# Optionally set by user when shutting down the virtual machine.
|
30200
30736
|
#
|
@@ -30548,6 +31084,15 @@ module OvirtSDK4
|
|
30548
31084
|
@cdroms_service ||= VmCdromsService.new(self, 'cdroms')
|
30549
31085
|
end
|
30550
31086
|
|
31087
|
+
#
|
31088
|
+
# List of checkpoints of this virtual machine.
|
31089
|
+
#
|
31090
|
+
# @return [VmCheckpointsService] A reference to `checkpoints` service.
|
31091
|
+
#
|
31092
|
+
def checkpoints_service
|
31093
|
+
@checkpoints_service ||= VmCheckpointsService.new(self, 'checkpoints')
|
31094
|
+
end
|
31095
|
+
|
30551
31096
|
#
|
30552
31097
|
# List of disks attached to this virtual machine.
|
30553
31098
|
#
|
@@ -30701,6 +31246,12 @@ module OvirtSDK4
|
|
30701
31246
|
if path.start_with?('cdroms/')
|
30702
31247
|
return cdroms_service.service(path[7..-1])
|
30703
31248
|
end
|
31249
|
+
if path == 'checkpoints'
|
31250
|
+
return checkpoints_service
|
31251
|
+
end
|
31252
|
+
if path.start_with?('checkpoints/')
|
31253
|
+
return checkpoints_service.service(path[12..-1])
|
31254
|
+
end
|
30704
31255
|
if path == 'diskattachments'
|
30705
31256
|
return disk_attachments_service
|
30706
31257
|
end
|
@@ -31106,6 +31657,7 @@ module OvirtSDK4
|
|
31106
31657
|
class VmBackupsService < Service
|
31107
31658
|
|
31108
31659
|
ADD = [
|
31660
|
+
[:require_consistency, TrueClass].freeze,
|
31109
31661
|
].freeze
|
31110
31662
|
|
31111
31663
|
private_constant :ADD
|
@@ -31125,7 +31677,6 @@ module OvirtSDK4
|
|
31125
31677
|
#
|
31126
31678
|
# [source,xml]
|
31127
31679
|
# ----
|
31128
|
-
# POST /ovirt-engine/api/vms/123/backups
|
31129
31680
|
# <backup>
|
31130
31681
|
# <from_checkpoint_id>previous-checkpoint-uuid</from_checkpoint_id>
|
31131
31682
|
# <disks>
|
@@ -31156,6 +31707,19 @@ module OvirtSDK4
|
|
31156
31707
|
#
|
31157
31708
|
# @param opts [Hash] Additional options.
|
31158
31709
|
#
|
31710
|
+
# @option opts [Boolean] :require_consistency Indicates if the backup will fail if VM failed to freeze or not.
|
31711
|
+
#
|
31712
|
+
# If requireConsistency=True VM backup will fail in case of a
|
31713
|
+
# failure to freeze the VM.
|
31714
|
+
#
|
31715
|
+
# The REST API call should look like this:
|
31716
|
+
#
|
31717
|
+
# ....
|
31718
|
+
# POST /ovirt-engine/api/vms/123/backups?require_consistency=true
|
31719
|
+
# ....
|
31720
|
+
#
|
31721
|
+
# The default value of the requireConsistency flag is `false`.
|
31722
|
+
#
|
31159
31723
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
31160
31724
|
#
|
31161
31725
|
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
@@ -31483,6 +32047,273 @@ module OvirtSDK4
|
|
31483
32047
|
|
31484
32048
|
end
|
31485
32049
|
|
32050
|
+
class VmCheckpointService < Service
|
32051
|
+
|
32052
|
+
GET = [
|
32053
|
+
[:follow, String].freeze,
|
32054
|
+
].freeze
|
32055
|
+
|
32056
|
+
private_constant :GET
|
32057
|
+
|
32058
|
+
#
|
32059
|
+
# Returns information about the virtual machine checkpoint.
|
32060
|
+
#
|
32061
|
+
# @param opts [Hash] Additional options.
|
32062
|
+
#
|
32063
|
+
# @option opts [String] :follow Indicates which inner links should be _followed_. The objects referenced by these links will be fetched as part
|
32064
|
+
# of the current request. See <<documents/003_common_concepts/follow, here>> for details.
|
32065
|
+
#
|
32066
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
32067
|
+
#
|
32068
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
32069
|
+
#
|
32070
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
32071
|
+
# given then the timeout set globally for the connection will be used.
|
32072
|
+
#
|
32073
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
32074
|
+
#
|
32075
|
+
# @return [Checkpoint]
|
32076
|
+
#
|
32077
|
+
def get(opts = {})
|
32078
|
+
internal_get(GET, opts)
|
32079
|
+
end
|
32080
|
+
|
32081
|
+
REMOVE = [
|
32082
|
+
[:async, TrueClass].freeze,
|
32083
|
+
].freeze
|
32084
|
+
|
32085
|
+
private_constant :REMOVE
|
32086
|
+
|
32087
|
+
#
|
32088
|
+
# Remove the virtual machine checkpoint entity.
|
32089
|
+
#
|
32090
|
+
# Remove the checkpoint from libvirt and the database.
|
32091
|
+
#
|
32092
|
+
# @param opts [Hash] Additional options.
|
32093
|
+
#
|
32094
|
+
# @option opts [Boolean] :async Indicates if the remove should be performed asynchronously.
|
32095
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
32096
|
+
#
|
32097
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
32098
|
+
#
|
32099
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
32100
|
+
# given then the timeout set globally for the connection will be used.
|
32101
|
+
#
|
32102
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
32103
|
+
#
|
32104
|
+
def remove(opts = {})
|
32105
|
+
internal_remove(REMOVE, opts)
|
32106
|
+
end
|
32107
|
+
|
32108
|
+
#
|
32109
|
+
# A reference to the service that lists the disks in checkpoint.
|
32110
|
+
#
|
32111
|
+
# @return [VmCheckpointDisksService] A reference to `disks` service.
|
32112
|
+
#
|
32113
|
+
def disks_service
|
32114
|
+
@disks_service ||= VmCheckpointDisksService.new(self, 'disks')
|
32115
|
+
end
|
32116
|
+
|
32117
|
+
#
|
32118
|
+
# Locates the service corresponding to the given path.
|
32119
|
+
#
|
32120
|
+
# @param path [String] The path of the service.
|
32121
|
+
#
|
32122
|
+
# @return [Service] A reference to the service.
|
32123
|
+
#
|
32124
|
+
def service(path)
|
32125
|
+
if path.nil? || path == ''
|
32126
|
+
return self
|
32127
|
+
end
|
32128
|
+
if path == 'disks'
|
32129
|
+
return disks_service
|
32130
|
+
end
|
32131
|
+
if path.start_with?('disks/')
|
32132
|
+
return disks_service.service(path[6..-1])
|
32133
|
+
end
|
32134
|
+
raise Error.new("The path \"#{path}\" doesn't correspond to any service")
|
32135
|
+
end
|
32136
|
+
|
32137
|
+
end
|
32138
|
+
|
32139
|
+
class VmCheckpointDiskService < Service
|
32140
|
+
|
32141
|
+
GET = [
|
32142
|
+
[:follow, String].freeze,
|
32143
|
+
].freeze
|
32144
|
+
|
32145
|
+
private_constant :GET
|
32146
|
+
|
32147
|
+
#
|
32148
|
+
# Retrieves the description of the disk.
|
32149
|
+
#
|
32150
|
+
# @param opts [Hash] Additional options.
|
32151
|
+
#
|
32152
|
+
# @option opts [String] :follow Indicates which inner links should be _followed_. The objects referenced by these links will be fetched as part
|
32153
|
+
# of the current request. See <<documents/003_common_concepts/follow, here>> for details.
|
32154
|
+
#
|
32155
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
32156
|
+
#
|
32157
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
32158
|
+
#
|
32159
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
32160
|
+
# given then the timeout set globally for the connection will be used.
|
32161
|
+
#
|
32162
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
32163
|
+
#
|
32164
|
+
# @return [Disk]
|
32165
|
+
#
|
32166
|
+
def get(opts = {})
|
32167
|
+
internal_get(GET, opts)
|
32168
|
+
end
|
32169
|
+
|
32170
|
+
#
|
32171
|
+
# Locates the service corresponding to the given path.
|
32172
|
+
#
|
32173
|
+
# @param path [String] The path of the service.
|
32174
|
+
#
|
32175
|
+
# @return [Service] A reference to the service.
|
32176
|
+
#
|
32177
|
+
def service(path)
|
32178
|
+
if path.nil? || path == ''
|
32179
|
+
return self
|
32180
|
+
end
|
32181
|
+
raise Error.new("The path \"#{path}\" doesn't correspond to any service")
|
32182
|
+
end
|
32183
|
+
|
32184
|
+
end
|
32185
|
+
|
32186
|
+
class VmCheckpointDisksService < Service
|
32187
|
+
|
32188
|
+
LIST = [
|
32189
|
+
[:follow, String].freeze,
|
32190
|
+
[:max, Integer].freeze,
|
32191
|
+
].freeze
|
32192
|
+
|
32193
|
+
private_constant :LIST
|
32194
|
+
|
32195
|
+
#
|
32196
|
+
# Returns the list of disks in checkpoint.
|
32197
|
+
#
|
32198
|
+
# @param opts [Hash] Additional options.
|
32199
|
+
#
|
32200
|
+
# @option opts [String] :follow Indicates which inner links should be _followed_. The objects referenced by these links will be fetched as part
|
32201
|
+
# of the current request. See <<documents/003_common_concepts/follow, here>> for details.
|
32202
|
+
#
|
32203
|
+
# @option opts [Integer] :max Sets the maximum number of disks to return. If not specified, all the disks are returned.
|
32204
|
+
#
|
32205
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
32206
|
+
#
|
32207
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
32208
|
+
#
|
32209
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
32210
|
+
# given then the timeout set globally for the connection will be used.
|
32211
|
+
#
|
32212
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
32213
|
+
#
|
32214
|
+
# @return [Array<Disk>]
|
32215
|
+
#
|
32216
|
+
def list(opts = {})
|
32217
|
+
internal_get(LIST, opts)
|
32218
|
+
end
|
32219
|
+
|
32220
|
+
#
|
32221
|
+
# A reference to the service that manages a specific disk.
|
32222
|
+
#
|
32223
|
+
# @param id [String] The identifier of the `disk`.
|
32224
|
+
#
|
32225
|
+
# @return [VmCheckpointDiskService] A reference to the `disk` service.
|
32226
|
+
#
|
32227
|
+
def disk_service(id)
|
32228
|
+
VmCheckpointDiskService.new(self, id)
|
32229
|
+
end
|
32230
|
+
|
32231
|
+
#
|
32232
|
+
# Locates the service corresponding to the given path.
|
32233
|
+
#
|
32234
|
+
# @param path [String] The path of the service.
|
32235
|
+
#
|
32236
|
+
# @return [Service] A reference to the service.
|
32237
|
+
#
|
32238
|
+
def service(path)
|
32239
|
+
if path.nil? || path == ''
|
32240
|
+
return self
|
32241
|
+
end
|
32242
|
+
index = path.index('/')
|
32243
|
+
if index.nil?
|
32244
|
+
return disk_service(path)
|
32245
|
+
end
|
32246
|
+
return disk_service(path[0..(index - 1)]).service(path[(index + 1)..-1])
|
32247
|
+
end
|
32248
|
+
|
32249
|
+
end
|
32250
|
+
|
32251
|
+
class VmCheckpointsService < Service
|
32252
|
+
|
32253
|
+
LIST = [
|
32254
|
+
[:follow, String].freeze,
|
32255
|
+
[:max, Integer].freeze,
|
32256
|
+
].freeze
|
32257
|
+
|
32258
|
+
private_constant :LIST
|
32259
|
+
|
32260
|
+
#
|
32261
|
+
# The list of virtual machine checkpoints.
|
32262
|
+
#
|
32263
|
+
# @param opts [Hash] Additional options.
|
32264
|
+
#
|
32265
|
+
# @option opts [String] :follow Indicates which inner links should be _followed_. The objects referenced by these links will be fetched as part
|
32266
|
+
# of the current request. See <<documents/003_common_concepts/follow, here>> for details.
|
32267
|
+
#
|
32268
|
+
# @option opts [Integer] :max Sets the maximum number of virtual machine checkpoints to return.
|
32269
|
+
# If not specified, all the virtual machine checkpoints are returned.
|
32270
|
+
#
|
32271
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
32272
|
+
#
|
32273
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
32274
|
+
#
|
32275
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
32276
|
+
# given then the timeout set globally for the connection will be used.
|
32277
|
+
#
|
32278
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
32279
|
+
#
|
32280
|
+
# @return [Array<Checkpoint>]
|
32281
|
+
#
|
32282
|
+
def list(opts = {})
|
32283
|
+
internal_get(LIST, opts)
|
32284
|
+
end
|
32285
|
+
|
32286
|
+
#
|
32287
|
+
# Returns a reference to the service that manages a specific VM checkpoint.
|
32288
|
+
#
|
32289
|
+
# @param id [String] The identifier of the `checkpoint`.
|
32290
|
+
#
|
32291
|
+
# @return [VmCheckpointService] A reference to the `checkpoint` service.
|
32292
|
+
#
|
32293
|
+
def checkpoint_service(id)
|
32294
|
+
VmCheckpointService.new(self, id)
|
32295
|
+
end
|
32296
|
+
|
32297
|
+
#
|
32298
|
+
# Locates the service corresponding to the given path.
|
32299
|
+
#
|
32300
|
+
# @param path [String] The path of the service.
|
32301
|
+
#
|
32302
|
+
# @return [Service] A reference to the service.
|
32303
|
+
#
|
32304
|
+
def service(path)
|
32305
|
+
if path.nil? || path == ''
|
32306
|
+
return self
|
32307
|
+
end
|
32308
|
+
index = path.index('/')
|
32309
|
+
if index.nil?
|
32310
|
+
return checkpoint_service(path)
|
32311
|
+
end
|
32312
|
+
return checkpoint_service(path[0..(index - 1)]).service(path[(index + 1)..-1])
|
32313
|
+
end
|
32314
|
+
|
32315
|
+
end
|
32316
|
+
|
31486
32317
|
class VmDiskService < MeasurableService
|
31487
32318
|
|
31488
32319
|
ACTIVATE = [
|
@@ -33027,6 +33858,7 @@ module OvirtSDK4
|
|
33027
33858
|
# </cpu>
|
33028
33859
|
# <index>0</index>
|
33029
33860
|
# <memory>1024</memory>
|
33861
|
+
# <numa_tune_mode>strict</numa_tune_mode>
|
33030
33862
|
# </vm_numa_node>
|
33031
33863
|
# ----
|
33032
33864
|
#
|
@@ -34516,6 +35348,7 @@ module OvirtSDK4
|
|
34516
35348
|
[:filter, TrueClass].freeze,
|
34517
35349
|
[:follow, String].freeze,
|
34518
35350
|
[:max, Integer].freeze,
|
35351
|
+
[:ovf_as_ova, TrueClass].freeze,
|
34519
35352
|
[:search, String].freeze,
|
34520
35353
|
].freeze
|
34521
35354
|
|
@@ -34559,6 +35392,16 @@ module OvirtSDK4
|
|
34559
35392
|
#
|
34560
35393
|
# @option opts [Integer] :max The maximum number of results to return.
|
34561
35394
|
#
|
35395
|
+
# @option opts [Boolean] :ovf_as_ova Indicates if the results should expose the OVF as it appears in OVA files of that VM. The OVF document
|
35396
|
+
# describing the virtual machine. This parameter will work only when all_content=True is set.
|
35397
|
+
# The OVF will be presented in `initialization.configuration.data`.
|
35398
|
+
#
|
35399
|
+
# For example:
|
35400
|
+
# [source]
|
35401
|
+
# ----
|
35402
|
+
# GET /vms?all_content=true&ovf_as_ova=true
|
35403
|
+
# ----
|
35404
|
+
#
|
34562
35405
|
# @option opts [String] :search A query string used to restrict the returned virtual machines.
|
34563
35406
|
#
|
34564
35407
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
@@ -35785,6 +36628,26 @@ module OvirtSDK4
|
|
35785
36628
|
internal_update(disk, Disk, UPDATE, opts)
|
35786
36629
|
end
|
35787
36630
|
|
36631
|
+
#
|
36632
|
+
# Reference to the service that manages the DiskSnapshots.
|
36633
|
+
#
|
36634
|
+
# For example, to list all disk snapshots under the disks resource '123':
|
36635
|
+
#
|
36636
|
+
# ....
|
36637
|
+
# GET /ovirt-engine/api/disks/123/disksnapshots
|
36638
|
+
# ....
|
36639
|
+
#
|
36640
|
+
# For example, to retrieve a specific disk snapshot '789' under the disk resource '123':
|
36641
|
+
# ....
|
36642
|
+
# GET /ovirt-engine/api/disks/123/disksnapshots/789
|
36643
|
+
# ....
|
36644
|
+
#
|
36645
|
+
# @return [DiskSnapshotsService] A reference to `disk_snapshots` service.
|
36646
|
+
#
|
36647
|
+
def disk_snapshots_service
|
36648
|
+
@disk_snapshots_service ||= DiskSnapshotsService.new(self, 'disksnapshots')
|
36649
|
+
end
|
36650
|
+
|
35788
36651
|
#
|
35789
36652
|
# Reference to the service that manages the permissions assigned to the disk.
|
35790
36653
|
#
|
@@ -35814,6 +36677,12 @@ module OvirtSDK4
|
|
35814
36677
|
if path.nil? || path == ''
|
35815
36678
|
return self
|
35816
36679
|
end
|
36680
|
+
if path == 'disksnapshots'
|
36681
|
+
return disk_snapshots_service
|
36682
|
+
end
|
36683
|
+
if path.start_with?('disksnapshots/')
|
36684
|
+
return disk_snapshots_service.service(path[14..-1])
|
36685
|
+
end
|
35817
36686
|
if path == 'permissions'
|
35818
36687
|
return permissions_service
|
35819
36688
|
end
|
@@ -36928,6 +37797,7 @@ module OvirtSDK4
|
|
36928
37797
|
[:async, TrueClass].freeze,
|
36929
37798
|
[:cluster, Cluster].freeze,
|
36930
37799
|
[:host, Host].freeze,
|
37800
|
+
[:reboot, TrueClass].freeze,
|
36931
37801
|
].freeze
|
36932
37802
|
|
36933
37803
|
private_constant :APPROVE
|
@@ -36949,6 +37819,8 @@ module OvirtSDK4
|
|
36949
37819
|
#
|
36950
37820
|
# @option opts [Host] :host The host to approve.
|
36951
37821
|
#
|
37822
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
37823
|
+
#
|
36952
37824
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
36953
37825
|
#
|
36954
37826
|
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
@@ -37025,6 +37897,9 @@ module OvirtSDK4
|
|
37025
37897
|
#
|
37026
37898
|
# Copy the network configuration of the specified host to current host.
|
37027
37899
|
#
|
37900
|
+
# IMPORTANT: Any network attachments that are not present on the source host will be erased from the target host
|
37901
|
+
# by the copy operation.
|
37902
|
+
#
|
37028
37903
|
# To copy networks from another host, send a request like this:
|
37029
37904
|
#
|
37030
37905
|
# [source]
|
@@ -37037,7 +37912,7 @@ module OvirtSDK4
|
|
37037
37912
|
# [source,xml]
|
37038
37913
|
# ----
|
37039
37914
|
# <action>
|
37040
|
-
# <
|
37915
|
+
# <source_host id="456"/>
|
37041
37916
|
# </action>
|
37042
37917
|
# ----
|
37043
37918
|
#
|
@@ -37093,6 +37968,71 @@ module OvirtSDK4
|
|
37093
37968
|
internal_action(:deactivate, nil, DEACTIVATE, opts)
|
37094
37969
|
end
|
37095
37970
|
|
37971
|
+
DISCOVER_ISCSI = [
|
37972
|
+
[:async, TrueClass].freeze,
|
37973
|
+
[:iscsi, IscsiDetails].freeze,
|
37974
|
+
].freeze
|
37975
|
+
|
37976
|
+
private_constant :DISCOVER_ISCSI
|
37977
|
+
|
37978
|
+
#
|
37979
|
+
# Discovers iSCSI targets on the host, using the initiator details.
|
37980
|
+
# Returns a list of IscsiDetails objects containing the discovered data.
|
37981
|
+
#
|
37982
|
+
# For example, to discover iSCSI targets available in `myiscsi.example.com`,
|
37983
|
+
# from host `123`, send a request like this:
|
37984
|
+
#
|
37985
|
+
# [source]
|
37986
|
+
# ----
|
37987
|
+
# POST /ovirt-engine/api/hosts/123/discoveriscsi
|
37988
|
+
# ----
|
37989
|
+
#
|
37990
|
+
# With a request body like this:
|
37991
|
+
#
|
37992
|
+
# [source,xml]
|
37993
|
+
# ----
|
37994
|
+
# <action>
|
37995
|
+
# <iscsi>
|
37996
|
+
# <address>myiscsi.example.com</address>
|
37997
|
+
# </iscsi>
|
37998
|
+
# </action>
|
37999
|
+
# ----
|
38000
|
+
#
|
38001
|
+
# The result will be like this:
|
38002
|
+
#
|
38003
|
+
# [source,xml]
|
38004
|
+
# ----
|
38005
|
+
# <discovered_targets>
|
38006
|
+
# <iscsi_details>
|
38007
|
+
# <address>10.35.1.72</address>
|
38008
|
+
# <port>3260</port>
|
38009
|
+
# <portal>10.35.1.72:3260,1</portal>
|
38010
|
+
# <target>iqn.2015-08.com.tgt:444</target>
|
38011
|
+
# </iscsi_details>
|
38012
|
+
# </discovered_targets>
|
38013
|
+
# ----
|
38014
|
+
#
|
38015
|
+
# @param opts [Hash] Additional options.
|
38016
|
+
#
|
38017
|
+
# @option opts [Boolean] :async Indicates if the discovery should be performed asynchronously.
|
38018
|
+
#
|
38019
|
+
# @option opts [Array<IscsiDetails>] :discovered_targets The discovered targets including all connection information.
|
38020
|
+
#
|
38021
|
+
# @option opts [IscsiDetails] :iscsi The target iSCSI device.
|
38022
|
+
#
|
38023
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
38024
|
+
#
|
38025
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
38026
|
+
#
|
38027
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
38028
|
+
# given then the timeout set globally for the connection will be used.
|
38029
|
+
#
|
38030
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
38031
|
+
#
|
38032
|
+
def discover_iscsi(opts = {})
|
38033
|
+
internal_action(:discoveriscsi, :discovered_targets, DISCOVER_ISCSI, opts)
|
38034
|
+
end
|
38035
|
+
|
37096
38036
|
ENROLL_CERTIFICATE = [
|
37097
38037
|
[:async, TrueClass].freeze,
|
37098
38038
|
].freeze
|
@@ -37278,6 +38218,7 @@ module OvirtSDK4
|
|
37278
38218
|
[:deploy_hosted_engine, TrueClass].freeze,
|
37279
38219
|
[:host, Host].freeze,
|
37280
38220
|
[:image, String].freeze,
|
38221
|
+
[:reboot, TrueClass].freeze,
|
37281
38222
|
[:root_password, String].freeze,
|
37282
38223
|
[:ssh, Ssh].freeze,
|
37283
38224
|
[:undeploy_hosted_engine, TrueClass].freeze,
|
@@ -37329,9 +38270,10 @@ module OvirtSDK4
|
|
37329
38270
|
# --data '
|
37330
38271
|
# {
|
37331
38272
|
# "root_password": "myrootpassword"
|
38273
|
+
# "deploy_hosted_engine" : "true"
|
37332
38274
|
# }
|
37333
38275
|
# ' \
|
37334
|
-
# "https://engine.example.com/ovirt-engine/api/hosts/123
|
38276
|
+
# "https://engine.example.com/ovirt-engine/api/hosts/123"
|
37335
38277
|
# ----
|
37336
38278
|
#
|
37337
38279
|
# IMPORTANT: Since version 4.1.2 of the engine, when a host is reinstalled we override the host firewall
|
@@ -37354,6 +38296,8 @@ module OvirtSDK4
|
|
37354
38296
|
#
|
37355
38297
|
# @option opts [String] :image When installing {hypervisor-name}, an ISO image file is required.
|
37356
38298
|
#
|
38299
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
38300
|
+
#
|
37357
38301
|
# @option opts [String] :root_password The password of the `root` user used to connect to the host via SSH.
|
37358
38302
|
#
|
37359
38303
|
# @option opts [Ssh] :ssh The SSH details used to connect to the host.
|
@@ -37382,8 +38326,12 @@ module OvirtSDK4
|
|
37382
38326
|
|
37383
38327
|
private_constant :ISCSI_DISCOVER
|
37384
38328
|
|
38329
|
+
#
|
38330
|
+
# This method has been deprecated since Engine version 4.4.6.
|
38331
|
+
# DiscoverIscsi should be used instead.
|
37385
38332
|
#
|
37386
38333
|
# Discovers iSCSI targets on the host, using the initiator details.
|
38334
|
+
# Returns an array of strings containing the discovered data.
|
37387
38335
|
#
|
37388
38336
|
# For example, to discover iSCSI targets available in `myiscsi.example.com`,
|
37389
38337
|
# from host `123`, send a request like this:
|
@@ -37404,32 +38352,14 @@ module OvirtSDK4
|
|
37404
38352
|
# </action>
|
37405
38353
|
# ----
|
37406
38354
|
#
|
37407
|
-
# The result will be like this:
|
37408
|
-
#
|
37409
|
-
# [source,xml]
|
37410
|
-
# ----
|
37411
|
-
# <discovered_targets>
|
37412
|
-
# <iscsi_details>
|
37413
|
-
# <address>10.35.1.72</address>
|
37414
|
-
# <port>3260</port>
|
37415
|
-
# <portal>10.35.1.72:3260,1</portal>
|
37416
|
-
# <target>iqn.2015-08.com.tgt:444</target>
|
37417
|
-
# </iscsi_details>
|
37418
|
-
# </discovered_targets>
|
37419
|
-
# ----
|
37420
|
-
#
|
37421
38355
|
# @param opts [Hash] Additional options.
|
37422
38356
|
#
|
37423
38357
|
# @option opts [Boolean] :async Indicates if the discovery should be performed asynchronously.
|
37424
38358
|
#
|
37425
|
-
# @option opts [Array<IscsiDetails>] :discovered_targets The discovered targets including all connection information.
|
37426
|
-
#
|
37427
38359
|
# @option opts [IscsiDetails] :iscsi The target iSCSI device.
|
37428
38360
|
#
|
37429
38361
|
# @option opts [Array<String>] :iscsi_targets The iSCSI targets.
|
37430
|
-
#
|
37431
|
-
# Since version 4.2 of the engine, this parameter is deprecated, use
|
37432
|
-
# `discovered_targets` instead.
|
38362
|
+
# *
|
37433
38363
|
#
|
37434
38364
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
37435
38365
|
#
|
@@ -37619,8 +38549,8 @@ module OvirtSDK4
|
|
37619
38549
|
# <name>bond0</name>
|
37620
38550
|
# </host_nic>
|
37621
38551
|
# <ip_address_assignments>
|
37622
|
-
# <assignment_method>static</assignment_method>
|
37623
38552
|
# <ip_address_assignment>
|
38553
|
+
# <assignment_method>static</assignment_method>
|
37624
38554
|
# <ip>
|
37625
38555
|
# <address>192.168.122.10</address>
|
37626
38556
|
# <netmask>255.255.255.0</netmask>
|
@@ -37963,6 +38893,7 @@ module OvirtSDK4
|
|
37963
38893
|
[:async, TrueClass].freeze,
|
37964
38894
|
[:cluster, Cluster].freeze,
|
37965
38895
|
[:host, Host].freeze,
|
38896
|
+
[:reboot, TrueClass].freeze,
|
37966
38897
|
].freeze
|
37967
38898
|
|
37968
38899
|
private_constant :APPROVE_USING_ROOT_PASSWORD
|
@@ -37982,6 +38913,8 @@ module OvirtSDK4
|
|
37982
38913
|
#
|
37983
38914
|
# @option opts [Host] :host The host to approve.
|
37984
38915
|
#
|
38916
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
38917
|
+
#
|
37985
38918
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
37986
38919
|
#
|
37987
38920
|
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
@@ -38001,6 +38934,7 @@ module OvirtSDK4
|
|
38001
38934
|
[:deploy_hosted_engine, TrueClass].freeze,
|
38002
38935
|
[:host, Host].freeze,
|
38003
38936
|
[:image, String].freeze,
|
38937
|
+
[:reboot, TrueClass].freeze,
|
38004
38938
|
[:root_password, String].freeze,
|
38005
38939
|
[:ssh, Ssh].freeze,
|
38006
38940
|
[:undeploy_hosted_engine, TrueClass].freeze,
|
@@ -38029,6 +38963,8 @@ module OvirtSDK4
|
|
38029
38963
|
#
|
38030
38964
|
# @option opts [String] :image When installing {hypervisor-name}, an ISO image file is required.
|
38031
38965
|
#
|
38966
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
38967
|
+
#
|
38032
38968
|
# @option opts [String] :root_password The password of the `root` user used to connect to the host via SSH.
|
38033
38969
|
#
|
38034
38970
|
# @option opts [Ssh] :ssh The SSH details used to connect to the host.
|
@@ -38084,6 +39020,7 @@ module OvirtSDK4
|
|
38084
39020
|
[:async, TrueClass].freeze,
|
38085
39021
|
[:cluster, Cluster].freeze,
|
38086
39022
|
[:host, Host].freeze,
|
39023
|
+
[:reboot, TrueClass].freeze,
|
38087
39024
|
].freeze
|
38088
39025
|
|
38089
39026
|
private_constant :APPROVE_USING_SSH
|
@@ -38104,6 +39041,8 @@ module OvirtSDK4
|
|
38104
39041
|
#
|
38105
39042
|
# @option opts [Host] :host The host to approve.
|
38106
39043
|
#
|
39044
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
39045
|
+
#
|
38107
39046
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
38108
39047
|
#
|
38109
39048
|
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
@@ -38123,6 +39062,7 @@ module OvirtSDK4
|
|
38123
39062
|
[:deploy_hosted_engine, TrueClass].freeze,
|
38124
39063
|
[:host, Host].freeze,
|
38125
39064
|
[:image, String].freeze,
|
39065
|
+
[:reboot, TrueClass].freeze,
|
38126
39066
|
[:root_password, String].freeze,
|
38127
39067
|
[:ssh, Ssh].freeze,
|
38128
39068
|
[:undeploy_hosted_engine, TrueClass].freeze,
|
@@ -38151,6 +39091,8 @@ module OvirtSDK4
|
|
38151
39091
|
#
|
38152
39092
|
# @option opts [String] :image When installing {hypervisor-name}, an ISO image file is required.
|
38153
39093
|
#
|
39094
|
+
# @option opts [Boolean] :reboot Indicates if the host should be rebooted after successful installation. The default value is `true`.
|
39095
|
+
#
|
38154
39096
|
# @option opts [String] :root_password The password of the `root` user used to connect to the host via SSH.
|
38155
39097
|
#
|
38156
39098
|
# @option opts [Ssh] :ssh The SSH details used to connect to the host.
|