google-apis-vmmigration_v1 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google/apis/vmmigration_v1/classes.rb +2166 -0
- data/lib/google/apis/vmmigration_v1/gem_version.rb +28 -0
- data/lib/google/apis/vmmigration_v1/representations.rb +901 -0
- data/lib/google/apis/vmmigration_v1/service.rb +2055 -0
- data/lib/google/apis/vmmigration_v1.rb +36 -0
- data/lib/google-apis-vmmigration_v1.rb +15 -0
- metadata +82 -0
@@ -0,0 +1,2166 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'date'
|
16
|
+
require 'google/apis/core/base_service'
|
17
|
+
require 'google/apis/core/json_representation'
|
18
|
+
require 'google/apis/core/hashable'
|
19
|
+
require 'google/apis/errors'
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Apis
|
23
|
+
module VmmigrationV1
|
24
|
+
|
25
|
+
# Request message for 'AddGroupMigration' request.
|
26
|
+
class AddGroupMigrationRequest
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
# The full path name of the MigratingVm to add.
|
30
|
+
# Corresponds to the JSON property `migratingVm`
|
31
|
+
# @return [String]
|
32
|
+
attr_accessor :migrating_vm
|
33
|
+
|
34
|
+
def initialize(**args)
|
35
|
+
update!(**args)
|
36
|
+
end
|
37
|
+
|
38
|
+
# Update properties of this object
|
39
|
+
def update!(**args)
|
40
|
+
@migrating_vm = args[:migrating_vm] if args.key?(:migrating_vm)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
# AppliedLicense holds the license data returned by adaptation module report.
|
45
|
+
class AppliedLicense
|
46
|
+
include Google::Apis::Core::Hashable
|
47
|
+
|
48
|
+
# The OS license returned from the adaptation module's report.
|
49
|
+
# Corresponds to the JSON property `osLicense`
|
50
|
+
# @return [String]
|
51
|
+
attr_accessor :os_license
|
52
|
+
|
53
|
+
# The license type that was used in OS adaptation.
|
54
|
+
# Corresponds to the JSON property `type`
|
55
|
+
# @return [String]
|
56
|
+
attr_accessor :type
|
57
|
+
|
58
|
+
def initialize(**args)
|
59
|
+
update!(**args)
|
60
|
+
end
|
61
|
+
|
62
|
+
# Update properties of this object
|
63
|
+
def update!(**args)
|
64
|
+
@os_license = args[:os_license] if args.key?(:os_license)
|
65
|
+
@type = args[:type] if args.key?(:type)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
# Request message for 'CancelCloneJob' request.
|
70
|
+
class CancelCloneJobRequest
|
71
|
+
include Google::Apis::Core::Hashable
|
72
|
+
|
73
|
+
def initialize(**args)
|
74
|
+
update!(**args)
|
75
|
+
end
|
76
|
+
|
77
|
+
# Update properties of this object
|
78
|
+
def update!(**args)
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
# Request message for 'CancelCutoverJob' request.
|
83
|
+
class CancelCutoverJobRequest
|
84
|
+
include Google::Apis::Core::Hashable
|
85
|
+
|
86
|
+
def initialize(**args)
|
87
|
+
update!(**args)
|
88
|
+
end
|
89
|
+
|
90
|
+
# Update properties of this object
|
91
|
+
def update!(**args)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
# The request message for Operations.CancelOperation.
|
96
|
+
class CancelOperationRequest
|
97
|
+
include Google::Apis::Core::Hashable
|
98
|
+
|
99
|
+
def initialize(**args)
|
100
|
+
update!(**args)
|
101
|
+
end
|
102
|
+
|
103
|
+
# Update properties of this object
|
104
|
+
def update!(**args)
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
# CloneJob describes the process of creating a clone of a MigratingVM to the
|
109
|
+
# requested target based on the latest successful uploaded snapshots. While the
|
110
|
+
# migration cycles of a MigratingVm take place, it is possible to verify the
|
111
|
+
# uploaded VM can be started in the cloud, by creating a clone. The clone can be
|
112
|
+
# created without any downtime, and it is created using the latest snapshots
|
113
|
+
# which are already in the cloud. The cloneJob is only responsible for its work,
|
114
|
+
# not its products, which means once it is finished, it will never touch the
|
115
|
+
# instance it created. It will only delete it in case of the CloneJob being
|
116
|
+
# cancelled or upon failure to clone.
|
117
|
+
class CloneJob
|
118
|
+
include Google::Apis::Core::Hashable
|
119
|
+
|
120
|
+
# ComputeEngineTargetDetails is a collection of details for creating a VM in a
|
121
|
+
# target Compute Engine project.
|
122
|
+
# Corresponds to the JSON property `computeEngineTargetDetails`
|
123
|
+
# @return [Google::Apis::VmmigrationV1::ComputeEngineTargetDetails]
|
124
|
+
attr_accessor :compute_engine_target_details
|
125
|
+
|
126
|
+
# TargetVMDetails is a collection of details for creating a VM in a target
|
127
|
+
# Compute Engine project.
|
128
|
+
# Corresponds to the JSON property `computeEngineVmDetails`
|
129
|
+
# @return [Google::Apis::VmmigrationV1::TargetVmDetails]
|
130
|
+
attr_accessor :compute_engine_vm_details
|
131
|
+
|
132
|
+
# Output only. The time the clone job was created (as an API call, not when it
|
133
|
+
# was actually created in the target).
|
134
|
+
# Corresponds to the JSON property `createTime`
|
135
|
+
# @return [String]
|
136
|
+
attr_accessor :create_time
|
137
|
+
|
138
|
+
# The `Status` type defines a logical error model that is suitable for different
|
139
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
140
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
141
|
+
# data: error code, error message, and error details. You can find out more
|
142
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
143
|
+
# //cloud.google.com/apis/design/errors).
|
144
|
+
# Corresponds to the JSON property `error`
|
145
|
+
# @return [Google::Apis::VmmigrationV1::Status]
|
146
|
+
attr_accessor :error
|
147
|
+
|
148
|
+
# The name of the clone.
|
149
|
+
# Corresponds to the JSON property `name`
|
150
|
+
# @return [String]
|
151
|
+
attr_accessor :name
|
152
|
+
|
153
|
+
# Output only. State of the clone job.
|
154
|
+
# Corresponds to the JSON property `state`
|
155
|
+
# @return [String]
|
156
|
+
attr_accessor :state
|
157
|
+
|
158
|
+
# Output only. The time the state was last updated.
|
159
|
+
# Corresponds to the JSON property `stateTime`
|
160
|
+
# @return [String]
|
161
|
+
attr_accessor :state_time
|
162
|
+
|
163
|
+
def initialize(**args)
|
164
|
+
update!(**args)
|
165
|
+
end
|
166
|
+
|
167
|
+
# Update properties of this object
|
168
|
+
def update!(**args)
|
169
|
+
@compute_engine_target_details = args[:compute_engine_target_details] if args.key?(:compute_engine_target_details)
|
170
|
+
@compute_engine_vm_details = args[:compute_engine_vm_details] if args.key?(:compute_engine_vm_details)
|
171
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
172
|
+
@error = args[:error] if args.key?(:error)
|
173
|
+
@name = args[:name] if args.key?(:name)
|
174
|
+
@state = args[:state] if args.key?(:state)
|
175
|
+
@state_time = args[:state_time] if args.key?(:state_time)
|
176
|
+
end
|
177
|
+
end
|
178
|
+
|
179
|
+
# ComputeEngineTargetDefaults is a collection of details for creating a VM in a
|
180
|
+
# target Compute Engine project.
|
181
|
+
class ComputeEngineTargetDefaults
|
182
|
+
include Google::Apis::Core::Hashable
|
183
|
+
|
184
|
+
# AppliedLicense holds the license data returned by adaptation module report.
|
185
|
+
# Corresponds to the JSON property `appliedLicense`
|
186
|
+
# @return [Google::Apis::VmmigrationV1::AppliedLicense]
|
187
|
+
attr_accessor :applied_license
|
188
|
+
|
189
|
+
# Scheduling information for VM on maintenance/restart behaviour and node
|
190
|
+
# allocation in sole tenant nodes.
|
191
|
+
# Corresponds to the JSON property `computeScheduling`
|
192
|
+
# @return [Google::Apis::VmmigrationV1::ComputeScheduling]
|
193
|
+
attr_accessor :compute_scheduling
|
194
|
+
|
195
|
+
# The disk type to use in the VM.
|
196
|
+
# Corresponds to the JSON property `diskType`
|
197
|
+
# @return [String]
|
198
|
+
attr_accessor :disk_type
|
199
|
+
|
200
|
+
# A map of labels to associate with the VM.
|
201
|
+
# Corresponds to the JSON property `labels`
|
202
|
+
# @return [Hash<String,String>]
|
203
|
+
attr_accessor :labels
|
204
|
+
|
205
|
+
# The license type to use in OS adaptation.
|
206
|
+
# Corresponds to the JSON property `licenseType`
|
207
|
+
# @return [String]
|
208
|
+
attr_accessor :license_type
|
209
|
+
|
210
|
+
# The machine type to create the VM with.
|
211
|
+
# Corresponds to the JSON property `machineType`
|
212
|
+
# @return [String]
|
213
|
+
attr_accessor :machine_type
|
214
|
+
|
215
|
+
# The machine type series to create the VM with.
|
216
|
+
# Corresponds to the JSON property `machineTypeSeries`
|
217
|
+
# @return [String]
|
218
|
+
attr_accessor :machine_type_series
|
219
|
+
|
220
|
+
# List of NICs connected to this VM.
|
221
|
+
# Corresponds to the JSON property `networkInterfaces`
|
222
|
+
# @return [Array<Google::Apis::VmmigrationV1::NetworkInterface>]
|
223
|
+
attr_accessor :network_interfaces
|
224
|
+
|
225
|
+
# A map of network tags to associate with the VM.
|
226
|
+
# Corresponds to the JSON property `networkTags`
|
227
|
+
# @return [Array<String>]
|
228
|
+
attr_accessor :network_tags
|
229
|
+
|
230
|
+
# The service account to associate the VM with.
|
231
|
+
# Corresponds to the JSON property `serviceAccount`
|
232
|
+
# @return [String]
|
233
|
+
attr_accessor :service_account
|
234
|
+
|
235
|
+
# The full path of the resource of type TargetProject which represents the
|
236
|
+
# Compute Engine project in which to create this VM.
|
237
|
+
# Corresponds to the JSON property `targetProject`
|
238
|
+
# @return [String]
|
239
|
+
attr_accessor :target_project
|
240
|
+
|
241
|
+
# The name of the VM to create.
|
242
|
+
# Corresponds to the JSON property `vmName`
|
243
|
+
# @return [String]
|
244
|
+
attr_accessor :vm_name
|
245
|
+
|
246
|
+
# The zone in which to create the VM.
|
247
|
+
# Corresponds to the JSON property `zone`
|
248
|
+
# @return [String]
|
249
|
+
attr_accessor :zone
|
250
|
+
|
251
|
+
def initialize(**args)
|
252
|
+
update!(**args)
|
253
|
+
end
|
254
|
+
|
255
|
+
# Update properties of this object
|
256
|
+
def update!(**args)
|
257
|
+
@applied_license = args[:applied_license] if args.key?(:applied_license)
|
258
|
+
@compute_scheduling = args[:compute_scheduling] if args.key?(:compute_scheduling)
|
259
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
260
|
+
@labels = args[:labels] if args.key?(:labels)
|
261
|
+
@license_type = args[:license_type] if args.key?(:license_type)
|
262
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
263
|
+
@machine_type_series = args[:machine_type_series] if args.key?(:machine_type_series)
|
264
|
+
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
265
|
+
@network_tags = args[:network_tags] if args.key?(:network_tags)
|
266
|
+
@service_account = args[:service_account] if args.key?(:service_account)
|
267
|
+
@target_project = args[:target_project] if args.key?(:target_project)
|
268
|
+
@vm_name = args[:vm_name] if args.key?(:vm_name)
|
269
|
+
@zone = args[:zone] if args.key?(:zone)
|
270
|
+
end
|
271
|
+
end
|
272
|
+
|
273
|
+
# ComputeEngineTargetDetails is a collection of details for creating a VM in a
|
274
|
+
# target Compute Engine project.
|
275
|
+
class ComputeEngineTargetDetails
|
276
|
+
include Google::Apis::Core::Hashable
|
277
|
+
|
278
|
+
# AppliedLicense holds the license data returned by adaptation module report.
|
279
|
+
# Corresponds to the JSON property `appliedLicense`
|
280
|
+
# @return [Google::Apis::VmmigrationV1::AppliedLicense]
|
281
|
+
attr_accessor :applied_license
|
282
|
+
|
283
|
+
# The VM Boot Option, as set in the source vm.
|
284
|
+
# Corresponds to the JSON property `bootOption`
|
285
|
+
# @return [String]
|
286
|
+
attr_accessor :boot_option
|
287
|
+
|
288
|
+
# Scheduling information for VM on maintenance/restart behaviour and node
|
289
|
+
# allocation in sole tenant nodes.
|
290
|
+
# Corresponds to the JSON property `computeScheduling`
|
291
|
+
# @return [Google::Apis::VmmigrationV1::ComputeScheduling]
|
292
|
+
attr_accessor :compute_scheduling
|
293
|
+
|
294
|
+
# The disk type to use in the VM.
|
295
|
+
# Corresponds to the JSON property `diskType`
|
296
|
+
# @return [String]
|
297
|
+
attr_accessor :disk_type
|
298
|
+
|
299
|
+
# A map of labels to associate with the VM.
|
300
|
+
# Corresponds to the JSON property `labels`
|
301
|
+
# @return [Hash<String,String>]
|
302
|
+
attr_accessor :labels
|
303
|
+
|
304
|
+
# The license type to use in OS adaptation.
|
305
|
+
# Corresponds to the JSON property `licenseType`
|
306
|
+
# @return [String]
|
307
|
+
attr_accessor :license_type
|
308
|
+
|
309
|
+
# The machine type to create the VM with.
|
310
|
+
# Corresponds to the JSON property `machineType`
|
311
|
+
# @return [String]
|
312
|
+
attr_accessor :machine_type
|
313
|
+
|
314
|
+
# The machine type series to create the VM with.
|
315
|
+
# Corresponds to the JSON property `machineTypeSeries`
|
316
|
+
# @return [String]
|
317
|
+
attr_accessor :machine_type_series
|
318
|
+
|
319
|
+
# The metadata key/value pairs to assign to the VM.
|
320
|
+
# Corresponds to the JSON property `metadata`
|
321
|
+
# @return [Hash<String,String>]
|
322
|
+
attr_accessor :metadata
|
323
|
+
|
324
|
+
# List of NICs connected to this VM.
|
325
|
+
# Corresponds to the JSON property `networkInterfaces`
|
326
|
+
# @return [Array<Google::Apis::VmmigrationV1::NetworkInterface>]
|
327
|
+
attr_accessor :network_interfaces
|
328
|
+
|
329
|
+
# A map of network tags to associate with the VM.
|
330
|
+
# Corresponds to the JSON property `networkTags`
|
331
|
+
# @return [Array<String>]
|
332
|
+
attr_accessor :network_tags
|
333
|
+
|
334
|
+
# The GCP target project ID or project name.
|
335
|
+
# Corresponds to the JSON property `project`
|
336
|
+
# @return [String]
|
337
|
+
attr_accessor :project
|
338
|
+
|
339
|
+
# Defines whether the instance has Secure Boot enabled. This can be set to true
|
340
|
+
# only if the vm boot option is EFI.
|
341
|
+
# Corresponds to the JSON property `secureBoot`
|
342
|
+
# @return [Boolean]
|
343
|
+
attr_accessor :secure_boot
|
344
|
+
alias_method :secure_boot?, :secure_boot
|
345
|
+
|
346
|
+
# The service account to associate the VM with.
|
347
|
+
# Corresponds to the JSON property `serviceAccount`
|
348
|
+
# @return [String]
|
349
|
+
attr_accessor :service_account
|
350
|
+
|
351
|
+
# The name of the VM to create.
|
352
|
+
# Corresponds to the JSON property `vmName`
|
353
|
+
# @return [String]
|
354
|
+
attr_accessor :vm_name
|
355
|
+
|
356
|
+
# The zone in which to create the VM.
|
357
|
+
# Corresponds to the JSON property `zone`
|
358
|
+
# @return [String]
|
359
|
+
attr_accessor :zone
|
360
|
+
|
361
|
+
def initialize(**args)
|
362
|
+
update!(**args)
|
363
|
+
end
|
364
|
+
|
365
|
+
# Update properties of this object
|
366
|
+
def update!(**args)
|
367
|
+
@applied_license = args[:applied_license] if args.key?(:applied_license)
|
368
|
+
@boot_option = args[:boot_option] if args.key?(:boot_option)
|
369
|
+
@compute_scheduling = args[:compute_scheduling] if args.key?(:compute_scheduling)
|
370
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
371
|
+
@labels = args[:labels] if args.key?(:labels)
|
372
|
+
@license_type = args[:license_type] if args.key?(:license_type)
|
373
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
374
|
+
@machine_type_series = args[:machine_type_series] if args.key?(:machine_type_series)
|
375
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
376
|
+
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
377
|
+
@network_tags = args[:network_tags] if args.key?(:network_tags)
|
378
|
+
@project = args[:project] if args.key?(:project)
|
379
|
+
@secure_boot = args[:secure_boot] if args.key?(:secure_boot)
|
380
|
+
@service_account = args[:service_account] if args.key?(:service_account)
|
381
|
+
@vm_name = args[:vm_name] if args.key?(:vm_name)
|
382
|
+
@zone = args[:zone] if args.key?(:zone)
|
383
|
+
end
|
384
|
+
end
|
385
|
+
|
386
|
+
# Scheduling information for VM on maintenance/restart behaviour and node
|
387
|
+
# allocation in sole tenant nodes.
|
388
|
+
class ComputeScheduling
|
389
|
+
include Google::Apis::Core::Hashable
|
390
|
+
|
391
|
+
# The minimum number of virtual CPUs this instance will consume when running on
|
392
|
+
# a sole-tenant node. Ignored if no node_affinites are configured.
|
393
|
+
# Corresponds to the JSON property `minNodeCpus`
|
394
|
+
# @return [Fixnum]
|
395
|
+
attr_accessor :min_node_cpus
|
396
|
+
|
397
|
+
# A set of node affinity and anti-affinity configurations for sole tenant nodes.
|
398
|
+
# Corresponds to the JSON property `nodeAffinities`
|
399
|
+
# @return [Array<Google::Apis::VmmigrationV1::SchedulingNodeAffinity>]
|
400
|
+
attr_accessor :node_affinities
|
401
|
+
|
402
|
+
# How the instance should behave when the host machine undergoes maintenance
|
403
|
+
# that may temporarily impact instance performance.
|
404
|
+
# Corresponds to the JSON property `onHostMaintenance`
|
405
|
+
# @return [String]
|
406
|
+
attr_accessor :on_host_maintenance
|
407
|
+
|
408
|
+
# Whether the Instance should be automatically restarted whenever it is
|
409
|
+
# terminated by Compute Engine (not terminated by user). This configuration is
|
410
|
+
# identical to `automaticRestart` field in Compute Engine create instance under
|
411
|
+
# scheduling. It was changed to an enum (instead of a boolean) to match the
|
412
|
+
# default value in Compute Engine which is automatic restart.
|
413
|
+
# Corresponds to the JSON property `restartType`
|
414
|
+
# @return [String]
|
415
|
+
attr_accessor :restart_type
|
416
|
+
|
417
|
+
def initialize(**args)
|
418
|
+
update!(**args)
|
419
|
+
end
|
420
|
+
|
421
|
+
# Update properties of this object
|
422
|
+
def update!(**args)
|
423
|
+
@min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
|
424
|
+
@node_affinities = args[:node_affinities] if args.key?(:node_affinities)
|
425
|
+
@on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)
|
426
|
+
@restart_type = args[:restart_type] if args.key?(:restart_type)
|
427
|
+
end
|
428
|
+
end
|
429
|
+
|
430
|
+
# CutoverJob message describes a cutover of a migrating VM. The CutoverJob is
|
431
|
+
# the operation of shutting down the VM, creating a snapshot and clonning the VM
|
432
|
+
# using the replicated snapshot.
|
433
|
+
class CutoverJob
|
434
|
+
include Google::Apis::Core::Hashable
|
435
|
+
|
436
|
+
# ComputeEngineTargetDetails is a collection of details for creating a VM in a
|
437
|
+
# target Compute Engine project.
|
438
|
+
# Corresponds to the JSON property `computeEngineTargetDetails`
|
439
|
+
# @return [Google::Apis::VmmigrationV1::ComputeEngineTargetDetails]
|
440
|
+
attr_accessor :compute_engine_target_details
|
441
|
+
|
442
|
+
# TargetVMDetails is a collection of details for creating a VM in a target
|
443
|
+
# Compute Engine project.
|
444
|
+
# Corresponds to the JSON property `computeEngineVmDetails`
|
445
|
+
# @return [Google::Apis::VmmigrationV1::TargetVmDetails]
|
446
|
+
attr_accessor :compute_engine_vm_details
|
447
|
+
|
448
|
+
# Output only. The time the cutover job was created (as an API call, not when it
|
449
|
+
# was actually created in the target).
|
450
|
+
# Corresponds to the JSON property `createTime`
|
451
|
+
# @return [String]
|
452
|
+
attr_accessor :create_time
|
453
|
+
|
454
|
+
# The `Status` type defines a logical error model that is suitable for different
|
455
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
456
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
457
|
+
# data: error code, error message, and error details. You can find out more
|
458
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
459
|
+
# //cloud.google.com/apis/design/errors).
|
460
|
+
# Corresponds to the JSON property `error`
|
461
|
+
# @return [Google::Apis::VmmigrationV1::Status]
|
462
|
+
attr_accessor :error
|
463
|
+
|
464
|
+
# Output only. The name of the cutover job.
|
465
|
+
# Corresponds to the JSON property `name`
|
466
|
+
# @return [String]
|
467
|
+
attr_accessor :name
|
468
|
+
|
469
|
+
# Output only. The current progress in percentage of the cutover job.
|
470
|
+
# Corresponds to the JSON property `progressPercent`
|
471
|
+
# @return [Fixnum]
|
472
|
+
attr_accessor :progress_percent
|
473
|
+
|
474
|
+
# Output only. State of the cutover job.
|
475
|
+
# Corresponds to the JSON property `state`
|
476
|
+
# @return [String]
|
477
|
+
attr_accessor :state
|
478
|
+
|
479
|
+
# Output only. A message providing possible extra details about the current
|
480
|
+
# state.
|
481
|
+
# Corresponds to the JSON property `stateMessage`
|
482
|
+
# @return [String]
|
483
|
+
attr_accessor :state_message
|
484
|
+
|
485
|
+
# Output only. The time the state was last updated.
|
486
|
+
# Corresponds to the JSON property `stateTime`
|
487
|
+
# @return [String]
|
488
|
+
attr_accessor :state_time
|
489
|
+
|
490
|
+
def initialize(**args)
|
491
|
+
update!(**args)
|
492
|
+
end
|
493
|
+
|
494
|
+
# Update properties of this object
|
495
|
+
def update!(**args)
|
496
|
+
@compute_engine_target_details = args[:compute_engine_target_details] if args.key?(:compute_engine_target_details)
|
497
|
+
@compute_engine_vm_details = args[:compute_engine_vm_details] if args.key?(:compute_engine_vm_details)
|
498
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
499
|
+
@error = args[:error] if args.key?(:error)
|
500
|
+
@name = args[:name] if args.key?(:name)
|
501
|
+
@progress_percent = args[:progress_percent] if args.key?(:progress_percent)
|
502
|
+
@state = args[:state] if args.key?(:state)
|
503
|
+
@state_message = args[:state_message] if args.key?(:state_message)
|
504
|
+
@state_time = args[:state_time] if args.key?(:state_time)
|
505
|
+
end
|
506
|
+
end
|
507
|
+
|
508
|
+
# DatacenterConnector message describes a connector between the Source and GCP,
|
509
|
+
# which is installed on a vmware datacenter (an OVA vm installed by the user) to
|
510
|
+
# connect the Datacenter to GCP and support vm migration data transfer.
|
511
|
+
class DatacenterConnector
|
512
|
+
include Google::Apis::Core::Hashable
|
513
|
+
|
514
|
+
# Output only. The communication channel between the datacenter connector and
|
515
|
+
# GCP.
|
516
|
+
# Corresponds to the JSON property `bucket`
|
517
|
+
# @return [String]
|
518
|
+
attr_accessor :bucket
|
519
|
+
|
520
|
+
# Output only. The time the connector was created (as an API call, not when it
|
521
|
+
# was actually installed).
|
522
|
+
# Corresponds to the JSON property `createTime`
|
523
|
+
# @return [String]
|
524
|
+
attr_accessor :create_time
|
525
|
+
|
526
|
+
# The `Status` type defines a logical error model that is suitable for different
|
527
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
528
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
529
|
+
# data: error code, error message, and error details. You can find out more
|
530
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
531
|
+
# //cloud.google.com/apis/design/errors).
|
532
|
+
# Corresponds to the JSON property `error`
|
533
|
+
# @return [Google::Apis::VmmigrationV1::Status]
|
534
|
+
attr_accessor :error
|
535
|
+
|
536
|
+
# Output only. The connector's name.
|
537
|
+
# Corresponds to the JSON property `name`
|
538
|
+
# @return [String]
|
539
|
+
attr_accessor :name
|
540
|
+
|
541
|
+
# Immutable. A unique key for this connector. This key is internal to the OVA
|
542
|
+
# connector and is supplied with its creation during the registration process
|
543
|
+
# and can not be modified.
|
544
|
+
# Corresponds to the JSON property `registrationId`
|
545
|
+
# @return [String]
|
546
|
+
attr_accessor :registration_id
|
547
|
+
|
548
|
+
# The service account to use in the connector when communicating with the cloud.
|
549
|
+
# Corresponds to the JSON property `serviceAccount`
|
550
|
+
# @return [String]
|
551
|
+
attr_accessor :service_account
|
552
|
+
|
553
|
+
# Output only. State of the DatacenterConnector, as determined by the health
|
554
|
+
# checks.
|
555
|
+
# Corresponds to the JSON property `state`
|
556
|
+
# @return [String]
|
557
|
+
attr_accessor :state
|
558
|
+
|
559
|
+
# Output only. The time the state was last set.
|
560
|
+
# Corresponds to the JSON property `stateTime`
|
561
|
+
# @return [String]
|
562
|
+
attr_accessor :state_time
|
563
|
+
|
564
|
+
# Output only. The last time the connector was updated with an API call.
|
565
|
+
# Corresponds to the JSON property `updateTime`
|
566
|
+
# @return [String]
|
567
|
+
attr_accessor :update_time
|
568
|
+
|
569
|
+
# The version running in the DatacenterConnector. This is supplied by the OVA
|
570
|
+
# connector during the registration process and can not be modified.
|
571
|
+
# Corresponds to the JSON property `version`
|
572
|
+
# @return [String]
|
573
|
+
attr_accessor :version
|
574
|
+
|
575
|
+
def initialize(**args)
|
576
|
+
update!(**args)
|
577
|
+
end
|
578
|
+
|
579
|
+
# Update properties of this object
|
580
|
+
def update!(**args)
|
581
|
+
@bucket = args[:bucket] if args.key?(:bucket)
|
582
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
583
|
+
@error = args[:error] if args.key?(:error)
|
584
|
+
@name = args[:name] if args.key?(:name)
|
585
|
+
@registration_id = args[:registration_id] if args.key?(:registration_id)
|
586
|
+
@service_account = args[:service_account] if args.key?(:service_account)
|
587
|
+
@state = args[:state] if args.key?(:state)
|
588
|
+
@state_time = args[:state_time] if args.key?(:state_time)
|
589
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
590
|
+
@version = args[:version] if args.key?(:version)
|
591
|
+
end
|
592
|
+
end
|
593
|
+
|
594
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
595
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
596
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
597
|
+
# protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
|
598
|
+
# `Empty` is empty JSON object ````.
|
599
|
+
class Empty
|
600
|
+
include Google::Apis::Core::Hashable
|
601
|
+
|
602
|
+
def initialize(**args)
|
603
|
+
update!(**args)
|
604
|
+
end
|
605
|
+
|
606
|
+
# Update properties of this object
|
607
|
+
def update!(**args)
|
608
|
+
end
|
609
|
+
end
|
610
|
+
|
611
|
+
# Response message for fetchInventory.
|
612
|
+
class FetchInventoryResponse
|
613
|
+
include Google::Apis::Core::Hashable
|
614
|
+
|
615
|
+
# Output only. The timestamp when the source was last queried (if the result is
|
616
|
+
# from the cache).
|
617
|
+
# Corresponds to the JSON property `updateTime`
|
618
|
+
# @return [String]
|
619
|
+
attr_accessor :update_time
|
620
|
+
|
621
|
+
# VmwareVmsDetails describes VMs in vCenter.
|
622
|
+
# Corresponds to the JSON property `vmwareVms`
|
623
|
+
# @return [Google::Apis::VmmigrationV1::VmwareVmsDetails]
|
624
|
+
attr_accessor :vmware_vms
|
625
|
+
|
626
|
+
def initialize(**args)
|
627
|
+
update!(**args)
|
628
|
+
end
|
629
|
+
|
630
|
+
# Update properties of this object
|
631
|
+
def update!(**args)
|
632
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
633
|
+
@vmware_vms = args[:vmware_vms] if args.key?(:vmware_vms)
|
634
|
+
end
|
635
|
+
end
|
636
|
+
|
637
|
+
# Request message for 'FinalizeMigration' request.
|
638
|
+
class FinalizeMigrationRequest
|
639
|
+
include Google::Apis::Core::Hashable
|
640
|
+
|
641
|
+
def initialize(**args)
|
642
|
+
update!(**args)
|
643
|
+
end
|
644
|
+
|
645
|
+
# Update properties of this object
|
646
|
+
def update!(**args)
|
647
|
+
end
|
648
|
+
end
|
649
|
+
|
650
|
+
# Describes message for 'Group' resource. The Group is a collections of several
|
651
|
+
# MigratingVms.
|
652
|
+
class Group
|
653
|
+
include Google::Apis::Core::Hashable
|
654
|
+
|
655
|
+
# Output only. The create time timestamp.
|
656
|
+
# Corresponds to the JSON property `createTime`
|
657
|
+
# @return [String]
|
658
|
+
attr_accessor :create_time
|
659
|
+
|
660
|
+
# User-provided description of the group.
|
661
|
+
# Corresponds to the JSON property `description`
|
662
|
+
# @return [String]
|
663
|
+
attr_accessor :description
|
664
|
+
|
665
|
+
# Display name is a user defined name for this group which can be updated.
|
666
|
+
# Corresponds to the JSON property `displayName`
|
667
|
+
# @return [String]
|
668
|
+
attr_accessor :display_name
|
669
|
+
|
670
|
+
# The Group name.
|
671
|
+
# Corresponds to the JSON property `name`
|
672
|
+
# @return [String]
|
673
|
+
attr_accessor :name
|
674
|
+
|
675
|
+
# Output only. The update time timestamp.
|
676
|
+
# Corresponds to the JSON property `updateTime`
|
677
|
+
# @return [String]
|
678
|
+
attr_accessor :update_time
|
679
|
+
|
680
|
+
def initialize(**args)
|
681
|
+
update!(**args)
|
682
|
+
end
|
683
|
+
|
684
|
+
# Update properties of this object
|
685
|
+
def update!(**args)
|
686
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
687
|
+
@description = args[:description] if args.key?(:description)
|
688
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
689
|
+
@name = args[:name] if args.key?(:name)
|
690
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
691
|
+
end
|
692
|
+
end
|
693
|
+
|
694
|
+
# Describes a URL link.
|
695
|
+
class Link
|
696
|
+
include Google::Apis::Core::Hashable
|
697
|
+
|
698
|
+
# Describes what the link offers.
|
699
|
+
# Corresponds to the JSON property `description`
|
700
|
+
# @return [String]
|
701
|
+
attr_accessor :description
|
702
|
+
|
703
|
+
# The URL of the link.
|
704
|
+
# Corresponds to the JSON property `url`
|
705
|
+
# @return [String]
|
706
|
+
attr_accessor :url
|
707
|
+
|
708
|
+
def initialize(**args)
|
709
|
+
update!(**args)
|
710
|
+
end
|
711
|
+
|
712
|
+
# Update properties of this object
|
713
|
+
def update!(**args)
|
714
|
+
@description = args[:description] if args.key?(:description)
|
715
|
+
@url = args[:url] if args.key?(:url)
|
716
|
+
end
|
717
|
+
end
|
718
|
+
|
719
|
+
# Response message for 'ListCloneJobs' request.
|
720
|
+
class ListCloneJobsResponse
|
721
|
+
include Google::Apis::Core::Hashable
|
722
|
+
|
723
|
+
# Output only. The list of clone jobs response.
|
724
|
+
# Corresponds to the JSON property `cloneJobs`
|
725
|
+
# @return [Array<Google::Apis::VmmigrationV1::CloneJob>]
|
726
|
+
attr_accessor :clone_jobs
|
727
|
+
|
728
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
729
|
+
# page. If this field is omitted, there are no subsequent pages.
|
730
|
+
# Corresponds to the JSON property `nextPageToken`
|
731
|
+
# @return [String]
|
732
|
+
attr_accessor :next_page_token
|
733
|
+
|
734
|
+
# Output only. Locations that could not be reached.
|
735
|
+
# Corresponds to the JSON property `unreachable`
|
736
|
+
# @return [Array<String>]
|
737
|
+
attr_accessor :unreachable
|
738
|
+
|
739
|
+
def initialize(**args)
|
740
|
+
update!(**args)
|
741
|
+
end
|
742
|
+
|
743
|
+
# Update properties of this object
|
744
|
+
def update!(**args)
|
745
|
+
@clone_jobs = args[:clone_jobs] if args.key?(:clone_jobs)
|
746
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
747
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
748
|
+
end
|
749
|
+
end
|
750
|
+
|
751
|
+
# Response message for 'ListCutoverJobs' request.
|
752
|
+
class ListCutoverJobsResponse
|
753
|
+
include Google::Apis::Core::Hashable
|
754
|
+
|
755
|
+
# Output only. The list of cutover jobs response.
|
756
|
+
# Corresponds to the JSON property `cutoverJobs`
|
757
|
+
# @return [Array<Google::Apis::VmmigrationV1::CutoverJob>]
|
758
|
+
attr_accessor :cutover_jobs
|
759
|
+
|
760
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
761
|
+
# page. If this field is omitted, there are no subsequent pages.
|
762
|
+
# Corresponds to the JSON property `nextPageToken`
|
763
|
+
# @return [String]
|
764
|
+
attr_accessor :next_page_token
|
765
|
+
|
766
|
+
# Output only. Locations that could not be reached.
|
767
|
+
# Corresponds to the JSON property `unreachable`
|
768
|
+
# @return [Array<String>]
|
769
|
+
attr_accessor :unreachable
|
770
|
+
|
771
|
+
def initialize(**args)
|
772
|
+
update!(**args)
|
773
|
+
end
|
774
|
+
|
775
|
+
# Update properties of this object
|
776
|
+
def update!(**args)
|
777
|
+
@cutover_jobs = args[:cutover_jobs] if args.key?(:cutover_jobs)
|
778
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
779
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
780
|
+
end
|
781
|
+
end
|
782
|
+
|
783
|
+
# Response message for 'ListDatacenterConnectors' request.
|
784
|
+
class ListDatacenterConnectorsResponse
|
785
|
+
include Google::Apis::Core::Hashable
|
786
|
+
|
787
|
+
# Output only. The list of sources response.
|
788
|
+
# Corresponds to the JSON property `datacenterConnectors`
|
789
|
+
# @return [Array<Google::Apis::VmmigrationV1::DatacenterConnector>]
|
790
|
+
attr_accessor :datacenter_connectors
|
791
|
+
|
792
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
793
|
+
# page. If this field is omitted, there are no subsequent pages.
|
794
|
+
# Corresponds to the JSON property `nextPageToken`
|
795
|
+
# @return [String]
|
796
|
+
attr_accessor :next_page_token
|
797
|
+
|
798
|
+
# Output only. Locations that could not be reached.
|
799
|
+
# Corresponds to the JSON property `unreachable`
|
800
|
+
# @return [Array<String>]
|
801
|
+
attr_accessor :unreachable
|
802
|
+
|
803
|
+
def initialize(**args)
|
804
|
+
update!(**args)
|
805
|
+
end
|
806
|
+
|
807
|
+
# Update properties of this object
|
808
|
+
def update!(**args)
|
809
|
+
@datacenter_connectors = args[:datacenter_connectors] if args.key?(:datacenter_connectors)
|
810
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
811
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
812
|
+
end
|
813
|
+
end
|
814
|
+
|
815
|
+
# Response message for 'ListGroups' request.
|
816
|
+
class ListGroupsResponse
|
817
|
+
include Google::Apis::Core::Hashable
|
818
|
+
|
819
|
+
# Output only. The list of groups response.
|
820
|
+
# Corresponds to the JSON property `groups`
|
821
|
+
# @return [Array<Google::Apis::VmmigrationV1::Group>]
|
822
|
+
attr_accessor :groups
|
823
|
+
|
824
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
825
|
+
# page. If this field is omitted, there are no subsequent pages.
|
826
|
+
# Corresponds to the JSON property `nextPageToken`
|
827
|
+
# @return [String]
|
828
|
+
attr_accessor :next_page_token
|
829
|
+
|
830
|
+
# Output only. Locations that could not be reached.
|
831
|
+
# Corresponds to the JSON property `unreachable`
|
832
|
+
# @return [Array<String>]
|
833
|
+
attr_accessor :unreachable
|
834
|
+
|
835
|
+
def initialize(**args)
|
836
|
+
update!(**args)
|
837
|
+
end
|
838
|
+
|
839
|
+
# Update properties of this object
|
840
|
+
def update!(**args)
|
841
|
+
@groups = args[:groups] if args.key?(:groups)
|
842
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
843
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
844
|
+
end
|
845
|
+
end
|
846
|
+
|
847
|
+
# The response message for Locations.ListLocations.
|
848
|
+
class ListLocationsResponse
|
849
|
+
include Google::Apis::Core::Hashable
|
850
|
+
|
851
|
+
# A list of locations that matches the specified filter in the request.
|
852
|
+
# Corresponds to the JSON property `locations`
|
853
|
+
# @return [Array<Google::Apis::VmmigrationV1::Location>]
|
854
|
+
attr_accessor :locations
|
855
|
+
|
856
|
+
# The standard List next-page token.
|
857
|
+
# Corresponds to the JSON property `nextPageToken`
|
858
|
+
# @return [String]
|
859
|
+
attr_accessor :next_page_token
|
860
|
+
|
861
|
+
def initialize(**args)
|
862
|
+
update!(**args)
|
863
|
+
end
|
864
|
+
|
865
|
+
# Update properties of this object
|
866
|
+
def update!(**args)
|
867
|
+
@locations = args[:locations] if args.key?(:locations)
|
868
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
869
|
+
end
|
870
|
+
end
|
871
|
+
|
872
|
+
# Response message for 'ListMigratingVms' request.
|
873
|
+
class ListMigratingVmsResponse
|
874
|
+
include Google::Apis::Core::Hashable
|
875
|
+
|
876
|
+
# Output only. The list of Migrating VMs response.
|
877
|
+
# Corresponds to the JSON property `migratingVms`
|
878
|
+
# @return [Array<Google::Apis::VmmigrationV1::MigratingVm>]
|
879
|
+
attr_accessor :migrating_vms
|
880
|
+
|
881
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
882
|
+
# page. If this field is omitted, there are no subsequent pages.
|
883
|
+
# Corresponds to the JSON property `nextPageToken`
|
884
|
+
# @return [String]
|
885
|
+
attr_accessor :next_page_token
|
886
|
+
|
887
|
+
# Output only. Locations that could not be reached.
|
888
|
+
# Corresponds to the JSON property `unreachable`
|
889
|
+
# @return [Array<String>]
|
890
|
+
attr_accessor :unreachable
|
891
|
+
|
892
|
+
def initialize(**args)
|
893
|
+
update!(**args)
|
894
|
+
end
|
895
|
+
|
896
|
+
# Update properties of this object
|
897
|
+
def update!(**args)
|
898
|
+
@migrating_vms = args[:migrating_vms] if args.key?(:migrating_vms)
|
899
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
900
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
901
|
+
end
|
902
|
+
end
|
903
|
+
|
904
|
+
# The response message for Operations.ListOperations.
|
905
|
+
class ListOperationsResponse
|
906
|
+
include Google::Apis::Core::Hashable
|
907
|
+
|
908
|
+
# The standard List next-page token.
|
909
|
+
# Corresponds to the JSON property `nextPageToken`
|
910
|
+
# @return [String]
|
911
|
+
attr_accessor :next_page_token
|
912
|
+
|
913
|
+
# A list of operations that matches the specified filter in the request.
|
914
|
+
# Corresponds to the JSON property `operations`
|
915
|
+
# @return [Array<Google::Apis::VmmigrationV1::Operation>]
|
916
|
+
attr_accessor :operations
|
917
|
+
|
918
|
+
def initialize(**args)
|
919
|
+
update!(**args)
|
920
|
+
end
|
921
|
+
|
922
|
+
# Update properties of this object
|
923
|
+
def update!(**args)
|
924
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
925
|
+
@operations = args[:operations] if args.key?(:operations)
|
926
|
+
end
|
927
|
+
end
|
928
|
+
|
929
|
+
# Response message for 'ListSources' request.
|
930
|
+
class ListSourcesResponse
|
931
|
+
include Google::Apis::Core::Hashable
|
932
|
+
|
933
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
934
|
+
# page. If this field is omitted, there are no subsequent pages.
|
935
|
+
# Corresponds to the JSON property `nextPageToken`
|
936
|
+
# @return [String]
|
937
|
+
attr_accessor :next_page_token
|
938
|
+
|
939
|
+
# Output only. The list of sources response.
|
940
|
+
# Corresponds to the JSON property `sources`
|
941
|
+
# @return [Array<Google::Apis::VmmigrationV1::Source>]
|
942
|
+
attr_accessor :sources
|
943
|
+
|
944
|
+
# Output only. Locations that could not be reached.
|
945
|
+
# Corresponds to the JSON property `unreachable`
|
946
|
+
# @return [Array<String>]
|
947
|
+
attr_accessor :unreachable
|
948
|
+
|
949
|
+
def initialize(**args)
|
950
|
+
update!(**args)
|
951
|
+
end
|
952
|
+
|
953
|
+
# Update properties of this object
|
954
|
+
def update!(**args)
|
955
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
956
|
+
@sources = args[:sources] if args.key?(:sources)
|
957
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
958
|
+
end
|
959
|
+
end
|
960
|
+
|
961
|
+
# Response message for 'ListTargetProjects' call.
|
962
|
+
class ListTargetProjectsResponse
|
963
|
+
include Google::Apis::Core::Hashable
|
964
|
+
|
965
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
966
|
+
# page. If this field is omitted, there are no subsequent pages.
|
967
|
+
# Corresponds to the JSON property `nextPageToken`
|
968
|
+
# @return [String]
|
969
|
+
attr_accessor :next_page_token
|
970
|
+
|
971
|
+
# Output only. The list of target response.
|
972
|
+
# Corresponds to the JSON property `targetProjects`
|
973
|
+
# @return [Array<Google::Apis::VmmigrationV1::TargetProject>]
|
974
|
+
attr_accessor :target_projects
|
975
|
+
|
976
|
+
# Output only. Locations that could not be reached.
|
977
|
+
# Corresponds to the JSON property `unreachable`
|
978
|
+
# @return [Array<String>]
|
979
|
+
attr_accessor :unreachable
|
980
|
+
|
981
|
+
def initialize(**args)
|
982
|
+
update!(**args)
|
983
|
+
end
|
984
|
+
|
985
|
+
# Update properties of this object
|
986
|
+
def update!(**args)
|
987
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
988
|
+
@target_projects = args[:target_projects] if args.key?(:target_projects)
|
989
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
990
|
+
end
|
991
|
+
end
|
992
|
+
|
993
|
+
# Response message for 'ListUtilizationReports' request.
|
994
|
+
class ListUtilizationReportsResponse
|
995
|
+
include Google::Apis::Core::Hashable
|
996
|
+
|
997
|
+
# Output only. A token, which can be sent as `page_token` to retrieve the next
|
998
|
+
# page. If this field is omitted, there are no subsequent pages.
|
999
|
+
# Corresponds to the JSON property `nextPageToken`
|
1000
|
+
# @return [String]
|
1001
|
+
attr_accessor :next_page_token
|
1002
|
+
|
1003
|
+
# Output only. Locations that could not be reached.
|
1004
|
+
# Corresponds to the JSON property `unreachable`
|
1005
|
+
# @return [Array<String>]
|
1006
|
+
attr_accessor :unreachable
|
1007
|
+
|
1008
|
+
# Output only. The list of reports.
|
1009
|
+
# Corresponds to the JSON property `utilizationReports`
|
1010
|
+
# @return [Array<Google::Apis::VmmigrationV1::UtilizationReport>]
|
1011
|
+
attr_accessor :utilization_reports
|
1012
|
+
|
1013
|
+
def initialize(**args)
|
1014
|
+
update!(**args)
|
1015
|
+
end
|
1016
|
+
|
1017
|
+
# Update properties of this object
|
1018
|
+
def update!(**args)
|
1019
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1020
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
1021
|
+
@utilization_reports = args[:utilization_reports] if args.key?(:utilization_reports)
|
1022
|
+
end
|
1023
|
+
end
|
1024
|
+
|
1025
|
+
# Provides a localized error message that is safe to return to the user which
|
1026
|
+
# can be attached to an RPC error.
|
1027
|
+
class LocalizedMessage
|
1028
|
+
include Google::Apis::Core::Hashable
|
1029
|
+
|
1030
|
+
# The locale used following the specification defined at http://www.rfc-editor.
|
1031
|
+
# org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
|
1032
|
+
# Corresponds to the JSON property `locale`
|
1033
|
+
# @return [String]
|
1034
|
+
attr_accessor :locale
|
1035
|
+
|
1036
|
+
# The localized error message in the above locale.
|
1037
|
+
# Corresponds to the JSON property `message`
|
1038
|
+
# @return [String]
|
1039
|
+
attr_accessor :message
|
1040
|
+
|
1041
|
+
def initialize(**args)
|
1042
|
+
update!(**args)
|
1043
|
+
end
|
1044
|
+
|
1045
|
+
# Update properties of this object
|
1046
|
+
def update!(**args)
|
1047
|
+
@locale = args[:locale] if args.key?(:locale)
|
1048
|
+
@message = args[:message] if args.key?(:message)
|
1049
|
+
end
|
1050
|
+
end
|
1051
|
+
|
1052
|
+
# A resource that represents Google Cloud Platform location.
|
1053
|
+
class Location
|
1054
|
+
include Google::Apis::Core::Hashable
|
1055
|
+
|
1056
|
+
# The friendly name for this location, typically a nearby city name. For example,
|
1057
|
+
# "Tokyo".
|
1058
|
+
# Corresponds to the JSON property `displayName`
|
1059
|
+
# @return [String]
|
1060
|
+
attr_accessor :display_name
|
1061
|
+
|
1062
|
+
# Cross-service attributes for the location. For example `"cloud.googleapis.com/
|
1063
|
+
# region": "us-east1"`
|
1064
|
+
# Corresponds to the JSON property `labels`
|
1065
|
+
# @return [Hash<String,String>]
|
1066
|
+
attr_accessor :labels
|
1067
|
+
|
1068
|
+
# The canonical id for this location. For example: `"us-east1"`.
|
1069
|
+
# Corresponds to the JSON property `locationId`
|
1070
|
+
# @return [String]
|
1071
|
+
attr_accessor :location_id
|
1072
|
+
|
1073
|
+
# Service-specific metadata. For example the available capacity at the given
|
1074
|
+
# location.
|
1075
|
+
# Corresponds to the JSON property `metadata`
|
1076
|
+
# @return [Hash<String,Object>]
|
1077
|
+
attr_accessor :metadata
|
1078
|
+
|
1079
|
+
# Resource name for the location, which may vary between implementations. For
|
1080
|
+
# example: `"projects/example-project/locations/us-east1"`
|
1081
|
+
# Corresponds to the JSON property `name`
|
1082
|
+
# @return [String]
|
1083
|
+
attr_accessor :name
|
1084
|
+
|
1085
|
+
def initialize(**args)
|
1086
|
+
update!(**args)
|
1087
|
+
end
|
1088
|
+
|
1089
|
+
# Update properties of this object
|
1090
|
+
def update!(**args)
|
1091
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1092
|
+
@labels = args[:labels] if args.key?(:labels)
|
1093
|
+
@location_id = args[:location_id] if args.key?(:location_id)
|
1094
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1095
|
+
@name = args[:name] if args.key?(:name)
|
1096
|
+
end
|
1097
|
+
end
|
1098
|
+
|
1099
|
+
# MigratingVm describes the VM that will be migrated from a Source environment
|
1100
|
+
# and its replication state.
|
1101
|
+
class MigratingVm
|
1102
|
+
include Google::Apis::Core::Hashable
|
1103
|
+
|
1104
|
+
# ComputeEngineTargetDefaults is a collection of details for creating a VM in a
|
1105
|
+
# target Compute Engine project.
|
1106
|
+
# Corresponds to the JSON property `computeEngineTargetDefaults`
|
1107
|
+
# @return [Google::Apis::VmmigrationV1::ComputeEngineTargetDefaults]
|
1108
|
+
attr_accessor :compute_engine_target_defaults
|
1109
|
+
|
1110
|
+
# Output only. The time the migrating VM was created (this refers to this
|
1111
|
+
# resource and not to the time it was installed in the source).
|
1112
|
+
# Corresponds to the JSON property `createTime`
|
1113
|
+
# @return [String]
|
1114
|
+
attr_accessor :create_time
|
1115
|
+
|
1116
|
+
# ReplicationCycle contains information about the current replication cycle
|
1117
|
+
# status.
|
1118
|
+
# Corresponds to the JSON property `currentSyncInfo`
|
1119
|
+
# @return [Google::Apis::VmmigrationV1::ReplicationCycle]
|
1120
|
+
attr_accessor :current_sync_info
|
1121
|
+
|
1122
|
+
# The description attached to the migrating VM by the user.
|
1123
|
+
# Corresponds to the JSON property `description`
|
1124
|
+
# @return [String]
|
1125
|
+
attr_accessor :description
|
1126
|
+
|
1127
|
+
# The display name attached to the MigratingVm by the user.
|
1128
|
+
# Corresponds to the JSON property `displayName`
|
1129
|
+
# @return [String]
|
1130
|
+
attr_accessor :display_name
|
1131
|
+
|
1132
|
+
# The `Status` type defines a logical error model that is suitable for different
|
1133
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1134
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
1135
|
+
# data: error code, error message, and error details. You can find out more
|
1136
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
1137
|
+
# //cloud.google.com/apis/design/errors).
|
1138
|
+
# Corresponds to the JSON property `error`
|
1139
|
+
# @return [Google::Apis::VmmigrationV1::Status]
|
1140
|
+
attr_accessor :error
|
1141
|
+
|
1142
|
+
# Output only. The group this migrating vm is included in, if any. The group is
|
1143
|
+
# represented by the full path of the appropriate Group resource.
|
1144
|
+
# Corresponds to the JSON property `group`
|
1145
|
+
# @return [String]
|
1146
|
+
attr_accessor :group
|
1147
|
+
|
1148
|
+
# The labels of the migrating VM.
|
1149
|
+
# Corresponds to the JSON property `labels`
|
1150
|
+
# @return [Hash<String,String>]
|
1151
|
+
attr_accessor :labels
|
1152
|
+
|
1153
|
+
# ReplicationSync contain information about the last replica sync to the cloud.
|
1154
|
+
# Corresponds to the JSON property `lastSync`
|
1155
|
+
# @return [Google::Apis::VmmigrationV1::ReplicationSync]
|
1156
|
+
attr_accessor :last_sync
|
1157
|
+
|
1158
|
+
# Output only. The identifier of the MigratingVm.
|
1159
|
+
# Corresponds to the JSON property `name`
|
1160
|
+
# @return [String]
|
1161
|
+
attr_accessor :name
|
1162
|
+
|
1163
|
+
# A policy for scheduling replications.
|
1164
|
+
# Corresponds to the JSON property `policy`
|
1165
|
+
# @return [Google::Apis::VmmigrationV1::SchedulePolicy]
|
1166
|
+
attr_accessor :policy
|
1167
|
+
|
1168
|
+
# The unique ID of the VM in the source. The VM's name in vSphere can be changed,
|
1169
|
+
# so this is not the VM's name but rather its moRef id. This id is of the form
|
1170
|
+
# vm-.
|
1171
|
+
# Corresponds to the JSON property `sourceVmId`
|
1172
|
+
# @return [String]
|
1173
|
+
attr_accessor :source_vm_id
|
1174
|
+
|
1175
|
+
# Output only. State of the MigratingVm.
|
1176
|
+
# Corresponds to the JSON property `state`
|
1177
|
+
# @return [String]
|
1178
|
+
attr_accessor :state
|
1179
|
+
|
1180
|
+
# Output only. The last time the migrating VM state was updated.
|
1181
|
+
# Corresponds to the JSON property `stateTime`
|
1182
|
+
# @return [String]
|
1183
|
+
attr_accessor :state_time
|
1184
|
+
|
1185
|
+
# Output only. The last time the migrating VM resource was updated.
|
1186
|
+
# Corresponds to the JSON property `updateTime`
|
1187
|
+
# @return [String]
|
1188
|
+
attr_accessor :update_time
|
1189
|
+
|
1190
|
+
def initialize(**args)
|
1191
|
+
update!(**args)
|
1192
|
+
end
|
1193
|
+
|
1194
|
+
# Update properties of this object
|
1195
|
+
def update!(**args)
|
1196
|
+
@compute_engine_target_defaults = args[:compute_engine_target_defaults] if args.key?(:compute_engine_target_defaults)
|
1197
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1198
|
+
@current_sync_info = args[:current_sync_info] if args.key?(:current_sync_info)
|
1199
|
+
@description = args[:description] if args.key?(:description)
|
1200
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1201
|
+
@error = args[:error] if args.key?(:error)
|
1202
|
+
@group = args[:group] if args.key?(:group)
|
1203
|
+
@labels = args[:labels] if args.key?(:labels)
|
1204
|
+
@last_sync = args[:last_sync] if args.key?(:last_sync)
|
1205
|
+
@name = args[:name] if args.key?(:name)
|
1206
|
+
@policy = args[:policy] if args.key?(:policy)
|
1207
|
+
@source_vm_id = args[:source_vm_id] if args.key?(:source_vm_id)
|
1208
|
+
@state = args[:state] if args.key?(:state)
|
1209
|
+
@state_time = args[:state_time] if args.key?(:state_time)
|
1210
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1211
|
+
end
|
1212
|
+
end
|
1213
|
+
|
1214
|
+
# Represents migration resource error information that can be used with google.
|
1215
|
+
# rpc.Status message. MigrationError is used to present the user with error
|
1216
|
+
# information in migration operations.
|
1217
|
+
class MigrationError
|
1218
|
+
include Google::Apis::Core::Hashable
|
1219
|
+
|
1220
|
+
# Provides a localized error message that is safe to return to the user which
|
1221
|
+
# can be attached to an RPC error.
|
1222
|
+
# Corresponds to the JSON property `actionItem`
|
1223
|
+
# @return [Google::Apis::VmmigrationV1::LocalizedMessage]
|
1224
|
+
attr_accessor :action_item
|
1225
|
+
|
1226
|
+
# Output only. The error code.
|
1227
|
+
# Corresponds to the JSON property `code`
|
1228
|
+
# @return [String]
|
1229
|
+
attr_accessor :code
|
1230
|
+
|
1231
|
+
# Provides a localized error message that is safe to return to the user which
|
1232
|
+
# can be attached to an RPC error.
|
1233
|
+
# Corresponds to the JSON property `errorMessage`
|
1234
|
+
# @return [Google::Apis::VmmigrationV1::LocalizedMessage]
|
1235
|
+
attr_accessor :error_message
|
1236
|
+
|
1237
|
+
# Output only. The time the error occurred.
|
1238
|
+
# Corresponds to the JSON property `errorTime`
|
1239
|
+
# @return [String]
|
1240
|
+
attr_accessor :error_time
|
1241
|
+
|
1242
|
+
# Output only. URL(s) pointing to additional information on handling the current
|
1243
|
+
# error.
|
1244
|
+
# Corresponds to the JSON property `helpLinks`
|
1245
|
+
# @return [Array<Google::Apis::VmmigrationV1::Link>]
|
1246
|
+
attr_accessor :help_links
|
1247
|
+
|
1248
|
+
def initialize(**args)
|
1249
|
+
update!(**args)
|
1250
|
+
end
|
1251
|
+
|
1252
|
+
# Update properties of this object
|
1253
|
+
def update!(**args)
|
1254
|
+
@action_item = args[:action_item] if args.key?(:action_item)
|
1255
|
+
@code = args[:code] if args.key?(:code)
|
1256
|
+
@error_message = args[:error_message] if args.key?(:error_message)
|
1257
|
+
@error_time = args[:error_time] if args.key?(:error_time)
|
1258
|
+
@help_links = args[:help_links] if args.key?(:help_links)
|
1259
|
+
end
|
1260
|
+
end
|
1261
|
+
|
1262
|
+
# NetworkInterface represents a NIC of a VM.
|
1263
|
+
class NetworkInterface
|
1264
|
+
include Google::Apis::Core::Hashable
|
1265
|
+
|
1266
|
+
# The external IP to define in the NIC.
|
1267
|
+
# Corresponds to the JSON property `externalIp`
|
1268
|
+
# @return [String]
|
1269
|
+
attr_accessor :external_ip
|
1270
|
+
|
1271
|
+
# The internal IP to define in the NIC. The formats accepted are: `ephemeral` \
|
1272
|
+
# ipv4 address \ a named address resource full path.
|
1273
|
+
# Corresponds to the JSON property `internalIp`
|
1274
|
+
# @return [String]
|
1275
|
+
attr_accessor :internal_ip
|
1276
|
+
|
1277
|
+
# The network to connect the NIC to.
|
1278
|
+
# Corresponds to the JSON property `network`
|
1279
|
+
# @return [String]
|
1280
|
+
attr_accessor :network
|
1281
|
+
|
1282
|
+
# The subnetwork to connect the NIC to.
|
1283
|
+
# Corresponds to the JSON property `subnetwork`
|
1284
|
+
# @return [String]
|
1285
|
+
attr_accessor :subnetwork
|
1286
|
+
|
1287
|
+
def initialize(**args)
|
1288
|
+
update!(**args)
|
1289
|
+
end
|
1290
|
+
|
1291
|
+
# Update properties of this object
|
1292
|
+
def update!(**args)
|
1293
|
+
@external_ip = args[:external_ip] if args.key?(:external_ip)
|
1294
|
+
@internal_ip = args[:internal_ip] if args.key?(:internal_ip)
|
1295
|
+
@network = args[:network] if args.key?(:network)
|
1296
|
+
@subnetwork = args[:subnetwork] if args.key?(:subnetwork)
|
1297
|
+
end
|
1298
|
+
end
|
1299
|
+
|
1300
|
+
# This resource represents a long-running operation that is the result of a
|
1301
|
+
# network API call.
|
1302
|
+
class Operation
|
1303
|
+
include Google::Apis::Core::Hashable
|
1304
|
+
|
1305
|
+
# If the value is `false`, it means the operation is still in progress. If `true`
|
1306
|
+
# , the operation is completed, and either `error` or `response` is available.
|
1307
|
+
# Corresponds to the JSON property `done`
|
1308
|
+
# @return [Boolean]
|
1309
|
+
attr_accessor :done
|
1310
|
+
alias_method :done?, :done
|
1311
|
+
|
1312
|
+
# The `Status` type defines a logical error model that is suitable for different
|
1313
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1314
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
1315
|
+
# data: error code, error message, and error details. You can find out more
|
1316
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
1317
|
+
# //cloud.google.com/apis/design/errors).
|
1318
|
+
# Corresponds to the JSON property `error`
|
1319
|
+
# @return [Google::Apis::VmmigrationV1::Status]
|
1320
|
+
attr_accessor :error
|
1321
|
+
|
1322
|
+
# Service-specific metadata associated with the operation. It typically contains
|
1323
|
+
# progress information and common metadata such as create time. Some services
|
1324
|
+
# might not provide such metadata. Any method that returns a long-running
|
1325
|
+
# operation should document the metadata type, if any.
|
1326
|
+
# Corresponds to the JSON property `metadata`
|
1327
|
+
# @return [Hash<String,Object>]
|
1328
|
+
attr_accessor :metadata
|
1329
|
+
|
1330
|
+
# The server-assigned name, which is only unique within the same service that
|
1331
|
+
# originally returns it. If you use the default HTTP mapping, the `name` should
|
1332
|
+
# be a resource name ending with `operations/`unique_id``.
|
1333
|
+
# Corresponds to the JSON property `name`
|
1334
|
+
# @return [String]
|
1335
|
+
attr_accessor :name
|
1336
|
+
|
1337
|
+
# The normal response of the operation in case of success. If the original
|
1338
|
+
# method returns no data on success, such as `Delete`, the response is `google.
|
1339
|
+
# protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
|
1340
|
+
# the response should be the resource. For other methods, the response should
|
1341
|
+
# have the type `XxxResponse`, where `Xxx` is the original method name. For
|
1342
|
+
# example, if the original method name is `TakeSnapshot()`, the inferred
|
1343
|
+
# response type is `TakeSnapshotResponse`.
|
1344
|
+
# Corresponds to the JSON property `response`
|
1345
|
+
# @return [Hash<String,Object>]
|
1346
|
+
attr_accessor :response
|
1347
|
+
|
1348
|
+
def initialize(**args)
|
1349
|
+
update!(**args)
|
1350
|
+
end
|
1351
|
+
|
1352
|
+
# Update properties of this object
|
1353
|
+
def update!(**args)
|
1354
|
+
@done = args[:done] if args.key?(:done)
|
1355
|
+
@error = args[:error] if args.key?(:error)
|
1356
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1357
|
+
@name = args[:name] if args.key?(:name)
|
1358
|
+
@response = args[:response] if args.key?(:response)
|
1359
|
+
end
|
1360
|
+
end
|
1361
|
+
|
1362
|
+
# Represents the metadata of the long-running operation.
|
1363
|
+
class OperationMetadata
|
1364
|
+
include Google::Apis::Core::Hashable
|
1365
|
+
|
1366
|
+
# Output only. API version used to start the operation.
|
1367
|
+
# Corresponds to the JSON property `apiVersion`
|
1368
|
+
# @return [String]
|
1369
|
+
attr_accessor :api_version
|
1370
|
+
|
1371
|
+
# Output only. The time the operation was created.
|
1372
|
+
# Corresponds to the JSON property `createTime`
|
1373
|
+
# @return [String]
|
1374
|
+
attr_accessor :create_time
|
1375
|
+
|
1376
|
+
# Output only. The time the operation finished running.
|
1377
|
+
# Corresponds to the JSON property `endTime`
|
1378
|
+
# @return [String]
|
1379
|
+
attr_accessor :end_time
|
1380
|
+
|
1381
|
+
# Output only. Identifies whether the user has requested cancellation of the
|
1382
|
+
# operation. Operations that have successfully been cancelled have Operation.
|
1383
|
+
# error value with a google.rpc.Status.code of 1, corresponding to `Code.
|
1384
|
+
# CANCELLED`.
|
1385
|
+
# Corresponds to the JSON property `requestedCancellation`
|
1386
|
+
# @return [Boolean]
|
1387
|
+
attr_accessor :requested_cancellation
|
1388
|
+
alias_method :requested_cancellation?, :requested_cancellation
|
1389
|
+
|
1390
|
+
# Output only. Human-readable status of the operation, if any.
|
1391
|
+
# Corresponds to the JSON property `statusMessage`
|
1392
|
+
# @return [String]
|
1393
|
+
attr_accessor :status_message
|
1394
|
+
|
1395
|
+
# Output only. Server-defined resource path for the target of the operation.
|
1396
|
+
# Corresponds to the JSON property `target`
|
1397
|
+
# @return [String]
|
1398
|
+
attr_accessor :target
|
1399
|
+
|
1400
|
+
# Output only. Name of the verb executed by the operation.
|
1401
|
+
# Corresponds to the JSON property `verb`
|
1402
|
+
# @return [String]
|
1403
|
+
attr_accessor :verb
|
1404
|
+
|
1405
|
+
def initialize(**args)
|
1406
|
+
update!(**args)
|
1407
|
+
end
|
1408
|
+
|
1409
|
+
# Update properties of this object
|
1410
|
+
def update!(**args)
|
1411
|
+
@api_version = args[:api_version] if args.key?(:api_version)
|
1412
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1413
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1414
|
+
@requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
|
1415
|
+
@status_message = args[:status_message] if args.key?(:status_message)
|
1416
|
+
@target = args[:target] if args.key?(:target)
|
1417
|
+
@verb = args[:verb] if args.key?(:verb)
|
1418
|
+
end
|
1419
|
+
end
|
1420
|
+
|
1421
|
+
# Request message for 'PauseMigration' request.
|
1422
|
+
class PauseMigrationRequest
|
1423
|
+
include Google::Apis::Core::Hashable
|
1424
|
+
|
1425
|
+
def initialize(**args)
|
1426
|
+
update!(**args)
|
1427
|
+
end
|
1428
|
+
|
1429
|
+
# Update properties of this object
|
1430
|
+
def update!(**args)
|
1431
|
+
end
|
1432
|
+
end
|
1433
|
+
|
1434
|
+
# Request message for 'RemoveMigration' request.
|
1435
|
+
class RemoveGroupMigrationRequest
|
1436
|
+
include Google::Apis::Core::Hashable
|
1437
|
+
|
1438
|
+
# The MigratingVm to remove.
|
1439
|
+
# Corresponds to the JSON property `migratingVm`
|
1440
|
+
# @return [String]
|
1441
|
+
attr_accessor :migrating_vm
|
1442
|
+
|
1443
|
+
def initialize(**args)
|
1444
|
+
update!(**args)
|
1445
|
+
end
|
1446
|
+
|
1447
|
+
# Update properties of this object
|
1448
|
+
def update!(**args)
|
1449
|
+
@migrating_vm = args[:migrating_vm] if args.key?(:migrating_vm)
|
1450
|
+
end
|
1451
|
+
end
|
1452
|
+
|
1453
|
+
# ReplicationCycle contains information about the current replication cycle
|
1454
|
+
# status.
|
1455
|
+
class ReplicationCycle
|
1456
|
+
include Google::Apis::Core::Hashable
|
1457
|
+
|
1458
|
+
# The current progress in percentage of this cycle.
|
1459
|
+
# Corresponds to the JSON property `progressPercent`
|
1460
|
+
# @return [Fixnum]
|
1461
|
+
attr_accessor :progress_percent
|
1462
|
+
|
1463
|
+
# The time the replication cycle has started.
|
1464
|
+
# Corresponds to the JSON property `startTime`
|
1465
|
+
# @return [String]
|
1466
|
+
attr_accessor :start_time
|
1467
|
+
|
1468
|
+
def initialize(**args)
|
1469
|
+
update!(**args)
|
1470
|
+
end
|
1471
|
+
|
1472
|
+
# Update properties of this object
|
1473
|
+
def update!(**args)
|
1474
|
+
@progress_percent = args[:progress_percent] if args.key?(:progress_percent)
|
1475
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
1476
|
+
end
|
1477
|
+
end
|
1478
|
+
|
1479
|
+
# ReplicationSync contain information about the last replica sync to the cloud.
|
1480
|
+
class ReplicationSync
|
1481
|
+
include Google::Apis::Core::Hashable
|
1482
|
+
|
1483
|
+
# The most updated snapshot created time in the source that finished replication.
|
1484
|
+
# Corresponds to the JSON property `lastSyncTime`
|
1485
|
+
# @return [String]
|
1486
|
+
attr_accessor :last_sync_time
|
1487
|
+
|
1488
|
+
def initialize(**args)
|
1489
|
+
update!(**args)
|
1490
|
+
end
|
1491
|
+
|
1492
|
+
# Update properties of this object
|
1493
|
+
def update!(**args)
|
1494
|
+
@last_sync_time = args[:last_sync_time] if args.key?(:last_sync_time)
|
1495
|
+
end
|
1496
|
+
end
|
1497
|
+
|
1498
|
+
# Request message for 'ResumeMigration' request.
|
1499
|
+
class ResumeMigrationRequest
|
1500
|
+
include Google::Apis::Core::Hashable
|
1501
|
+
|
1502
|
+
def initialize(**args)
|
1503
|
+
update!(**args)
|
1504
|
+
end
|
1505
|
+
|
1506
|
+
# Update properties of this object
|
1507
|
+
def update!(**args)
|
1508
|
+
end
|
1509
|
+
end
|
1510
|
+
|
1511
|
+
# A policy for scheduling replications.
|
1512
|
+
class SchedulePolicy
|
1513
|
+
include Google::Apis::Core::Hashable
|
1514
|
+
|
1515
|
+
# The idle duration between replication stages.
|
1516
|
+
# Corresponds to the JSON property `idleDuration`
|
1517
|
+
# @return [String]
|
1518
|
+
attr_accessor :idle_duration
|
1519
|
+
|
1520
|
+
# A flag to indicate whether to skip OS adaptation during the replication sync.
|
1521
|
+
# OS adaptation is a process where the VM's operating system undergoes changes
|
1522
|
+
# and adaptations to fully function on Compute Engine.
|
1523
|
+
# Corresponds to the JSON property `skipOsAdaptation`
|
1524
|
+
# @return [Boolean]
|
1525
|
+
attr_accessor :skip_os_adaptation
|
1526
|
+
alias_method :skip_os_adaptation?, :skip_os_adaptation
|
1527
|
+
|
1528
|
+
def initialize(**args)
|
1529
|
+
update!(**args)
|
1530
|
+
end
|
1531
|
+
|
1532
|
+
# Update properties of this object
|
1533
|
+
def update!(**args)
|
1534
|
+
@idle_duration = args[:idle_duration] if args.key?(:idle_duration)
|
1535
|
+
@skip_os_adaptation = args[:skip_os_adaptation] if args.key?(:skip_os_adaptation)
|
1536
|
+
end
|
1537
|
+
end
|
1538
|
+
|
1539
|
+
# Node Affinity: the configuration of desired nodes onto which this Instance
|
1540
|
+
# could be scheduled. Based on https://cloud.google.com/compute/docs/reference/
|
1541
|
+
# rest/v1/instances/setScheduling
|
1542
|
+
class SchedulingNodeAffinity
|
1543
|
+
include Google::Apis::Core::Hashable
|
1544
|
+
|
1545
|
+
# The label key of Node resource to reference.
|
1546
|
+
# Corresponds to the JSON property `key`
|
1547
|
+
# @return [String]
|
1548
|
+
attr_accessor :key
|
1549
|
+
|
1550
|
+
# The operator to use for the node resources specified in the `values` parameter.
|
1551
|
+
# Corresponds to the JSON property `operator`
|
1552
|
+
# @return [String]
|
1553
|
+
attr_accessor :operator
|
1554
|
+
|
1555
|
+
# Corresponds to the label values of Node resource.
|
1556
|
+
# Corresponds to the JSON property `values`
|
1557
|
+
# @return [Array<String>]
|
1558
|
+
attr_accessor :values
|
1559
|
+
|
1560
|
+
def initialize(**args)
|
1561
|
+
update!(**args)
|
1562
|
+
end
|
1563
|
+
|
1564
|
+
# Update properties of this object
|
1565
|
+
def update!(**args)
|
1566
|
+
@key = args[:key] if args.key?(:key)
|
1567
|
+
@operator = args[:operator] if args.key?(:operator)
|
1568
|
+
@values = args[:values] if args.key?(:values)
|
1569
|
+
end
|
1570
|
+
end
|
1571
|
+
|
1572
|
+
# Source message describes a specific vm migration Source resource. It contains
|
1573
|
+
# the source environment information.
|
1574
|
+
class Source
|
1575
|
+
include Google::Apis::Core::Hashable
|
1576
|
+
|
1577
|
+
# Output only. The create time timestamp.
|
1578
|
+
# Corresponds to the JSON property `createTime`
|
1579
|
+
# @return [String]
|
1580
|
+
attr_accessor :create_time
|
1581
|
+
|
1582
|
+
# User-provided description of the source.
|
1583
|
+
# Corresponds to the JSON property `description`
|
1584
|
+
# @return [String]
|
1585
|
+
attr_accessor :description
|
1586
|
+
|
1587
|
+
# The labels of the source.
|
1588
|
+
# Corresponds to the JSON property `labels`
|
1589
|
+
# @return [Hash<String,String>]
|
1590
|
+
attr_accessor :labels
|
1591
|
+
|
1592
|
+
# Output only. The Source name.
|
1593
|
+
# Corresponds to the JSON property `name`
|
1594
|
+
# @return [String]
|
1595
|
+
attr_accessor :name
|
1596
|
+
|
1597
|
+
# Output only. The update time timestamp.
|
1598
|
+
# Corresponds to the JSON property `updateTime`
|
1599
|
+
# @return [String]
|
1600
|
+
attr_accessor :update_time
|
1601
|
+
|
1602
|
+
# VmwareSourceDetails message describes a specific source details for the vmware
|
1603
|
+
# source type.
|
1604
|
+
# Corresponds to the JSON property `vmware`
|
1605
|
+
# @return [Google::Apis::VmmigrationV1::VmwareSourceDetails]
|
1606
|
+
attr_accessor :vmware
|
1607
|
+
|
1608
|
+
def initialize(**args)
|
1609
|
+
update!(**args)
|
1610
|
+
end
|
1611
|
+
|
1612
|
+
# Update properties of this object
|
1613
|
+
def update!(**args)
|
1614
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1615
|
+
@description = args[:description] if args.key?(:description)
|
1616
|
+
@labels = args[:labels] if args.key?(:labels)
|
1617
|
+
@name = args[:name] if args.key?(:name)
|
1618
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1619
|
+
@vmware = args[:vmware] if args.key?(:vmware)
|
1620
|
+
end
|
1621
|
+
end
|
1622
|
+
|
1623
|
+
# Request message for 'StartMigrationRequest' request.
|
1624
|
+
class StartMigrationRequest
|
1625
|
+
include Google::Apis::Core::Hashable
|
1626
|
+
|
1627
|
+
def initialize(**args)
|
1628
|
+
update!(**args)
|
1629
|
+
end
|
1630
|
+
|
1631
|
+
# Update properties of this object
|
1632
|
+
def update!(**args)
|
1633
|
+
end
|
1634
|
+
end
|
1635
|
+
|
1636
|
+
# The `Status` type defines a logical error model that is suitable for different
|
1637
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1638
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
1639
|
+
# data: error code, error message, and error details. You can find out more
|
1640
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
1641
|
+
# //cloud.google.com/apis/design/errors).
|
1642
|
+
class Status
|
1643
|
+
include Google::Apis::Core::Hashable
|
1644
|
+
|
1645
|
+
# The status code, which should be an enum value of google.rpc.Code.
|
1646
|
+
# Corresponds to the JSON property `code`
|
1647
|
+
# @return [Fixnum]
|
1648
|
+
attr_accessor :code
|
1649
|
+
|
1650
|
+
# A list of messages that carry the error details. There is a common set of
|
1651
|
+
# message types for APIs to use.
|
1652
|
+
# Corresponds to the JSON property `details`
|
1653
|
+
# @return [Array<Hash<String,Object>>]
|
1654
|
+
attr_accessor :details
|
1655
|
+
|
1656
|
+
# A developer-facing error message, which should be in English. Any user-facing
|
1657
|
+
# error message should be localized and sent in the google.rpc.Status.details
|
1658
|
+
# field, or localized by the client.
|
1659
|
+
# Corresponds to the JSON property `message`
|
1660
|
+
# @return [String]
|
1661
|
+
attr_accessor :message
|
1662
|
+
|
1663
|
+
def initialize(**args)
|
1664
|
+
update!(**args)
|
1665
|
+
end
|
1666
|
+
|
1667
|
+
# Update properties of this object
|
1668
|
+
def update!(**args)
|
1669
|
+
@code = args[:code] if args.key?(:code)
|
1670
|
+
@details = args[:details] if args.key?(:details)
|
1671
|
+
@message = args[:message] if args.key?(:message)
|
1672
|
+
end
|
1673
|
+
end
|
1674
|
+
|
1675
|
+
# TargetProject message represents a target Compute Engine project for a
|
1676
|
+
# migration or a clone.
|
1677
|
+
class TargetProject
|
1678
|
+
include Google::Apis::Core::Hashable
|
1679
|
+
|
1680
|
+
# Output only. The time this target project resource was created (not related to
|
1681
|
+
# when the Compute Engine project it points to was created).
|
1682
|
+
# Corresponds to the JSON property `createTime`
|
1683
|
+
# @return [String]
|
1684
|
+
attr_accessor :create_time
|
1685
|
+
|
1686
|
+
# The target project's description.
|
1687
|
+
# Corresponds to the JSON property `description`
|
1688
|
+
# @return [String]
|
1689
|
+
attr_accessor :description
|
1690
|
+
|
1691
|
+
# The name of the target project.
|
1692
|
+
# Corresponds to the JSON property `name`
|
1693
|
+
# @return [String]
|
1694
|
+
attr_accessor :name
|
1695
|
+
|
1696
|
+
# The target project ID (number) or project name.
|
1697
|
+
# Corresponds to the JSON property `project`
|
1698
|
+
# @return [String]
|
1699
|
+
attr_accessor :project
|
1700
|
+
|
1701
|
+
# Output only. The last time the target project resource was updated.
|
1702
|
+
# Corresponds to the JSON property `updateTime`
|
1703
|
+
# @return [String]
|
1704
|
+
attr_accessor :update_time
|
1705
|
+
|
1706
|
+
def initialize(**args)
|
1707
|
+
update!(**args)
|
1708
|
+
end
|
1709
|
+
|
1710
|
+
# Update properties of this object
|
1711
|
+
def update!(**args)
|
1712
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1713
|
+
@description = args[:description] if args.key?(:description)
|
1714
|
+
@name = args[:name] if args.key?(:name)
|
1715
|
+
@project = args[:project] if args.key?(:project)
|
1716
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1717
|
+
end
|
1718
|
+
end
|
1719
|
+
|
1720
|
+
# TargetVMDetails is a collection of details for creating a VM in a target
|
1721
|
+
# Compute Engine project.
|
1722
|
+
class TargetVmDetails
|
1723
|
+
include Google::Apis::Core::Hashable
|
1724
|
+
|
1725
|
+
# AppliedLicense holds the license data returned by adaptation module report.
|
1726
|
+
# Corresponds to the JSON property `appliedLicense`
|
1727
|
+
# @return [Google::Apis::VmmigrationV1::AppliedLicense]
|
1728
|
+
attr_accessor :applied_license
|
1729
|
+
|
1730
|
+
# Output only. The VM Boot Option, as set in the source vm.
|
1731
|
+
# Corresponds to the JSON property `bootOption`
|
1732
|
+
# @return [String]
|
1733
|
+
attr_accessor :boot_option
|
1734
|
+
|
1735
|
+
# Scheduling information for VM on maintenance/restart behaviour and node
|
1736
|
+
# allocation in sole tenant nodes.
|
1737
|
+
# Corresponds to the JSON property `computeScheduling`
|
1738
|
+
# @return [Google::Apis::VmmigrationV1::ComputeScheduling]
|
1739
|
+
attr_accessor :compute_scheduling
|
1740
|
+
|
1741
|
+
# The disk type to use in the VM.
|
1742
|
+
# Corresponds to the JSON property `diskType`
|
1743
|
+
# @return [String]
|
1744
|
+
attr_accessor :disk_type
|
1745
|
+
|
1746
|
+
# A map of labels to associate with the VM.
|
1747
|
+
# Corresponds to the JSON property `labels`
|
1748
|
+
# @return [Hash<String,String>]
|
1749
|
+
attr_accessor :labels
|
1750
|
+
|
1751
|
+
# The license type to use in OS adaptation.
|
1752
|
+
# Corresponds to the JSON property `licenseType`
|
1753
|
+
# @return [String]
|
1754
|
+
attr_accessor :license_type
|
1755
|
+
|
1756
|
+
# The machine type to create the VM with.
|
1757
|
+
# Corresponds to the JSON property `machineType`
|
1758
|
+
# @return [String]
|
1759
|
+
attr_accessor :machine_type
|
1760
|
+
|
1761
|
+
# The machine type series to create the VM with.
|
1762
|
+
# Corresponds to the JSON property `machineTypeSeries`
|
1763
|
+
# @return [String]
|
1764
|
+
attr_accessor :machine_type_series
|
1765
|
+
|
1766
|
+
# The metadata key/value pairs to assign to the VM.
|
1767
|
+
# Corresponds to the JSON property `metadata`
|
1768
|
+
# @return [Hash<String,String>]
|
1769
|
+
attr_accessor :metadata
|
1770
|
+
|
1771
|
+
# The name of the VM to create.
|
1772
|
+
# Corresponds to the JSON property `name`
|
1773
|
+
# @return [String]
|
1774
|
+
attr_accessor :name
|
1775
|
+
|
1776
|
+
# List of NICs connected to this VM.
|
1777
|
+
# Corresponds to the JSON property `networkInterfaces`
|
1778
|
+
# @return [Array<Google::Apis::VmmigrationV1::NetworkInterface>]
|
1779
|
+
attr_accessor :network_interfaces
|
1780
|
+
|
1781
|
+
# A map of network tags to associate with the VM.
|
1782
|
+
# Corresponds to the JSON property `networkTags`
|
1783
|
+
# @return [Array<String>]
|
1784
|
+
attr_accessor :network_tags
|
1785
|
+
|
1786
|
+
# The project in which to create the VM.
|
1787
|
+
# Corresponds to the JSON property `project`
|
1788
|
+
# @return [String]
|
1789
|
+
attr_accessor :project
|
1790
|
+
|
1791
|
+
# Defines whether the instance has Secure Boot enabled. This can be set to true
|
1792
|
+
# only if the vm boot option is EFI.
|
1793
|
+
# Corresponds to the JSON property `secureBoot`
|
1794
|
+
# @return [Boolean]
|
1795
|
+
attr_accessor :secure_boot
|
1796
|
+
alias_method :secure_boot?, :secure_boot
|
1797
|
+
|
1798
|
+
# The service account to associate the VM with.
|
1799
|
+
# Corresponds to the JSON property `serviceAccount`
|
1800
|
+
# @return [String]
|
1801
|
+
attr_accessor :service_account
|
1802
|
+
|
1803
|
+
# The full path of the resource of type TargetProject which represents the
|
1804
|
+
# Compute Engine project in which to create this VM.
|
1805
|
+
# Corresponds to the JSON property `targetProject`
|
1806
|
+
# @return [String]
|
1807
|
+
attr_accessor :target_project
|
1808
|
+
|
1809
|
+
# The zone in which to create the VM.
|
1810
|
+
# Corresponds to the JSON property `zone`
|
1811
|
+
# @return [String]
|
1812
|
+
attr_accessor :zone
|
1813
|
+
|
1814
|
+
def initialize(**args)
|
1815
|
+
update!(**args)
|
1816
|
+
end
|
1817
|
+
|
1818
|
+
# Update properties of this object
|
1819
|
+
def update!(**args)
|
1820
|
+
@applied_license = args[:applied_license] if args.key?(:applied_license)
|
1821
|
+
@boot_option = args[:boot_option] if args.key?(:boot_option)
|
1822
|
+
@compute_scheduling = args[:compute_scheduling] if args.key?(:compute_scheduling)
|
1823
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
1824
|
+
@labels = args[:labels] if args.key?(:labels)
|
1825
|
+
@license_type = args[:license_type] if args.key?(:license_type)
|
1826
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
1827
|
+
@machine_type_series = args[:machine_type_series] if args.key?(:machine_type_series)
|
1828
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1829
|
+
@name = args[:name] if args.key?(:name)
|
1830
|
+
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
1831
|
+
@network_tags = args[:network_tags] if args.key?(:network_tags)
|
1832
|
+
@project = args[:project] if args.key?(:project)
|
1833
|
+
@secure_boot = args[:secure_boot] if args.key?(:secure_boot)
|
1834
|
+
@service_account = args[:service_account] if args.key?(:service_account)
|
1835
|
+
@target_project = args[:target_project] if args.key?(:target_project)
|
1836
|
+
@zone = args[:zone] if args.key?(:zone)
|
1837
|
+
end
|
1838
|
+
end
|
1839
|
+
|
1840
|
+
# Utilization report details the utilization (CPU, memory, etc.) of selected
|
1841
|
+
# source VMs.
|
1842
|
+
class UtilizationReport
|
1843
|
+
include Google::Apis::Core::Hashable
|
1844
|
+
|
1845
|
+
# Output only. The time the report was created (this refers to the time of the
|
1846
|
+
# request, not the time the report creation completed).
|
1847
|
+
# Corresponds to the JSON property `createTime`
|
1848
|
+
# @return [String]
|
1849
|
+
attr_accessor :create_time
|
1850
|
+
|
1851
|
+
# The report display name, as assigned by the user.
|
1852
|
+
# Corresponds to the JSON property `displayName`
|
1853
|
+
# @return [String]
|
1854
|
+
attr_accessor :display_name
|
1855
|
+
|
1856
|
+
# The `Status` type defines a logical error model that is suitable for different
|
1857
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1858
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
1859
|
+
# data: error code, error message, and error details. You can find out more
|
1860
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
1861
|
+
# //cloud.google.com/apis/design/errors).
|
1862
|
+
# Corresponds to the JSON property `error`
|
1863
|
+
# @return [Google::Apis::VmmigrationV1::Status]
|
1864
|
+
attr_accessor :error
|
1865
|
+
|
1866
|
+
# Output only. The point in time when the time frame ends. Notice that the time
|
1867
|
+
# frame is counted backwards. For instance if the "frame_end_time" value is 2021/
|
1868
|
+
# 01/20 and the time frame is WEEK then the report covers the week between 2021/
|
1869
|
+
# 01/20 and 2021/01/14.
|
1870
|
+
# Corresponds to the JSON property `frameEndTime`
|
1871
|
+
# @return [String]
|
1872
|
+
attr_accessor :frame_end_time
|
1873
|
+
|
1874
|
+
# Output only. The report unique name.
|
1875
|
+
# Corresponds to the JSON property `name`
|
1876
|
+
# @return [String]
|
1877
|
+
attr_accessor :name
|
1878
|
+
|
1879
|
+
# Output only. Current state of the report.
|
1880
|
+
# Corresponds to the JSON property `state`
|
1881
|
+
# @return [String]
|
1882
|
+
attr_accessor :state
|
1883
|
+
|
1884
|
+
# Output only. The time the state was last set.
|
1885
|
+
# Corresponds to the JSON property `stateTime`
|
1886
|
+
# @return [String]
|
1887
|
+
attr_accessor :state_time
|
1888
|
+
|
1889
|
+
# Time frame of the report.
|
1890
|
+
# Corresponds to the JSON property `timeFrame`
|
1891
|
+
# @return [String]
|
1892
|
+
attr_accessor :time_frame
|
1893
|
+
|
1894
|
+
# Output only. Total number of VMs included in the report.
|
1895
|
+
# Corresponds to the JSON property `vmCount`
|
1896
|
+
# @return [Fixnum]
|
1897
|
+
attr_accessor :vm_count
|
1898
|
+
|
1899
|
+
# List of utilization information per VM. When sent as part of the request, the "
|
1900
|
+
# vm_id" field is used in order to specify which VMs to include in the report.
|
1901
|
+
# In that case all other fields are ignored.
|
1902
|
+
# Corresponds to the JSON property `vms`
|
1903
|
+
# @return [Array<Google::Apis::VmmigrationV1::VmUtilizationInfo>]
|
1904
|
+
attr_accessor :vms
|
1905
|
+
|
1906
|
+
def initialize(**args)
|
1907
|
+
update!(**args)
|
1908
|
+
end
|
1909
|
+
|
1910
|
+
# Update properties of this object
|
1911
|
+
def update!(**args)
|
1912
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1913
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1914
|
+
@error = args[:error] if args.key?(:error)
|
1915
|
+
@frame_end_time = args[:frame_end_time] if args.key?(:frame_end_time)
|
1916
|
+
@name = args[:name] if args.key?(:name)
|
1917
|
+
@state = args[:state] if args.key?(:state)
|
1918
|
+
@state_time = args[:state_time] if args.key?(:state_time)
|
1919
|
+
@time_frame = args[:time_frame] if args.key?(:time_frame)
|
1920
|
+
@vm_count = args[:vm_count] if args.key?(:vm_count)
|
1921
|
+
@vms = args[:vms] if args.key?(:vms)
|
1922
|
+
end
|
1923
|
+
end
|
1924
|
+
|
1925
|
+
# Utilization information of a single VM.
|
1926
|
+
class VmUtilizationInfo
|
1927
|
+
include Google::Apis::Core::Hashable
|
1928
|
+
|
1929
|
+
# Utilization metrics values for a single VM.
|
1930
|
+
# Corresponds to the JSON property `utilization`
|
1931
|
+
# @return [Google::Apis::VmmigrationV1::VmUtilizationMetrics]
|
1932
|
+
attr_accessor :utilization
|
1933
|
+
|
1934
|
+
# The VM's ID in the source.
|
1935
|
+
# Corresponds to the JSON property `vmId`
|
1936
|
+
# @return [String]
|
1937
|
+
attr_accessor :vm_id
|
1938
|
+
|
1939
|
+
# VmwareVmDetails describes a VM in vCenter.
|
1940
|
+
# Corresponds to the JSON property `vmwareVmDetails`
|
1941
|
+
# @return [Google::Apis::VmmigrationV1::VmwareVmDetails]
|
1942
|
+
attr_accessor :vmware_vm_details
|
1943
|
+
|
1944
|
+
def initialize(**args)
|
1945
|
+
update!(**args)
|
1946
|
+
end
|
1947
|
+
|
1948
|
+
# Update properties of this object
|
1949
|
+
def update!(**args)
|
1950
|
+
@utilization = args[:utilization] if args.key?(:utilization)
|
1951
|
+
@vm_id = args[:vm_id] if args.key?(:vm_id)
|
1952
|
+
@vmware_vm_details = args[:vmware_vm_details] if args.key?(:vmware_vm_details)
|
1953
|
+
end
|
1954
|
+
end
|
1955
|
+
|
1956
|
+
# Utilization metrics values for a single VM.
|
1957
|
+
class VmUtilizationMetrics
|
1958
|
+
include Google::Apis::Core::Hashable
|
1959
|
+
|
1960
|
+
# Average CPU usage, percent.
|
1961
|
+
# Corresponds to the JSON property `cpuAveragePercent`
|
1962
|
+
# @return [Fixnum]
|
1963
|
+
attr_accessor :cpu_average_percent
|
1964
|
+
|
1965
|
+
# Max CPU usage, percent.
|
1966
|
+
# Corresponds to the JSON property `cpuMaxPercent`
|
1967
|
+
# @return [Fixnum]
|
1968
|
+
attr_accessor :cpu_max_percent
|
1969
|
+
|
1970
|
+
# Average disk IO rate, in kilobytes per second.
|
1971
|
+
# Corresponds to the JSON property `diskIoRateAverageKbps`
|
1972
|
+
# @return [Fixnum]
|
1973
|
+
attr_accessor :disk_io_rate_average_kbps
|
1974
|
+
|
1975
|
+
# Max disk IO rate, in kilobytes per second.
|
1976
|
+
# Corresponds to the JSON property `diskIoRateMaxKbps`
|
1977
|
+
# @return [Fixnum]
|
1978
|
+
attr_accessor :disk_io_rate_max_kbps
|
1979
|
+
|
1980
|
+
# Average memory usage, percent.
|
1981
|
+
# Corresponds to the JSON property `memoryAveragePercent`
|
1982
|
+
# @return [Fixnum]
|
1983
|
+
attr_accessor :memory_average_percent
|
1984
|
+
|
1985
|
+
# Max memory usage, percent.
|
1986
|
+
# Corresponds to the JSON property `memoryMaxPercent`
|
1987
|
+
# @return [Fixnum]
|
1988
|
+
attr_accessor :memory_max_percent
|
1989
|
+
|
1990
|
+
# Average network throughput (combined transmit-rates and receive-rates), in
|
1991
|
+
# kilobytes per second.
|
1992
|
+
# Corresponds to the JSON property `networkThroughputAverageKbps`
|
1993
|
+
# @return [Fixnum]
|
1994
|
+
attr_accessor :network_throughput_average_kbps
|
1995
|
+
|
1996
|
+
# Max network throughput (combined transmit-rates and receive-rates), in
|
1997
|
+
# kilobytes per second.
|
1998
|
+
# Corresponds to the JSON property `networkThroughputMaxKbps`
|
1999
|
+
# @return [Fixnum]
|
2000
|
+
attr_accessor :network_throughput_max_kbps
|
2001
|
+
|
2002
|
+
def initialize(**args)
|
2003
|
+
update!(**args)
|
2004
|
+
end
|
2005
|
+
|
2006
|
+
# Update properties of this object
|
2007
|
+
def update!(**args)
|
2008
|
+
@cpu_average_percent = args[:cpu_average_percent] if args.key?(:cpu_average_percent)
|
2009
|
+
@cpu_max_percent = args[:cpu_max_percent] if args.key?(:cpu_max_percent)
|
2010
|
+
@disk_io_rate_average_kbps = args[:disk_io_rate_average_kbps] if args.key?(:disk_io_rate_average_kbps)
|
2011
|
+
@disk_io_rate_max_kbps = args[:disk_io_rate_max_kbps] if args.key?(:disk_io_rate_max_kbps)
|
2012
|
+
@memory_average_percent = args[:memory_average_percent] if args.key?(:memory_average_percent)
|
2013
|
+
@memory_max_percent = args[:memory_max_percent] if args.key?(:memory_max_percent)
|
2014
|
+
@network_throughput_average_kbps = args[:network_throughput_average_kbps] if args.key?(:network_throughput_average_kbps)
|
2015
|
+
@network_throughput_max_kbps = args[:network_throughput_max_kbps] if args.key?(:network_throughput_max_kbps)
|
2016
|
+
end
|
2017
|
+
end
|
2018
|
+
|
2019
|
+
# VmwareSourceDetails message describes a specific source details for the vmware
|
2020
|
+
# source type.
|
2021
|
+
class VmwareSourceDetails
|
2022
|
+
include Google::Apis::Core::Hashable
|
2023
|
+
|
2024
|
+
# Input only. The credentials password. This is write only and can not be read
|
2025
|
+
# in a GET operation.
|
2026
|
+
# Corresponds to the JSON property `password`
|
2027
|
+
# @return [String]
|
2028
|
+
attr_accessor :password
|
2029
|
+
|
2030
|
+
# The thumbprint representing the certificate for the vcenter.
|
2031
|
+
# Corresponds to the JSON property `thumbprint`
|
2032
|
+
# @return [String]
|
2033
|
+
attr_accessor :thumbprint
|
2034
|
+
|
2035
|
+
# The credentials username.
|
2036
|
+
# Corresponds to the JSON property `username`
|
2037
|
+
# @return [String]
|
2038
|
+
attr_accessor :username
|
2039
|
+
|
2040
|
+
# The ip address of the vcenter this Source represents.
|
2041
|
+
# Corresponds to the JSON property `vcenterIp`
|
2042
|
+
# @return [String]
|
2043
|
+
attr_accessor :vcenter_ip
|
2044
|
+
|
2045
|
+
def initialize(**args)
|
2046
|
+
update!(**args)
|
2047
|
+
end
|
2048
|
+
|
2049
|
+
# Update properties of this object
|
2050
|
+
def update!(**args)
|
2051
|
+
@password = args[:password] if args.key?(:password)
|
2052
|
+
@thumbprint = args[:thumbprint] if args.key?(:thumbprint)
|
2053
|
+
@username = args[:username] if args.key?(:username)
|
2054
|
+
@vcenter_ip = args[:vcenter_ip] if args.key?(:vcenter_ip)
|
2055
|
+
end
|
2056
|
+
end
|
2057
|
+
|
2058
|
+
# VmwareVmDetails describes a VM in vCenter.
|
2059
|
+
class VmwareVmDetails
|
2060
|
+
include Google::Apis::Core::Hashable
|
2061
|
+
|
2062
|
+
# Output only. The VM Boot Option.
|
2063
|
+
# Corresponds to the JSON property `bootOption`
|
2064
|
+
# @return [String]
|
2065
|
+
attr_accessor :boot_option
|
2066
|
+
|
2067
|
+
# The total size of the storage allocated to the VM in MB.
|
2068
|
+
# Corresponds to the JSON property `committedStorageMb`
|
2069
|
+
# @return [Fixnum]
|
2070
|
+
attr_accessor :committed_storage_mb
|
2071
|
+
|
2072
|
+
# The number of cpus in the VM.
|
2073
|
+
# Corresponds to the JSON property `cpuCount`
|
2074
|
+
# @return [Fixnum]
|
2075
|
+
attr_accessor :cpu_count
|
2076
|
+
|
2077
|
+
# The descriptive name of the vCenter's datacenter this VM is contained in.
|
2078
|
+
# Corresponds to the JSON property `datacenterDescription`
|
2079
|
+
# @return [String]
|
2080
|
+
attr_accessor :datacenter_description
|
2081
|
+
|
2082
|
+
# The id of the vCenter's datacenter this VM is contained in.
|
2083
|
+
# Corresponds to the JSON property `datacenterId`
|
2084
|
+
# @return [String]
|
2085
|
+
attr_accessor :datacenter_id
|
2086
|
+
|
2087
|
+
# The number of disks the VM has.
|
2088
|
+
# Corresponds to the JSON property `diskCount`
|
2089
|
+
# @return [Fixnum]
|
2090
|
+
attr_accessor :disk_count
|
2091
|
+
|
2092
|
+
# The display name of the VM. Note that this is not necessarily unique.
|
2093
|
+
# Corresponds to the JSON property `displayName`
|
2094
|
+
# @return [String]
|
2095
|
+
attr_accessor :display_name
|
2096
|
+
|
2097
|
+
# The VM's OS. See for example https://pubs.vmware.com/vi-sdk/visdk250/
|
2098
|
+
# ReferenceGuide/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html for types of
|
2099
|
+
# strings this might hold.
|
2100
|
+
# Corresponds to the JSON property `guestDescription`
|
2101
|
+
# @return [String]
|
2102
|
+
attr_accessor :guest_description
|
2103
|
+
|
2104
|
+
# The size of the memory of the VM in MB.
|
2105
|
+
# Corresponds to the JSON property `memoryMb`
|
2106
|
+
# @return [Fixnum]
|
2107
|
+
attr_accessor :memory_mb
|
2108
|
+
|
2109
|
+
# The power state of the VM at the moment list was taken.
|
2110
|
+
# Corresponds to the JSON property `powerState`
|
2111
|
+
# @return [String]
|
2112
|
+
attr_accessor :power_state
|
2113
|
+
|
2114
|
+
# The unique identifier of the VM in vCenter.
|
2115
|
+
# Corresponds to the JSON property `uuid`
|
2116
|
+
# @return [String]
|
2117
|
+
attr_accessor :uuid
|
2118
|
+
|
2119
|
+
# The VM's id in the source (note that this is not the MigratingVm's id). This
|
2120
|
+
# is the moref id of the VM.
|
2121
|
+
# Corresponds to the JSON property `vmId`
|
2122
|
+
# @return [String]
|
2123
|
+
attr_accessor :vm_id
|
2124
|
+
|
2125
|
+
def initialize(**args)
|
2126
|
+
update!(**args)
|
2127
|
+
end
|
2128
|
+
|
2129
|
+
# Update properties of this object
|
2130
|
+
def update!(**args)
|
2131
|
+
@boot_option = args[:boot_option] if args.key?(:boot_option)
|
2132
|
+
@committed_storage_mb = args[:committed_storage_mb] if args.key?(:committed_storage_mb)
|
2133
|
+
@cpu_count = args[:cpu_count] if args.key?(:cpu_count)
|
2134
|
+
@datacenter_description = args[:datacenter_description] if args.key?(:datacenter_description)
|
2135
|
+
@datacenter_id = args[:datacenter_id] if args.key?(:datacenter_id)
|
2136
|
+
@disk_count = args[:disk_count] if args.key?(:disk_count)
|
2137
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
2138
|
+
@guest_description = args[:guest_description] if args.key?(:guest_description)
|
2139
|
+
@memory_mb = args[:memory_mb] if args.key?(:memory_mb)
|
2140
|
+
@power_state = args[:power_state] if args.key?(:power_state)
|
2141
|
+
@uuid = args[:uuid] if args.key?(:uuid)
|
2142
|
+
@vm_id = args[:vm_id] if args.key?(:vm_id)
|
2143
|
+
end
|
2144
|
+
end
|
2145
|
+
|
2146
|
+
# VmwareVmsDetails describes VMs in vCenter.
|
2147
|
+
class VmwareVmsDetails
|
2148
|
+
include Google::Apis::Core::Hashable
|
2149
|
+
|
2150
|
+
# The details of the vmware VMs.
|
2151
|
+
# Corresponds to the JSON property `details`
|
2152
|
+
# @return [Array<Google::Apis::VmmigrationV1::VmwareVmDetails>]
|
2153
|
+
attr_accessor :details
|
2154
|
+
|
2155
|
+
def initialize(**args)
|
2156
|
+
update!(**args)
|
2157
|
+
end
|
2158
|
+
|
2159
|
+
# Update properties of this object
|
2160
|
+
def update!(**args)
|
2161
|
+
@details = args[:details] if args.key?(:details)
|
2162
|
+
end
|
2163
|
+
end
|
2164
|
+
end
|
2165
|
+
end
|
2166
|
+
end
|