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.
@@ -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 fingerprint.
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>test1</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
- # <sourceHost id="456" />
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?deploy_hosted_engine=true"
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.