ovirt-engine-sdk 4.2.3 → 4.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.adoc +35 -0
- data/lib/ovirtsdk4/readers.rb +12 -0
- data/lib/ovirtsdk4/services.rb +356 -12
- data/lib/ovirtsdk4/types.rb +69 -0
- data/lib/ovirtsdk4/version.rb +1 -1
- data/lib/ovirtsdk4/writers.rb +3 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0acdc6d86eabc4cce313feae53d6b93730dec503
|
4
|
+
data.tar.gz: cfc08b042e974243286497c29e426d700407ec05
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2735fbbba05029dd00f7af23acebc26f777f958abdca5c380df63b804c3c984099f07f1d4d7dcf22f3803bd209dcc567e32967d5d5d8dc4f8de2f8da77aedc47
|
7
|
+
data.tar.gz: b045671bbb4687ff020cbe5cc66bd31128a21fbc00a65157e8d70ebaee3e73e081ba237be7313b020443fb52480e80e65c16a139fec476445eb38ac51b89a9ad
|
data/CHANGES.adoc
CHANGED
@@ -2,6 +2,41 @@
|
|
2
2
|
|
3
3
|
This document describes the relevant changes between releases of the SDK.
|
4
4
|
|
5
|
+
== 4.2.4 / Apr 17 2018
|
6
|
+
Update to model 4.2.32.
|
7
|
+
|
8
|
+
New features:
|
9
|
+
|
10
|
+
* ImageTransfer - adding 'clientInactivityTimeout' property
|
11
|
+
https://bugzilla.redhat.com/1563278[#1563278].
|
12
|
+
|
13
|
+
* Add architecture to OperatingSystemInfo
|
14
|
+
https://bugzilla.redhat.com/1552026[#1552026].
|
15
|
+
|
16
|
+
* Add import template from configuration
|
17
|
+
https://bugzilla.redhat.com/1526032[#1526032].
|
18
|
+
|
19
|
+
* Add `cancel` action to transfer image session.
|
20
|
+
|
21
|
+
* Add `export` template as OVA to a given path on a host
|
22
|
+
https://bugzilla.redhat.com/1526033[#1526033].
|
23
|
+
|
24
|
+
* Add service to list user groups
|
25
|
+
https://bugzilla.redhat.com/1545716[1545716].
|
26
|
+
|
27
|
+
* Expose `syncAllNetworks` command for `HostService`.
|
28
|
+
|
29
|
+
* Move `VmPlacementPolicy` attribute from Vm to `VmBase`
|
30
|
+
https://bugzilla.redhat.com/1375678[#1375678].
|
31
|
+
|
32
|
+
* Add `lease` parameter to preview snapshot
|
33
|
+
https://bugzilla.redhat.com/1532577[#1532577].
|
34
|
+
|
35
|
+
Bug fixes:
|
36
|
+
|
37
|
+
* Deprecate `OsType`
|
38
|
+
https://bugzilla.redhat.com/1537679[#1537679].
|
39
|
+
|
5
40
|
== 4.2.3 / Feb 20 2018
|
6
41
|
Update to model 4.2.29 and metamodel to 1.2.17:
|
7
42
|
|
data/lib/ovirtsdk4/readers.rb
CHANGED
@@ -92,6 +92,8 @@ module OvirtSDK4
|
|
92
92
|
object.restore_memory = value if not value.nil?
|
93
93
|
value = reader.get_attribute('root_password')
|
94
94
|
object.root_password = value if not value.nil?
|
95
|
+
value = reader.get_attribute('seal')
|
96
|
+
object.seal = value if not value.nil?
|
95
97
|
value = reader.get_attribute('status')
|
96
98
|
object.status = value if not value.nil?
|
97
99
|
value = reader.get_attribute('stop_gluster_service')
|
@@ -245,6 +247,8 @@ module OvirtSDK4
|
|
245
247
|
object.restore_memory = Reader.read_boolean(reader)
|
246
248
|
when 'root_password'
|
247
249
|
object.root_password = Reader.read_string(reader)
|
250
|
+
when 'seal'
|
251
|
+
object.seal = Reader.read_boolean(reader)
|
248
252
|
when 'snapshot'
|
249
253
|
object.snapshot = SnapshotReader.read_one(reader)
|
250
254
|
when 'ssh'
|
@@ -8284,6 +8288,8 @@ module OvirtSDK4
|
|
8284
8288
|
object.direction = value if not value.nil?
|
8285
8289
|
value = reader.get_attribute('id')
|
8286
8290
|
object.id = value if not value.nil?
|
8291
|
+
value = reader.get_attribute('inactivity_timeout')
|
8292
|
+
object.inactivity_timeout = value if not value.nil?
|
8287
8293
|
value = reader.get_attribute('name')
|
8288
8294
|
object.name = value if not value.nil?
|
8289
8295
|
value = reader.get_attribute('phase')
|
@@ -8315,6 +8321,8 @@ module OvirtSDK4
|
|
8315
8321
|
object.direction = Reader.read_enum(ImageTransferDirection, reader)
|
8316
8322
|
when 'id'
|
8317
8323
|
object.id = Reader.read_string(reader)
|
8324
|
+
when 'inactivity_timeout'
|
8325
|
+
object.inactivity_timeout = Reader.read_integer(reader)
|
8318
8326
|
when 'name'
|
8319
8327
|
object.name = Reader.read_string(reader)
|
8320
8328
|
when 'phase'
|
@@ -12331,6 +12339,8 @@ module OvirtSDK4
|
|
12331
12339
|
|
12332
12340
|
# Process the attributes:
|
12333
12341
|
object.href = reader.get_attribute('href')
|
12342
|
+
value = reader.get_attribute('architecture')
|
12343
|
+
object.architecture = value if not value.nil?
|
12334
12344
|
value = reader.get_attribute('comment')
|
12335
12345
|
object.comment = value if not value.nil?
|
12336
12346
|
value = reader.get_attribute('description')
|
@@ -12348,6 +12358,8 @@ module OvirtSDK4
|
|
12348
12358
|
# Process the inner elements:
|
12349
12359
|
while reader.forward do
|
12350
12360
|
case reader.node_name
|
12361
|
+
when 'architecture'
|
12362
|
+
object.architecture = Reader.read_enum(Architecture, reader)
|
12351
12363
|
when 'comment'
|
12352
12364
|
object.comment = Reader.read_string(reader)
|
12353
12365
|
when 'description'
|
data/lib/ovirtsdk4/services.rb
CHANGED
@@ -197,6 +197,9 @@ module OvirtSDK4
|
|
197
197
|
class DomainUserService < Service
|
198
198
|
end
|
199
199
|
|
200
|
+
class DomainUserGroupsService < Service
|
201
|
+
end
|
202
|
+
|
200
203
|
class DomainUsersService < Service
|
201
204
|
end
|
202
205
|
|
@@ -7576,6 +7579,53 @@ module OvirtSDK4
|
|
7576
7579
|
|
7577
7580
|
end
|
7578
7581
|
|
7582
|
+
class DomainUserGroupsService < Service
|
7583
|
+
|
7584
|
+
LIST = [
|
7585
|
+
[:follow, String].freeze,
|
7586
|
+
].freeze
|
7587
|
+
|
7588
|
+
private_constant :LIST
|
7589
|
+
|
7590
|
+
#
|
7591
|
+
# Returns the list of groups that the user is a member of.
|
7592
|
+
#
|
7593
|
+
# @param opts [Hash] Additional options.
|
7594
|
+
#
|
7595
|
+
# @option opts [String] :follow Indicates which inner links should be _followed_. The objects referenced by these links will be fetched as part
|
7596
|
+
# of the current request. See <<documents/003_common_concepts/follow, here>> for details.
|
7597
|
+
#
|
7598
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
7599
|
+
#
|
7600
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
7601
|
+
#
|
7602
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
7603
|
+
# given then the timeout set globally for the connection will be used.
|
7604
|
+
#
|
7605
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
7606
|
+
#
|
7607
|
+
# @return [Array<Group>]
|
7608
|
+
#
|
7609
|
+
def list(opts = {})
|
7610
|
+
internal_get(LIST, opts)
|
7611
|
+
end
|
7612
|
+
|
7613
|
+
#
|
7614
|
+
# Locates the service corresponding to the given path.
|
7615
|
+
#
|
7616
|
+
# @param path [String] The path of the service.
|
7617
|
+
#
|
7618
|
+
# @return [Service] A reference to the service.
|
7619
|
+
#
|
7620
|
+
def service(path)
|
7621
|
+
if path.nil? || path == ''
|
7622
|
+
return self
|
7623
|
+
end
|
7624
|
+
raise Error.new("The path \"#{path}\" doesn't correspond to any service")
|
7625
|
+
end
|
7626
|
+
|
7627
|
+
end
|
7628
|
+
|
7579
7629
|
class DomainUsersService < Service
|
7580
7630
|
|
7581
7631
|
LIST = [
|
@@ -11935,6 +11985,29 @@ module OvirtSDK4
|
|
11935
11985
|
|
11936
11986
|
class ImageTransferService < Service
|
11937
11987
|
|
11988
|
+
CANCEL = [
|
11989
|
+
].freeze
|
11990
|
+
|
11991
|
+
private_constant :CANCEL
|
11992
|
+
|
11993
|
+
#
|
11994
|
+
# Cancel the image transfer session. This terminates the transfer operation and removes the partial image.
|
11995
|
+
#
|
11996
|
+
# @param opts [Hash] Additional options.
|
11997
|
+
#
|
11998
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
11999
|
+
#
|
12000
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
12001
|
+
#
|
12002
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
12003
|
+
# given then the timeout set globally for the connection will be used.
|
12004
|
+
#
|
12005
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
12006
|
+
#
|
12007
|
+
def cancel(opts = {})
|
12008
|
+
internal_action(:cancel, nil, CANCEL, opts)
|
12009
|
+
end
|
12010
|
+
|
11938
12011
|
EXTEND = [
|
11939
12012
|
].freeze
|
11940
12013
|
|
@@ -16140,6 +16213,11 @@ module OvirtSDK4
|
|
16140
16213
|
# Data center is mandatory, and can be specified
|
16141
16214
|
# using the `id` or `name` attributes, the rest of
|
16142
16215
|
# the attributes will be ignored.
|
16216
|
+
#
|
16217
|
+
# NOTE: If <<types/open_stack_network_provider/attributes/auto_sync,`auto_sync`>> is
|
16218
|
+
# enabled for the provider, the network might be already imported automatically. To
|
16219
|
+
# prevent this, automatic import can be disabled by setting the `auto_sync` to false
|
16220
|
+
# and enabled after importing the network again.
|
16143
16221
|
#
|
16144
16222
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
16145
16223
|
#
|
@@ -19515,7 +19593,30 @@ module OvirtSDK4
|
|
19515
19593
|
#
|
19516
19594
|
# @option opts [Boolean] :async Indicates if the restore should be performed asynchronously.
|
19517
19595
|
#
|
19518
|
-
# @option opts [Array<Disk>] :disks
|
19596
|
+
# @option opts [Array<Disk>] :disks Specify the disks included in the snapshot's restore.
|
19597
|
+
#
|
19598
|
+
# For each disk parameter, it is also required to specify its `image_id`.
|
19599
|
+
#
|
19600
|
+
# For example, to restore a snapshot with an identifier `456` of a virtual machine with identifier `123`, including
|
19601
|
+
# a disk with identifier `111` and `image_id` of `222`, send a request like this:
|
19602
|
+
#
|
19603
|
+
# [source]
|
19604
|
+
# ----
|
19605
|
+
# POST /ovirt-engine/api/vms/123/snapshots/456/restore
|
19606
|
+
# ----
|
19607
|
+
#
|
19608
|
+
# Request body:
|
19609
|
+
#
|
19610
|
+
# [source,xml]
|
19611
|
+
# ----
|
19612
|
+
# <action>
|
19613
|
+
# <disks>
|
19614
|
+
# <disk id="111">
|
19615
|
+
# <image_id>222</image_id>
|
19616
|
+
# </disk>
|
19617
|
+
# </disks>
|
19618
|
+
# </action>
|
19619
|
+
# ----
|
19519
19620
|
#
|
19520
19621
|
# @option opts [Boolean] :restore_memory
|
19521
19622
|
#
|
@@ -20909,7 +21010,7 @@ module OvirtSDK4
|
|
20909
21010
|
private_constant :GET
|
20910
21011
|
|
20911
21012
|
#
|
20912
|
-
#
|
21013
|
+
# Retrieves the description of the storage domain.
|
20913
21014
|
#
|
20914
21015
|
# @param opts [Hash] Additional options.
|
20915
21016
|
#
|
@@ -20949,9 +21050,9 @@ module OvirtSDK4
|
|
20949
21050
|
#
|
20950
21051
|
# @option opts [Boolean] :async Indicates if the action should be performed asynchronously.
|
20951
21052
|
#
|
20952
|
-
# @option opts [Host] :host
|
21053
|
+
# @option opts [Host] :host Indicates the data center's host.
|
20953
21054
|
#
|
20954
|
-
# @option opts [Boolean] :is_attached
|
21055
|
+
# @option opts [Boolean] :is_attached Indicates whether the storage domain is attached to the data center.
|
20955
21056
|
#
|
20956
21057
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
20957
21058
|
#
|
@@ -21171,7 +21272,7 @@ module OvirtSDK4
|
|
21171
21272
|
# </storage_domain>
|
21172
21273
|
# ----
|
21173
21274
|
#
|
21174
|
-
# @param storage_domain [StorageDomain] The
|
21275
|
+
# @param storage_domain [StorageDomain] The updated storage domain.
|
21175
21276
|
# @param opts [Hash] Additional options.
|
21176
21277
|
#
|
21177
21278
|
# @option opts [Boolean] :async Indicates if the update should be performed asynchronously.
|
@@ -25538,7 +25639,7 @@ module OvirtSDK4
|
|
25538
25639
|
#
|
25539
25640
|
# Exports a template to the data center export domain.
|
25540
25641
|
#
|
25541
|
-
# For example,
|
25642
|
+
# For example, send the following request:
|
25542
25643
|
#
|
25543
25644
|
# [source]
|
25544
25645
|
# ----
|
@@ -25625,7 +25726,7 @@ module OvirtSDK4
|
|
25625
25726
|
#
|
25626
25727
|
# @param opts [Hash] Additional options.
|
25627
25728
|
#
|
25628
|
-
# @option opts [Boolean] :async Indicates if the
|
25729
|
+
# @option opts [Boolean] :async Indicates if the removal should be performed asynchronously.
|
25629
25730
|
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
25630
25731
|
#
|
25631
25732
|
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
@@ -25639,6 +25740,82 @@ module OvirtSDK4
|
|
25639
25740
|
internal_remove(REMOVE, opts)
|
25640
25741
|
end
|
25641
25742
|
|
25743
|
+
EXPORT_TO_EXPORT_DOMAIN = [
|
25744
|
+
[:exclusive, TrueClass].freeze,
|
25745
|
+
[:storage_domain, StorageDomain].freeze,
|
25746
|
+
].freeze
|
25747
|
+
|
25748
|
+
private_constant :EXPORT_TO_EXPORT_DOMAIN
|
25749
|
+
|
25750
|
+
#
|
25751
|
+
# Exports a template to an export domain.
|
25752
|
+
#
|
25753
|
+
# @param opts [Hash] Additional options.
|
25754
|
+
#
|
25755
|
+
# @option opts [Boolean] :exclusive Indicates if the existing templates with the same name should be overwritten.
|
25756
|
+
#
|
25757
|
+
# The export action reports a failed action if a template of the same name exists in the destination domain.
|
25758
|
+
# Set this parameter to `true` to change this behavior and overwrite any existing template.
|
25759
|
+
#
|
25760
|
+
# @option opts [StorageDomain] :storage_domain Specifies the destination export storage domain.
|
25761
|
+
#
|
25762
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
25763
|
+
#
|
25764
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
25765
|
+
#
|
25766
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
25767
|
+
# given then the timeout set globally for the connection will be used.
|
25768
|
+
#
|
25769
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
25770
|
+
#
|
25771
|
+
def export_to_export_domain(opts = {})
|
25772
|
+
internal_action(:export, nil, EXPORT_TO_EXPORT_DOMAIN, opts)
|
25773
|
+
end
|
25774
|
+
|
25775
|
+
EXPORT_TO_PATH_ON_HOST = [
|
25776
|
+
[:directory, String].freeze,
|
25777
|
+
[:exclusive, TrueClass].freeze,
|
25778
|
+
[:filename, String].freeze,
|
25779
|
+
[:host, Host].freeze,
|
25780
|
+
[:storage_domain, StorageDomain].freeze,
|
25781
|
+
].freeze
|
25782
|
+
|
25783
|
+
private_constant :EXPORT_TO_PATH_ON_HOST
|
25784
|
+
|
25785
|
+
#
|
25786
|
+
# Exports a template as an OVA file to a given path on a specified host.
|
25787
|
+
#
|
25788
|
+
# @param opts [Hash] Additional options.
|
25789
|
+
#
|
25790
|
+
# @option opts [String] :directory An absolute path of a directory on the host to generate the OVA file in.
|
25791
|
+
#
|
25792
|
+
# @option opts [Boolean] :exclusive Indicates if the existing templates with the same name should be overwritten.
|
25793
|
+
#
|
25794
|
+
# The export action reports a failed action if a template of the same name exists in the destination domain.
|
25795
|
+
# Set this parameter to `true` to change this behavior and overwrite any existing template.
|
25796
|
+
#
|
25797
|
+
# @option opts [String] :filename The name of the OVA file.
|
25798
|
+
#
|
25799
|
+
# This is an optional parameter. If it is not specified, the name of the OVA file is determined according
|
25800
|
+
# to the name of the template. It will conform to the following pattern: "<template name>.ova".
|
25801
|
+
#
|
25802
|
+
# @option opts [Host] :host The host to generate the OVA file on.
|
25803
|
+
#
|
25804
|
+
# @option opts [StorageDomain] :storage_domain Specifies the destination export storage domain.
|
25805
|
+
#
|
25806
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
25807
|
+
#
|
25808
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
25809
|
+
#
|
25810
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
25811
|
+
# given then the timeout set globally for the connection will be used.
|
25812
|
+
#
|
25813
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
25814
|
+
#
|
25815
|
+
def export_to_path_on_host(opts = {})
|
25816
|
+
internal_action(:export, nil, EXPORT_TO_PATH_ON_HOST, opts)
|
25817
|
+
end
|
25818
|
+
|
25642
25819
|
UPDATE = [
|
25643
25820
|
[:async, TrueClass].freeze,
|
25644
25821
|
].freeze
|
@@ -25649,9 +25826,9 @@ module OvirtSDK4
|
|
25649
25826
|
# Updates the template.
|
25650
25827
|
#
|
25651
25828
|
# The `name`, `description`, `type`, `memory`, `cpu`, `topology`, `os`, `high_availability`, `display`,
|
25652
|
-
# `stateless`, `usb
|
25829
|
+
# `stateless`, `usb`, and `timezone` elements can be updated after a template has been created.
|
25653
25830
|
#
|
25654
|
-
# For example, to update a template
|
25831
|
+
# For example, to update a template so that it has 1 GiB of memory send a request like this:
|
25655
25832
|
#
|
25656
25833
|
# [source]
|
25657
25834
|
# ----
|
@@ -25700,7 +25877,7 @@ module OvirtSDK4
|
|
25700
25877
|
end
|
25701
25878
|
|
25702
25879
|
#
|
25703
|
-
# Returns a reference to the service that manages the
|
25880
|
+
# Returns a reference to the service that manages the CD-ROMs that are associated with the template.
|
25704
25881
|
#
|
25705
25882
|
# @return [TemplateCdromsService] A reference to `cdroms` service.
|
25706
25883
|
#
|
@@ -25709,7 +25886,7 @@ module OvirtSDK4
|
|
25709
25886
|
end
|
25710
25887
|
|
25711
25888
|
#
|
25712
|
-
#
|
25889
|
+
# Returns a reference to the service that manages a specific
|
25713
25890
|
# disk attachment of the template.
|
25714
25891
|
#
|
25715
25892
|
# @return [TemplateDiskAttachmentsService] A reference to `disk_attachments` service.
|
@@ -27021,6 +27198,134 @@ module OvirtSDK4
|
|
27021
27198
|
internal_add(template, Template, ADD, opts)
|
27022
27199
|
end
|
27023
27200
|
|
27201
|
+
ADD_FROM_CONFIGURATION = [
|
27202
|
+
[:clone_permissions, TrueClass].freeze,
|
27203
|
+
[:seal, TrueClass].freeze,
|
27204
|
+
].freeze
|
27205
|
+
|
27206
|
+
private_constant :ADD_FROM_CONFIGURATION
|
27207
|
+
|
27208
|
+
#
|
27209
|
+
# Add a virtual machine template to the system from a configuration. Requires the configuration type, the configuration data, and the target cluster.
|
27210
|
+
#
|
27211
|
+
# @param template [Template] The information about the template or template version.
|
27212
|
+
#
|
27213
|
+
# @param opts [Hash] Additional options.
|
27214
|
+
#
|
27215
|
+
# @option opts [Boolean] :clone_permissions Specifies if the permissions of the virtual machine should be copied to the template.
|
27216
|
+
#
|
27217
|
+
# If this optional parameter is provided, and its value is `true`, then the permissions of the virtual machine
|
27218
|
+
# (only the direct ones, not the inherited ones) will be copied to the created template. For example, to create
|
27219
|
+
# a template from the `myvm` virtual machine copying its permissions, send a request like this:
|
27220
|
+
#
|
27221
|
+
# [source]
|
27222
|
+
# ----
|
27223
|
+
# POST /ovirt-engine/api/templates?clone_permissions=true
|
27224
|
+
# ----
|
27225
|
+
#
|
27226
|
+
# With a request body like this:
|
27227
|
+
#
|
27228
|
+
# [source,xml]
|
27229
|
+
# ----
|
27230
|
+
# <template>
|
27231
|
+
# <name>mytemplate<name>
|
27232
|
+
# <vm>
|
27233
|
+
# <name>myvm<name>
|
27234
|
+
# </vm>
|
27235
|
+
# </template>
|
27236
|
+
# ----
|
27237
|
+
#
|
27238
|
+
# @option opts [Boolean] :seal Seals the template.
|
27239
|
+
#
|
27240
|
+
# If this optional parameter is provided and its value is `true`,
|
27241
|
+
# then the template is sealed after creation.
|
27242
|
+
#
|
27243
|
+
# Sealing erases all host-specific configuration from the filesystem:
|
27244
|
+
# SSH keys, UDEV rules, MAC addresses, system ID, hostname, and so on,
|
27245
|
+
# thus making it easier to use the template to create multiple virtual
|
27246
|
+
# machines without manual intervention.
|
27247
|
+
#
|
27248
|
+
# Currently, sealing is supported only for Linux operating systems.
|
27249
|
+
#
|
27250
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
27251
|
+
#
|
27252
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
27253
|
+
#
|
27254
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
27255
|
+
# given then the timeout set globally for the connection will be used.
|
27256
|
+
#
|
27257
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
27258
|
+
#
|
27259
|
+
# @return [Template]
|
27260
|
+
#
|
27261
|
+
def add_from_configuration(template, opts = {})
|
27262
|
+
internal_add(template, Template, ADD_FROM_CONFIGURATION, opts)
|
27263
|
+
end
|
27264
|
+
|
27265
|
+
ADD_FROM_VM = [
|
27266
|
+
[:clone_permissions, TrueClass].freeze,
|
27267
|
+
[:seal, TrueClass].freeze,
|
27268
|
+
].freeze
|
27269
|
+
|
27270
|
+
private_constant :ADD_FROM_VM
|
27271
|
+
|
27272
|
+
#
|
27273
|
+
# Add a virtual machine template to the system from an existing virtual machine.
|
27274
|
+
#
|
27275
|
+
# @param template [Template] The information about the template or template version.
|
27276
|
+
#
|
27277
|
+
# @param opts [Hash] Additional options.
|
27278
|
+
#
|
27279
|
+
# @option opts [Boolean] :clone_permissions Specifies if the permissions of the virtual machine should be copied to the template.
|
27280
|
+
#
|
27281
|
+
# If this optional parameter is provided, and its value is `true`, then the permissions of the virtual machine
|
27282
|
+
# (only the direct ones, not the inherited ones) will be copied to the created template. For example, to create
|
27283
|
+
# a template from the `myvm` virtual machine copying its permissions, send a request like this:
|
27284
|
+
#
|
27285
|
+
# [source]
|
27286
|
+
# ----
|
27287
|
+
# POST /ovirt-engine/api/templates?clone_permissions=true
|
27288
|
+
# ----
|
27289
|
+
#
|
27290
|
+
# With a request body like this:
|
27291
|
+
#
|
27292
|
+
# [source,xml]
|
27293
|
+
# ----
|
27294
|
+
# <template>
|
27295
|
+
# <name>mytemplate<name>
|
27296
|
+
# <vm>
|
27297
|
+
# <name>myvm<name>
|
27298
|
+
# </vm>
|
27299
|
+
# </template>
|
27300
|
+
# ----
|
27301
|
+
#
|
27302
|
+
# @option opts [Boolean] :seal Seals the template.
|
27303
|
+
#
|
27304
|
+
# If this optional parameter is provided and its value is `true`,
|
27305
|
+
# then the template is sealed after creation.
|
27306
|
+
#
|
27307
|
+
# Sealing erases all host-specific configuration from the filesystem:
|
27308
|
+
# SSH keys, UDEV rules, MAC addresses, system ID, hostname, and so on,
|
27309
|
+
# thus making it easier to use the template to create multiple virtual
|
27310
|
+
# machines without manual intervention.
|
27311
|
+
#
|
27312
|
+
# Currently, sealing is supported only for Linux operating systems.
|
27313
|
+
#
|
27314
|
+
# @option opts [Hash] :headers ({}) Additional HTTP headers.
|
27315
|
+
#
|
27316
|
+
# @option opts [Hash] :query ({}) Additional URL query parameters.
|
27317
|
+
#
|
27318
|
+
# @option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly
|
27319
|
+
# given then the timeout set globally for the connection will be used.
|
27320
|
+
#
|
27321
|
+
# @option opts [Boolean] :wait (true) If `true` wait for the response.
|
27322
|
+
#
|
27323
|
+
# @return [Template]
|
27324
|
+
#
|
27325
|
+
def add_from_vm(template, opts = {})
|
27326
|
+
internal_add(template, Template, ADD_FROM_VM, opts)
|
27327
|
+
end
|
27328
|
+
|
27024
27329
|
LIST = [
|
27025
27330
|
[:case_sensitive, TrueClass].freeze,
|
27026
27331
|
[:filter, TrueClass].freeze,
|
@@ -27336,6 +27641,15 @@ module OvirtSDK4
|
|
27336
27641
|
internal_remove(REMOVE, opts)
|
27337
27642
|
end
|
27338
27643
|
|
27644
|
+
#
|
27645
|
+
# Locates the `groups` service.
|
27646
|
+
#
|
27647
|
+
# @return [DomainUserGroupsService] A reference to `groups` service.
|
27648
|
+
#
|
27649
|
+
def groups_service
|
27650
|
+
@groups_service ||= DomainUserGroupsService.new(self, 'groups')
|
27651
|
+
end
|
27652
|
+
|
27339
27653
|
#
|
27340
27654
|
# Locates the `permissions` service.
|
27341
27655
|
#
|
@@ -27383,6 +27697,12 @@ module OvirtSDK4
|
|
27383
27697
|
if path.nil? || path == ''
|
27384
27698
|
return self
|
27385
27699
|
end
|
27700
|
+
if path == 'groups'
|
27701
|
+
return groups_service
|
27702
|
+
end
|
27703
|
+
if path.start_with?('groups/')
|
27704
|
+
return groups_service.service(path[7..-1])
|
27705
|
+
end
|
27386
27706
|
if path == 'permissions'
|
27387
27707
|
return permissions_service
|
27388
27708
|
end
|
@@ -28245,7 +28565,31 @@ module OvirtSDK4
|
|
28245
28565
|
#
|
28246
28566
|
# @option opts [Boolean] :async Indicates if the preview should be performed asynchronously.
|
28247
28567
|
#
|
28248
|
-
# @option opts [Array<Disk>] :disks
|
28568
|
+
# @option opts [Array<Disk>] :disks Specify the disks included in the snapshot's preview.
|
28569
|
+
#
|
28570
|
+
# For each disk parameter, it is also required to specify its `image_id`.
|
28571
|
+
#
|
28572
|
+
# For example, to preview a snapshot with identifier `456` which includes a disk with identifier `111` and its
|
28573
|
+
# `image_id` as `222`, send a request like this:
|
28574
|
+
#
|
28575
|
+
# [source]
|
28576
|
+
# ----
|
28577
|
+
# POST /ovirt-engine/api/vms/123/previewsnapshot
|
28578
|
+
# ----
|
28579
|
+
#
|
28580
|
+
# Request body:
|
28581
|
+
#
|
28582
|
+
# [source,xml]
|
28583
|
+
# ----
|
28584
|
+
# <action>
|
28585
|
+
# <disks>
|
28586
|
+
# <disk id="111">
|
28587
|
+
# <image_id>222</image_id>
|
28588
|
+
# </disk>
|
28589
|
+
# </disks>
|
28590
|
+
# <snapshot id="456"/>
|
28591
|
+
# </action>
|
28592
|
+
# ----
|
28249
28593
|
#
|
28250
28594
|
# @option opts [StorageDomainLease] :lease Specify the lease storage domain ID to use in the preview of the snapshot.
|
28251
28595
|
# If lease parameter is not passed, then the previewed snapshot lease storage domain will be used.
|
data/lib/ovirtsdk4/types.rb
CHANGED
@@ -5548,6 +5548,24 @@ module OvirtSDK4
|
|
5548
5548
|
@image = value
|
5549
5549
|
end
|
5550
5550
|
|
5551
|
+
#
|
5552
|
+
# Returns the value of the `inactivity_timeout` attribute.
|
5553
|
+
#
|
5554
|
+
# @return [Integer]
|
5555
|
+
#
|
5556
|
+
def inactivity_timeout
|
5557
|
+
@inactivity_timeout
|
5558
|
+
end
|
5559
|
+
|
5560
|
+
#
|
5561
|
+
# Sets the value of the `inactivity_timeout` attribute.
|
5562
|
+
#
|
5563
|
+
# @param value [Integer]
|
5564
|
+
#
|
5565
|
+
def inactivity_timeout=(value)
|
5566
|
+
@inactivity_timeout = value
|
5567
|
+
end
|
5568
|
+
|
5551
5569
|
#
|
5552
5570
|
# Returns the value of the `name` attribute.
|
5553
5571
|
#
|
@@ -5704,6 +5722,8 @@ module OvirtSDK4
|
|
5704
5722
|
#
|
5705
5723
|
# @option opts [Image, Hash] :image The value of attribute `image`.
|
5706
5724
|
#
|
5725
|
+
# @option opts [Integer] :inactivity_timeout The value of attribute `inactivity_timeout`.
|
5726
|
+
#
|
5707
5727
|
# @option opts [String] :name The value of attribute `name`.
|
5708
5728
|
#
|
5709
5729
|
# @option opts [ImageTransferPhase] :phase The value of attribute `phase`.
|
@@ -5726,6 +5746,7 @@ module OvirtSDK4
|
|
5726
5746
|
self.disk = opts[:disk]
|
5727
5747
|
self.host = opts[:host]
|
5728
5748
|
self.image = opts[:image]
|
5749
|
+
self.inactivity_timeout = opts[:inactivity_timeout]
|
5729
5750
|
self.phase = opts[:phase]
|
5730
5751
|
self.proxy_url = opts[:proxy_url]
|
5731
5752
|
self.signed_ticket = opts[:signed_ticket]
|
@@ -5744,6 +5765,7 @@ module OvirtSDK4
|
|
5744
5765
|
@disk == other.disk &&
|
5745
5766
|
@host == other.host &&
|
5746
5767
|
@image == other.image &&
|
5768
|
+
@inactivity_timeout == other.inactivity_timeout &&
|
5747
5769
|
@phase == other.phase &&
|
5748
5770
|
@proxy_url == other.proxy_url &&
|
5749
5771
|
@signed_ticket == other.signed_ticket &&
|
@@ -5762,6 +5784,7 @@ module OvirtSDK4
|
|
5762
5784
|
@disk.hash +
|
5763
5785
|
@host.hash +
|
5764
5786
|
@image.hash +
|
5787
|
+
@inactivity_timeout.hash +
|
5765
5788
|
@phase.hash +
|
5766
5789
|
@proxy_url.hash +
|
5767
5790
|
@signed_ticket.hash +
|
@@ -12790,6 +12813,24 @@ module OvirtSDK4
|
|
12790
12813
|
|
12791
12814
|
class OperatingSystemInfo < Identified
|
12792
12815
|
|
12816
|
+
#
|
12817
|
+
# Returns the value of the `architecture` attribute.
|
12818
|
+
#
|
12819
|
+
# @return [Architecture]
|
12820
|
+
#
|
12821
|
+
def architecture
|
12822
|
+
@architecture
|
12823
|
+
end
|
12824
|
+
|
12825
|
+
#
|
12826
|
+
# Sets the value of the `architecture` attribute.
|
12827
|
+
#
|
12828
|
+
# @param value [Architecture]
|
12829
|
+
#
|
12830
|
+
def architecture=(value)
|
12831
|
+
@architecture = value
|
12832
|
+
end
|
12833
|
+
|
12793
12834
|
#
|
12794
12835
|
# Returns the value of the `comment` attribute.
|
12795
12836
|
#
|
@@ -12919,6 +12960,8 @@ module OvirtSDK4
|
|
12919
12960
|
# should be symbols corresponding to the names of the attributes. The values of the hash
|
12920
12961
|
# should be the values of the attributes.
|
12921
12962
|
#
|
12963
|
+
# @option opts [Architecture] :architecture The value of attribute `architecture`.
|
12964
|
+
#
|
12922
12965
|
# @option opts [String] :comment The value of attribute `comment`.
|
12923
12966
|
#
|
12924
12967
|
# @option opts [String] :description The value of attribute `description`.
|
@@ -12934,6 +12977,7 @@ module OvirtSDK4
|
|
12934
12977
|
#
|
12935
12978
|
def initialize(opts = {})
|
12936
12979
|
super(opts)
|
12980
|
+
self.architecture = opts[:architecture]
|
12937
12981
|
self.large_icon = opts[:large_icon]
|
12938
12982
|
self.small_icon = opts[:small_icon]
|
12939
12983
|
end
|
@@ -12943,6 +12987,7 @@ module OvirtSDK4
|
|
12943
12987
|
#
|
12944
12988
|
def ==(other)
|
12945
12989
|
super &&
|
12990
|
+
@architecture == other.architecture &&
|
12946
12991
|
@large_icon == other.large_icon &&
|
12947
12992
|
@small_icon == other.small_icon
|
12948
12993
|
end
|
@@ -12952,6 +12997,7 @@ module OvirtSDK4
|
|
12952
12997
|
#
|
12953
12998
|
def hash
|
12954
12999
|
super +
|
13000
|
+
@architecture.hash +
|
12955
13001
|
@large_icon.hash +
|
12956
13002
|
@small_icon.hash
|
12957
13003
|
end
|
@@ -28465,6 +28511,24 @@ module OvirtSDK4
|
|
28465
28511
|
@root_password = value
|
28466
28512
|
end
|
28467
28513
|
|
28514
|
+
#
|
28515
|
+
# Returns the value of the `seal` attribute.
|
28516
|
+
#
|
28517
|
+
# @return [Boolean]
|
28518
|
+
#
|
28519
|
+
def seal
|
28520
|
+
@seal
|
28521
|
+
end
|
28522
|
+
|
28523
|
+
#
|
28524
|
+
# Sets the value of the `seal` attribute.
|
28525
|
+
#
|
28526
|
+
# @param value [Boolean]
|
28527
|
+
#
|
28528
|
+
def seal=(value)
|
28529
|
+
@seal = value
|
28530
|
+
end
|
28531
|
+
|
28468
28532
|
#
|
28469
28533
|
# Returns the value of the `snapshot` attribute.
|
28470
28534
|
#
|
@@ -28981,6 +29045,8 @@ module OvirtSDK4
|
|
28981
29045
|
#
|
28982
29046
|
# @option opts [String] :root_password The value of attribute `root_password`.
|
28983
29047
|
#
|
29048
|
+
# @option opts [Boolean] :seal The value of attribute `seal`.
|
29049
|
+
#
|
28984
29050
|
# @option opts [Snapshot, Hash] :snapshot The value of attribute `snapshot`.
|
28985
29051
|
#
|
28986
29052
|
# @option opts [Ssh, Hash] :ssh The value of attribute `ssh`.
|
@@ -29079,6 +29145,7 @@ module OvirtSDK4
|
|
29079
29145
|
self.resolution_type = opts[:resolution_type]
|
29080
29146
|
self.restore_memory = opts[:restore_memory]
|
29081
29147
|
self.root_password = opts[:root_password]
|
29148
|
+
self.seal = opts[:seal]
|
29082
29149
|
self.snapshot = opts[:snapshot]
|
29083
29150
|
self.ssh = opts[:ssh]
|
29084
29151
|
self.status = opts[:status]
|
@@ -29164,6 +29231,7 @@ module OvirtSDK4
|
|
29164
29231
|
@resolution_type == other.resolution_type &&
|
29165
29232
|
@restore_memory == other.restore_memory &&
|
29166
29233
|
@root_password == other.root_password &&
|
29234
|
+
@seal == other.seal &&
|
29167
29235
|
@snapshot == other.snapshot &&
|
29168
29236
|
@ssh == other.ssh &&
|
29169
29237
|
@status == other.status &&
|
@@ -29249,6 +29317,7 @@ module OvirtSDK4
|
|
29249
29317
|
@resolution_type.hash +
|
29250
29318
|
@restore_memory.hash +
|
29251
29319
|
@root_password.hash +
|
29320
|
+
@seal.hash +
|
29252
29321
|
@snapshot.hash +
|
29253
29322
|
@ssh.hash +
|
29254
29323
|
@status.hash +
|
data/lib/ovirtsdk4/version.rb
CHANGED
data/lib/ovirtsdk4/writers.rb
CHANGED
@@ -95,6 +95,7 @@ module OvirtSDK4
|
|
95
95
|
Writer.write_string(writer, 'resolution_type', object.resolution_type) unless object.resolution_type.nil?
|
96
96
|
Writer.write_boolean(writer, 'restore_memory', object.restore_memory) unless object.restore_memory.nil?
|
97
97
|
Writer.write_string(writer, 'root_password', object.root_password) unless object.root_password.nil?
|
98
|
+
Writer.write_boolean(writer, 'seal', object.seal) unless object.seal.nil?
|
98
99
|
SnapshotWriter.write_one(object.snapshot, writer, 'snapshot') unless object.snapshot.nil?
|
99
100
|
SshWriter.write_one(object.ssh, writer, 'ssh') unless object.ssh.nil?
|
100
101
|
Writer.write_string(writer, 'status', object.status) unless object.status.nil?
|
@@ -3162,6 +3163,7 @@ module OvirtSDK4
|
|
3162
3163
|
Writer.write_string(writer, 'comment', object.comment) unless object.comment.nil?
|
3163
3164
|
Writer.write_string(writer, 'description', object.description) unless object.description.nil?
|
3164
3165
|
Writer.write_string(writer, 'direction', object.direction) unless object.direction.nil?
|
3166
|
+
Writer.write_integer(writer, 'inactivity_timeout', object.inactivity_timeout) unless object.inactivity_timeout.nil?
|
3165
3167
|
Writer.write_string(writer, 'name', object.name) unless object.name.nil?
|
3166
3168
|
Writer.write_string(writer, 'phase', object.phase) unless object.phase.nil?
|
3167
3169
|
Writer.write_string(writer, 'proxy_url', object.proxy_url) unless object.proxy_url.nil?
|
@@ -4690,6 +4692,7 @@ module OvirtSDK4
|
|
4690
4692
|
href = object.href
|
4691
4693
|
writer.write_attribute('href', href) unless href.nil?
|
4692
4694
|
writer.write_attribute('id', object.id) unless object.id.nil?
|
4695
|
+
Writer.write_string(writer, 'architecture', object.architecture) unless object.architecture.nil?
|
4693
4696
|
Writer.write_string(writer, 'comment', object.comment) unless object.comment.nil?
|
4694
4697
|
Writer.write_string(writer, 'description', object.description) unless object.description.nil?
|
4695
4698
|
IconWriter.write_one(object.large_icon, writer, 'large_icon') unless object.large_icon.nil?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ovirt-engine-sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.2.
|
4
|
+
version: 4.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juan Hernandez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-04-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|