google-apis-migrationcenter_v1alpha1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,3011 @@
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 MigrationcenterV1alpha1
24
+
25
+ # A request to aggregate one or more values.
26
+ class AggregateAssetsValuesRequest
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Array of aggregations to perform. Up to 25 aggregations can be defined.
30
+ # Corresponds to the JSON property `aggregations`
31
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Aggregation>]
32
+ attr_accessor :aggregations
33
+
34
+ # The aggregation will be performed on assets that match the provided filter.
35
+ # Corresponds to the JSON property `filter`
36
+ # @return [String]
37
+ attr_accessor :filter
38
+
39
+ def initialize(**args)
40
+ update!(**args)
41
+ end
42
+
43
+ # Update properties of this object
44
+ def update!(**args)
45
+ @aggregations = args[:aggregations] if args.key?(:aggregations)
46
+ @filter = args[:filter] if args.key?(:filter)
47
+ end
48
+ end
49
+
50
+ # A response to a request to aggregated assets values.
51
+ class AggregateAssetsValuesResponse
52
+ include Google::Apis::Core::Hashable
53
+
54
+ # The aggregation results.
55
+ # Corresponds to the JSON property `results`
56
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::AggregationResult>]
57
+ attr_accessor :results
58
+
59
+ def initialize(**args)
60
+ update!(**args)
61
+ end
62
+
63
+ # Update properties of this object
64
+ def update!(**args)
65
+ @results = args[:results] if args.key?(:results)
66
+ end
67
+ end
68
+
69
+ # Message describing an aggregation. The message includes the aggregation type,
70
+ # parameters, and the field on which to perform the aggregation.
71
+ class Aggregation
72
+ include Google::Apis::Core::Hashable
73
+
74
+ # Object count.
75
+ # Corresponds to the JSON property `count`
76
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationCount]
77
+ attr_accessor :count
78
+
79
+ # The name of the field on which to aggregate.
80
+ # Corresponds to the JSON property `field`
81
+ # @return [String]
82
+ attr_accessor :field
83
+
84
+ # Frequency distribution of all field values.
85
+ # Corresponds to the JSON property `frequency`
86
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationFrequency]
87
+ attr_accessor :frequency
88
+
89
+ # Histogram of bucketed assets counts by field value.
90
+ # Corresponds to the JSON property `histogram`
91
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationHistogram]
92
+ attr_accessor :histogram
93
+
94
+ # Sum of field values.
95
+ # Corresponds to the JSON property `sum`
96
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationSum]
97
+ attr_accessor :sum
98
+
99
+ def initialize(**args)
100
+ update!(**args)
101
+ end
102
+
103
+ # Update properties of this object
104
+ def update!(**args)
105
+ @count = args[:count] if args.key?(:count)
106
+ @field = args[:field] if args.key?(:field)
107
+ @frequency = args[:frequency] if args.key?(:frequency)
108
+ @histogram = args[:histogram] if args.key?(:histogram)
109
+ @sum = args[:sum] if args.key?(:sum)
110
+ end
111
+ end
112
+
113
+ # Object count.
114
+ class AggregationCount
115
+ include Google::Apis::Core::Hashable
116
+
117
+ def initialize(**args)
118
+ update!(**args)
119
+ end
120
+
121
+ # Update properties of this object
122
+ def update!(**args)
123
+ end
124
+ end
125
+
126
+ # Frequency distribution of all field values.
127
+ class AggregationFrequency
128
+ include Google::Apis::Core::Hashable
129
+
130
+ def initialize(**args)
131
+ update!(**args)
132
+ end
133
+
134
+ # Update properties of this object
135
+ def update!(**args)
136
+ end
137
+ end
138
+
139
+ # Histogram of bucketed assets counts by field value.
140
+ class AggregationHistogram
141
+ include Google::Apis::Core::Hashable
142
+
143
+ # Lower bounds of buckets. The response will contain `n+1` buckets for `n`
144
+ # bounds. The first bucket will count all assets for which the field value is
145
+ # smaller than the first bound. Subsequent buckets will count assets for which
146
+ # the field value is greater or equal to a lower bound and smaller than the next
147
+ # one. The last bucket will count assets for which the field value is greater or
148
+ # equal to the final lower bound. You can define up to 20 lower bounds.
149
+ # Corresponds to the JSON property `lowerBounds`
150
+ # @return [Array<Float>]
151
+ attr_accessor :lower_bounds
152
+
153
+ def initialize(**args)
154
+ update!(**args)
155
+ end
156
+
157
+ # Update properties of this object
158
+ def update!(**args)
159
+ @lower_bounds = args[:lower_bounds] if args.key?(:lower_bounds)
160
+ end
161
+ end
162
+
163
+ # Message describing a result of an aggregation.
164
+ class AggregationResult
165
+ include Google::Apis::Core::Hashable
166
+
167
+ # The result of a count aggregation.
168
+ # Corresponds to the JSON property `count`
169
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationResultCount]
170
+ attr_accessor :count
171
+
172
+ #
173
+ # Corresponds to the JSON property `field`
174
+ # @return [String]
175
+ attr_accessor :field
176
+
177
+ # The result of a frequency distribution aggregation.
178
+ # Corresponds to the JSON property `frequency`
179
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationResultFrequency]
180
+ attr_accessor :frequency
181
+
182
+ # The result of a bucketed histogram aggregation.
183
+ # Corresponds to the JSON property `histogram`
184
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationResultHistogram]
185
+ attr_accessor :histogram
186
+
187
+ # The result of a sum aggregation.
188
+ # Corresponds to the JSON property `sum`
189
+ # @return [Google::Apis::MigrationcenterV1alpha1::AggregationResultSum]
190
+ attr_accessor :sum
191
+
192
+ def initialize(**args)
193
+ update!(**args)
194
+ end
195
+
196
+ # Update properties of this object
197
+ def update!(**args)
198
+ @count = args[:count] if args.key?(:count)
199
+ @field = args[:field] if args.key?(:field)
200
+ @frequency = args[:frequency] if args.key?(:frequency)
201
+ @histogram = args[:histogram] if args.key?(:histogram)
202
+ @sum = args[:sum] if args.key?(:sum)
203
+ end
204
+ end
205
+
206
+ # The result of a count aggregation.
207
+ class AggregationResultCount
208
+ include Google::Apis::Core::Hashable
209
+
210
+ #
211
+ # Corresponds to the JSON property `value`
212
+ # @return [Fixnum]
213
+ attr_accessor :value
214
+
215
+ def initialize(**args)
216
+ update!(**args)
217
+ end
218
+
219
+ # Update properties of this object
220
+ def update!(**args)
221
+ @value = args[:value] if args.key?(:value)
222
+ end
223
+ end
224
+
225
+ # The result of a frequency distribution aggregation.
226
+ class AggregationResultFrequency
227
+ include Google::Apis::Core::Hashable
228
+
229
+ #
230
+ # Corresponds to the JSON property `values`
231
+ # @return [Hash<String,Fixnum>]
232
+ attr_accessor :values
233
+
234
+ def initialize(**args)
235
+ update!(**args)
236
+ end
237
+
238
+ # Update properties of this object
239
+ def update!(**args)
240
+ @values = args[:values] if args.key?(:values)
241
+ end
242
+ end
243
+
244
+ # The result of a bucketed histogram aggregation.
245
+ class AggregationResultHistogram
246
+ include Google::Apis::Core::Hashable
247
+
248
+ # Buckets in the histogram. There will be `n+1` buckets matching `n` lower
249
+ # bounds in the request. The first bucket will be from -infinity to the first
250
+ # bound. Subsequent buckets will be between one bound and the next. The final
251
+ # bucket will be from the final bound to infinity.
252
+ # Corresponds to the JSON property `buckets`
253
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::AggregationResultHistogramBucket>]
254
+ attr_accessor :buckets
255
+
256
+ def initialize(**args)
257
+ update!(**args)
258
+ end
259
+
260
+ # Update properties of this object
261
+ def update!(**args)
262
+ @buckets = args[:buckets] if args.key?(:buckets)
263
+ end
264
+ end
265
+
266
+ # A histogram bucket with a lower and upper bound, and a count of items with a
267
+ # field value between those bounds. The lower bound is inclusive and the upper
268
+ # bound is exclusive. Lower bound may be -infinity and upper bound may be
269
+ # infinity.
270
+ class AggregationResultHistogramBucket
271
+ include Google::Apis::Core::Hashable
272
+
273
+ # Count of items in the bucket.
274
+ # Corresponds to the JSON property `count`
275
+ # @return [Fixnum]
276
+ attr_accessor :count
277
+
278
+ # Lower bound - inclusive.
279
+ # Corresponds to the JSON property `lowerBound`
280
+ # @return [Float]
281
+ attr_accessor :lower_bound
282
+
283
+ # Upper bound - exclusive.
284
+ # Corresponds to the JSON property `upperBound`
285
+ # @return [Float]
286
+ attr_accessor :upper_bound
287
+
288
+ def initialize(**args)
289
+ update!(**args)
290
+ end
291
+
292
+ # Update properties of this object
293
+ def update!(**args)
294
+ @count = args[:count] if args.key?(:count)
295
+ @lower_bound = args[:lower_bound] if args.key?(:lower_bound)
296
+ @upper_bound = args[:upper_bound] if args.key?(:upper_bound)
297
+ end
298
+ end
299
+
300
+ # The result of a sum aggregation.
301
+ class AggregationResultSum
302
+ include Google::Apis::Core::Hashable
303
+
304
+ #
305
+ # Corresponds to the JSON property `value`
306
+ # @return [Float]
307
+ attr_accessor :value
308
+
309
+ def initialize(**args)
310
+ update!(**args)
311
+ end
312
+
313
+ # Update properties of this object
314
+ def update!(**args)
315
+ @value = args[:value] if args.key?(:value)
316
+ end
317
+ end
318
+
319
+ # Sum of field values.
320
+ class AggregationSum
321
+ include Google::Apis::Core::Hashable
322
+
323
+ def initialize(**args)
324
+ update!(**args)
325
+ end
326
+
327
+ # Update properties of this object
328
+ def update!(**args)
329
+ end
330
+ end
331
+
332
+ # An asset represents a resource in your environment. Asset types include
333
+ # virtual machines and databases.
334
+ class Asset
335
+ include Google::Apis::Core::Hashable
336
+
337
+ # Generic asset attributes.
338
+ # Corresponds to the JSON property `attributes`
339
+ # @return [Hash<String,String>]
340
+ attr_accessor :attributes
341
+
342
+ # Output only. The timestamp when the asset was created.
343
+ # Corresponds to the JSON property `createTime`
344
+ # @return [String]
345
+ attr_accessor :create_time
346
+
347
+ # Labels as key value pairs.
348
+ # Corresponds to the JSON property `labels`
349
+ # @return [Hash<String,String>]
350
+ attr_accessor :labels
351
+
352
+ # Output only. The full name of the asset.
353
+ # Corresponds to the JSON property `name`
354
+ # @return [String]
355
+ attr_accessor :name
356
+
357
+ # Output only. The list of sources contributing to the asset.
358
+ # Corresponds to the JSON property `sources`
359
+ # @return [Array<String>]
360
+ attr_accessor :sources
361
+
362
+ # Output only. The timestamp when the asset was last updated.
363
+ # Corresponds to the JSON property `updateTime`
364
+ # @return [String]
365
+ attr_accessor :update_time
366
+
367
+ # Details of a VirtualMachine.
368
+ # Corresponds to the JSON property `virtualMachineDetails`
369
+ # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachineDetails]
370
+ attr_accessor :virtual_machine_details
371
+
372
+ def initialize(**args)
373
+ update!(**args)
374
+ end
375
+
376
+ # Update properties of this object
377
+ def update!(**args)
378
+ @attributes = args[:attributes] if args.key?(:attributes)
379
+ @create_time = args[:create_time] if args.key?(:create_time)
380
+ @labels = args[:labels] if args.key?(:labels)
381
+ @name = args[:name] if args.key?(:name)
382
+ @sources = args[:sources] if args.key?(:sources)
383
+ @update_time = args[:update_time] if args.key?(:update_time)
384
+ @virtual_machine_details = args[:virtual_machine_details] if args.key?(:virtual_machine_details)
385
+ end
386
+ end
387
+
388
+ # Contains data reported from an inventory source on an asset.
389
+ class AssetFrame
390
+ include Google::Apis::Core::Hashable
391
+
392
+ # Generic asset attributes.
393
+ # Corresponds to the JSON property `attributes`
394
+ # @return [Hash<String,String>]
395
+ attr_accessor :attributes
396
+
397
+ # Labels as key value pairs.
398
+ # Corresponds to the JSON property `labels`
399
+ # @return [Hash<String,String>]
400
+ attr_accessor :labels
401
+
402
+ # Asset performance data samples.
403
+ # Corresponds to the JSON property `performanceSamples`
404
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::PerformanceSample>]
405
+ attr_accessor :performance_samples
406
+
407
+ # The time the data was reported.
408
+ # Corresponds to the JSON property `reportTime`
409
+ # @return [String]
410
+ attr_accessor :report_time
411
+
412
+ # Optional. Trace token is optionally provided to assist with debugging and
413
+ # traceability.
414
+ # Corresponds to the JSON property `traceToken`
415
+ # @return [String]
416
+ attr_accessor :trace_token
417
+
418
+ # Details of a VirtualMachine.
419
+ # Corresponds to the JSON property `virtualMachineDetails`
420
+ # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachineDetails]
421
+ attr_accessor :virtual_machine_details
422
+
423
+ def initialize(**args)
424
+ update!(**args)
425
+ end
426
+
427
+ # Update properties of this object
428
+ def update!(**args)
429
+ @attributes = args[:attributes] if args.key?(:attributes)
430
+ @labels = args[:labels] if args.key?(:labels)
431
+ @performance_samples = args[:performance_samples] if args.key?(:performance_samples)
432
+ @report_time = args[:report_time] if args.key?(:report_time)
433
+ @trace_token = args[:trace_token] if args.key?(:trace_token)
434
+ @virtual_machine_details = args[:virtual_machine_details] if args.key?(:virtual_machine_details)
435
+ end
436
+ end
437
+
438
+ # A request to update a list of assets.
439
+ class BatchUpdateAssetsRequest
440
+ include Google::Apis::Core::Hashable
441
+
442
+ # Required. The request message specifying the resources to update. A maximum of
443
+ # 1000 assets can be modified in a batch.
444
+ # Corresponds to the JSON property `requests`
445
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::UpdateAssetRequest>]
446
+ attr_accessor :requests
447
+
448
+ def initialize(**args)
449
+ update!(**args)
450
+ end
451
+
452
+ # Update properties of this object
453
+ def update!(**args)
454
+ @requests = args[:requests] if args.key?(:requests)
455
+ end
456
+ end
457
+
458
+ # Response for updating a list of assets.
459
+ class BatchUpdateAssetsResponse
460
+ include Google::Apis::Core::Hashable
461
+
462
+ # Update asset content. The content only includes values after field mask being
463
+ # applied.
464
+ # Corresponds to the JSON property `assets`
465
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Asset>]
466
+ attr_accessor :assets
467
+
468
+ def initialize(**args)
469
+ update!(**args)
470
+ end
471
+
472
+ # Update properties of this object
473
+ def update!(**args)
474
+ @assets = args[:assets] if args.key?(:assets)
475
+ end
476
+ end
477
+
478
+ # Details about the bios.
479
+ class BiosDetails
480
+ include Google::Apis::Core::Hashable
481
+
482
+ # Bios manufacturer.
483
+ # Corresponds to the JSON property `biosManufacturer`
484
+ # @return [String]
485
+ attr_accessor :bios_manufacturer
486
+
487
+ # Bios name.
488
+ # Corresponds to the JSON property `biosName`
489
+ # @return [String]
490
+ attr_accessor :bios_name
491
+
492
+ # Bios release date.
493
+ # Corresponds to the JSON property `biosReleaseDate`
494
+ # @return [String]
495
+ attr_accessor :bios_release_date
496
+
497
+ # Bios version.
498
+ # Corresponds to the JSON property `biosVersion`
499
+ # @return [String]
500
+ attr_accessor :bios_version
501
+
502
+ # SMBios UUID.
503
+ # Corresponds to the JSON property `smbiosUuid`
504
+ # @return [String]
505
+ attr_accessor :smbios_uuid
506
+
507
+ def initialize(**args)
508
+ update!(**args)
509
+ end
510
+
511
+ # Update properties of this object
512
+ def update!(**args)
513
+ @bios_manufacturer = args[:bios_manufacturer] if args.key?(:bios_manufacturer)
514
+ @bios_name = args[:bios_name] if args.key?(:bios_name)
515
+ @bios_release_date = args[:bios_release_date] if args.key?(:bios_release_date)
516
+ @bios_version = args[:bios_version] if args.key?(:bios_version)
517
+ @smbios_uuid = args[:smbios_uuid] if args.key?(:smbios_uuid)
518
+ end
519
+ end
520
+
521
+ # The request message for Operations.CancelOperation.
522
+ class CancelOperationRequest
523
+ include Google::Apis::Core::Hashable
524
+
525
+ def initialize(**args)
526
+ update!(**args)
527
+ end
528
+
529
+ # Update properties of this object
530
+ def update!(**args)
531
+ end
532
+ end
533
+
534
+ # CPU usage sample.
535
+ class CpuUsageSample
536
+ include Google::Apis::Core::Hashable
537
+
538
+ # Percentage of total CPU capacity utilized. Must be in the interval [0, 100].
539
+ # On most systems can be calculated using 100 - idle percentage.
540
+ # Corresponds to the JSON property `utilizedPercentage`
541
+ # @return [Float]
542
+ attr_accessor :utilized_percentage
543
+
544
+ def initialize(**args)
545
+ update!(**args)
546
+ end
547
+
548
+ # Update properties of this object
549
+ def update!(**args)
550
+ @utilized_percentage = args[:utilized_percentage] if args.key?(:utilized_percentage)
551
+ end
552
+ end
553
+
554
+ # Represents a whole or partial calendar date, such as a birthday. The time of
555
+ # day and time zone are either specified elsewhere or are insignificant. The
556
+ # date is relative to the Gregorian Calendar. This can represent one of the
557
+ # following: * A full date, with non-zero year, month, and day values. * A month
558
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
559
+ # with a zero month and a zero day. * A year and month, with a zero day (for
560
+ # example, a credit card expiration date). Related types: * google.type.
561
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
562
+ class Date
563
+ include Google::Apis::Core::Hashable
564
+
565
+ # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
566
+ # specify a year by itself or a year and month where the day isn't significant.
567
+ # Corresponds to the JSON property `day`
568
+ # @return [Fixnum]
569
+ attr_accessor :day
570
+
571
+ # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
572
+ # and day.
573
+ # Corresponds to the JSON property `month`
574
+ # @return [Fixnum]
575
+ attr_accessor :month
576
+
577
+ # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
578
+ # year.
579
+ # Corresponds to the JSON property `year`
580
+ # @return [Fixnum]
581
+ attr_accessor :year
582
+
583
+ def initialize(**args)
584
+ update!(**args)
585
+ end
586
+
587
+ # Update properties of this object
588
+ def update!(**args)
589
+ @day = args[:day] if args.key?(:day)
590
+ @month = args[:month] if args.key?(:month)
591
+ @year = args[:year] if args.key?(:year)
592
+ end
593
+ end
594
+
595
+ # Represents civil time (or occasionally physical time). This type can represent
596
+ # a civil time in one of a few possible ways: * When utc_offset is set and
597
+ # time_zone is unset: a civil time on a calendar day with a particular offset
598
+ # from UTC. * When time_zone is set and utc_offset is unset: a civil time on a
599
+ # calendar day in a particular time zone. * When neither time_zone nor
600
+ # utc_offset is set: a civil time on a calendar day in local time. The date is
601
+ # relative to the Proleptic Gregorian Calendar. If year, month, or day are 0,
602
+ # the DateTime is considered not to have a specific year, month, or day
603
+ # respectively. This type may also be used to represent a physical time if all
604
+ # the date and time fields are set and either case of the `time_offset` oneof is
605
+ # set. Consider using `Timestamp` message for physical time instead. If your use
606
+ # case also would like to store the user's timezone, that can be done in another
607
+ # field. This type is more flexible than some applications may want. Make sure
608
+ # to document and validate your application's limitations.
609
+ class DateTime
610
+ include Google::Apis::Core::Hashable
611
+
612
+ # Optional. Day of month. Must be from 1 to 31 and valid for the year and month,
613
+ # or 0 if specifying a datetime without a day.
614
+ # Corresponds to the JSON property `day`
615
+ # @return [Fixnum]
616
+ attr_accessor :day
617
+
618
+ # Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults to
619
+ # 0 (midnight). An API may choose to allow the value "24:00:00" for scenarios
620
+ # like business closing time.
621
+ # Corresponds to the JSON property `hours`
622
+ # @return [Fixnum]
623
+ attr_accessor :hours
624
+
625
+ # Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0.
626
+ # Corresponds to the JSON property `minutes`
627
+ # @return [Fixnum]
628
+ attr_accessor :minutes
629
+
630
+ # Optional. Month of year. Must be from 1 to 12, or 0 if specifying a datetime
631
+ # without a month.
632
+ # Corresponds to the JSON property `month`
633
+ # @return [Fixnum]
634
+ attr_accessor :month
635
+
636
+ # Optional. Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999,
637
+ # defaults to 0.
638
+ # Corresponds to the JSON property `nanos`
639
+ # @return [Fixnum]
640
+ attr_accessor :nanos
641
+
642
+ # Optional. Seconds of minutes of the time. Must normally be from 0 to 59,
643
+ # defaults to 0. An API may allow the value 60 if it allows leap-seconds.
644
+ # Corresponds to the JSON property `seconds`
645
+ # @return [Fixnum]
646
+ attr_accessor :seconds
647
+
648
+ # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/
649
+ # time-zones).
650
+ # Corresponds to the JSON property `timeZone`
651
+ # @return [Google::Apis::MigrationcenterV1alpha1::TimeZone]
652
+ attr_accessor :time_zone
653
+
654
+ # UTC offset. Must be whole seconds, between -18 hours and +18 hours. For
655
+ # example, a UTC offset of -4:00 would be represented as ` seconds: -14400 `.
656
+ # Corresponds to the JSON property `utcOffset`
657
+ # @return [String]
658
+ attr_accessor :utc_offset
659
+
660
+ # Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a datetime
661
+ # without a year.
662
+ # Corresponds to the JSON property `year`
663
+ # @return [Fixnum]
664
+ attr_accessor :year
665
+
666
+ def initialize(**args)
667
+ update!(**args)
668
+ end
669
+
670
+ # Update properties of this object
671
+ def update!(**args)
672
+ @day = args[:day] if args.key?(:day)
673
+ @hours = args[:hours] if args.key?(:hours)
674
+ @minutes = args[:minutes] if args.key?(:minutes)
675
+ @month = args[:month] if args.key?(:month)
676
+ @nanos = args[:nanos] if args.key?(:nanos)
677
+ @seconds = args[:seconds] if args.key?(:seconds)
678
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
679
+ @utc_offset = args[:utc_offset] if args.key?(:utc_offset)
680
+ @year = args[:year] if args.key?(:year)
681
+ end
682
+ end
683
+
684
+ # Single disk entry.
685
+ class DiskEntry
686
+ include Google::Apis::Core::Hashable
687
+
688
+ # Disk label.
689
+ # Corresponds to the JSON property `diskLabel`
690
+ # @return [String]
691
+ attr_accessor :disk_label
692
+
693
+ # Disk label type (e.g. BIOS/GPT)
694
+ # Corresponds to the JSON property `diskLabelType`
695
+ # @return [String]
696
+ attr_accessor :disk_label_type
697
+
698
+ # Disk hardware address (e.g. 0:1 for SCSI).
699
+ # Corresponds to the JSON property `hwAddress`
700
+ # @return [String]
701
+ attr_accessor :hw_address
702
+
703
+ # Disks interface type (e.g. SATA/SCSI)
704
+ # Corresponds to the JSON property `interfaceType`
705
+ # @return [String]
706
+ attr_accessor :interface_type
707
+
708
+ # Partition layout.
709
+ # Corresponds to the JSON property `partitions`
710
+ # @return [Google::Apis::MigrationcenterV1alpha1::DiskPartitionList]
711
+ attr_accessor :partitions
712
+
713
+ # Disk status (e.g. online).
714
+ # Corresponds to the JSON property `status`
715
+ # @return [String]
716
+ attr_accessor :status
717
+
718
+ # Disk Capacity (required).
719
+ # Corresponds to the JSON property `totalCapacityBytes`
720
+ # @return [Fixnum]
721
+ attr_accessor :total_capacity_bytes
722
+
723
+ # Disk Free Space.
724
+ # Corresponds to the JSON property `totalFreeBytes`
725
+ # @return [Fixnum]
726
+ attr_accessor :total_free_bytes
727
+
728
+ # VMware disk config details.
729
+ # Corresponds to the JSON property `vmwareConfig`
730
+ # @return [Google::Apis::MigrationcenterV1alpha1::VmwareDiskConfig]
731
+ attr_accessor :vmware_config
732
+
733
+ def initialize(**args)
734
+ update!(**args)
735
+ end
736
+
737
+ # Update properties of this object
738
+ def update!(**args)
739
+ @disk_label = args[:disk_label] if args.key?(:disk_label)
740
+ @disk_label_type = args[:disk_label_type] if args.key?(:disk_label_type)
741
+ @hw_address = args[:hw_address] if args.key?(:hw_address)
742
+ @interface_type = args[:interface_type] if args.key?(:interface_type)
743
+ @partitions = args[:partitions] if args.key?(:partitions)
744
+ @status = args[:status] if args.key?(:status)
745
+ @total_capacity_bytes = args[:total_capacity_bytes] if args.key?(:total_capacity_bytes)
746
+ @total_free_bytes = args[:total_free_bytes] if args.key?(:total_free_bytes)
747
+ @vmware_config = args[:vmware_config] if args.key?(:vmware_config)
748
+ end
749
+ end
750
+
751
+ # VM disks.
752
+ class DiskEntryList
753
+ include Google::Apis::Core::Hashable
754
+
755
+ # Disk entries.
756
+ # Corresponds to the JSON property `entries`
757
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::DiskEntry>]
758
+ attr_accessor :entries
759
+
760
+ def initialize(**args)
761
+ update!(**args)
762
+ end
763
+
764
+ # Update properties of this object
765
+ def update!(**args)
766
+ @entries = args[:entries] if args.key?(:entries)
767
+ end
768
+ end
769
+
770
+ # Disk Partition details.
771
+ class DiskPartition
772
+ include Google::Apis::Core::Hashable
773
+
774
+ # Partition capacity.
775
+ # Corresponds to the JSON property `capacityBytes`
776
+ # @return [Fixnum]
777
+ attr_accessor :capacity_bytes
778
+
779
+ # Partition file system.
780
+ # Corresponds to the JSON property `fileSystem`
781
+ # @return [String]
782
+ attr_accessor :file_system
783
+
784
+ # Partition free space.
785
+ # Corresponds to the JSON property `freeBytes`
786
+ # @return [Fixnum]
787
+ attr_accessor :free_bytes
788
+
789
+ # Mount pount (Linux/Windows) or drive letter (Windows).
790
+ # Corresponds to the JSON property `mountPoint`
791
+ # @return [String]
792
+ attr_accessor :mount_point
793
+
794
+ # Sub-partitions.
795
+ # Corresponds to the JSON property `subPartitions`
796
+ # @return [Google::Apis::MigrationcenterV1alpha1::DiskPartitionList]
797
+ attr_accessor :sub_partitions
798
+
799
+ # Partition type (e.g. BIOS boot).
800
+ # Corresponds to the JSON property `type`
801
+ # @return [String]
802
+ attr_accessor :type
803
+
804
+ # Partition UUID.
805
+ # Corresponds to the JSON property `uuid`
806
+ # @return [String]
807
+ attr_accessor :uuid
808
+
809
+ def initialize(**args)
810
+ update!(**args)
811
+ end
812
+
813
+ # Update properties of this object
814
+ def update!(**args)
815
+ @capacity_bytes = args[:capacity_bytes] if args.key?(:capacity_bytes)
816
+ @file_system = args[:file_system] if args.key?(:file_system)
817
+ @free_bytes = args[:free_bytes] if args.key?(:free_bytes)
818
+ @mount_point = args[:mount_point] if args.key?(:mount_point)
819
+ @sub_partitions = args[:sub_partitions] if args.key?(:sub_partitions)
820
+ @type = args[:type] if args.key?(:type)
821
+ @uuid = args[:uuid] if args.key?(:uuid)
822
+ end
823
+ end
824
+
825
+ #
826
+ class DiskPartitionList
827
+ include Google::Apis::Core::Hashable
828
+
829
+ # Partition entries.
830
+ # Corresponds to the JSON property `entries`
831
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::DiskPartition>]
832
+ attr_accessor :entries
833
+
834
+ def initialize(**args)
835
+ update!(**args)
836
+ end
837
+
838
+ # Update properties of this object
839
+ def update!(**args)
840
+ @entries = args[:entries] if args.key?(:entries)
841
+ end
842
+ end
843
+
844
+ # Disk usage sample. Values are across all disks.
845
+ class DiskUsageSample
846
+ include Google::Apis::Core::Hashable
847
+
848
+ # Average IOPS sampled over a short window. Must be non-negative.
849
+ # Corresponds to the JSON property `averageIops`
850
+ # @return [Float]
851
+ attr_accessor :average_iops
852
+
853
+ def initialize(**args)
854
+ update!(**args)
855
+ end
856
+
857
+ # Update properties of this object
858
+ def update!(**args)
859
+ @average_iops = args[:average_iops] if args.key?(:average_iops)
860
+ end
861
+ end
862
+
863
+ # A generic empty message that you can re-use to avoid defining duplicated empty
864
+ # messages in your APIs. A typical example is to use it as the request or the
865
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
866
+ # protobuf.Empty) returns (google.protobuf.Empty); `
867
+ class Empty
868
+ include Google::Apis::Core::Hashable
869
+
870
+ def initialize(**args)
871
+ update!(**args)
872
+ end
873
+
874
+ # Update properties of this object
875
+ def update!(**args)
876
+ end
877
+ end
878
+
879
+ # A resource that reports result of the import job execution.
880
+ class ExecutionReport
881
+ include Google::Apis::Core::Hashable
882
+
883
+ # A resource that aggregates errors across import job files.
884
+ # Corresponds to the JSON property `executionErrors`
885
+ # @return [Google::Apis::MigrationcenterV1alpha1::ValidationReport]
886
+ attr_accessor :execution_errors
887
+
888
+ # Total number of asset frames reported for the import job.
889
+ # Corresponds to the JSON property `framesReported`
890
+ # @return [Fixnum]
891
+ attr_accessor :frames_reported
892
+
893
+ # List of job-level errors. Deprecated, use the job errors under
894
+ # execution_errors instead.
895
+ # Corresponds to the JSON property `jobErrors`
896
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ImportError>]
897
+ attr_accessor :job_errors
898
+
899
+ # Total number of rows in the import job.
900
+ # Corresponds to the JSON property `totalRowsCount`
901
+ # @return [Fixnum]
902
+ attr_accessor :total_rows_count
903
+
904
+ def initialize(**args)
905
+ update!(**args)
906
+ end
907
+
908
+ # Update properties of this object
909
+ def update!(**args)
910
+ @execution_errors = args[:execution_errors] if args.key?(:execution_errors)
911
+ @frames_reported = args[:frames_reported] if args.key?(:frames_reported)
912
+ @job_errors = args[:job_errors] if args.key?(:job_errors)
913
+ @total_rows_count = args[:total_rows_count] if args.key?(:total_rows_count)
914
+ end
915
+ end
916
+
917
+ # A resource that aggregates the validation errors found in an import job file.
918
+ class FileValidationReport
919
+ include Google::Apis::Core::Hashable
920
+
921
+ # List of file level errors.
922
+ # Corresponds to the JSON property `fileErrors`
923
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ImportError>]
924
+ attr_accessor :file_errors
925
+
926
+ # The name of the file.
927
+ # Corresponds to the JSON property `fileName`
928
+ # @return [String]
929
+ attr_accessor :file_name
930
+
931
+ # Flag indicating that processing was aborted due to maximum number of errors.
932
+ # Corresponds to the JSON property `partialReport`
933
+ # @return [Boolean]
934
+ attr_accessor :partial_report
935
+ alias_method :partial_report?, :partial_report
936
+
937
+ # Partial list of rows that encountered validation error.
938
+ # Corresponds to the JSON property `rowErrors`
939
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ImportRowError>]
940
+ attr_accessor :row_errors
941
+
942
+ def initialize(**args)
943
+ update!(**args)
944
+ end
945
+
946
+ # Update properties of this object
947
+ def update!(**args)
948
+ @file_errors = args[:file_errors] if args.key?(:file_errors)
949
+ @file_name = args[:file_name] if args.key?(:file_name)
950
+ @partial_report = args[:partial_report] if args.key?(:partial_report)
951
+ @row_errors = args[:row_errors] if args.key?(:row_errors)
952
+ end
953
+ end
954
+
955
+ # Collection of frame data.
956
+ class Frames
957
+ include Google::Apis::Core::Hashable
958
+
959
+ # A repeated field of asset data.
960
+ # Corresponds to the JSON property `framesData`
961
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::AssetFrame>]
962
+ attr_accessor :frames_data
963
+
964
+ def initialize(**args)
965
+ update!(**args)
966
+ end
967
+
968
+ # Update properties of this object
969
+ def update!(**args)
970
+ @frames_data = args[:frames_data] if args.key?(:frames_data)
971
+ end
972
+ end
973
+
974
+ # Single fstab entry.
975
+ class FstabEntry
976
+ include Google::Apis::Core::Hashable
977
+
978
+ # The mount point for the filesystem.
979
+ # Corresponds to the JSON property `file`
980
+ # @return [String]
981
+ attr_accessor :file
982
+
983
+ # Used by dump to determine which filesystems need to be dumped.
984
+ # Corresponds to the JSON property `freq`
985
+ # @return [Fixnum]
986
+ attr_accessor :freq
987
+
988
+ # Mount options associated with the filesystem.
989
+ # Corresponds to the JSON property `mntops`
990
+ # @return [String]
991
+ attr_accessor :mntops
992
+
993
+ # Used by the fsck(8) program to determine the order in which filesystem checks
994
+ # are done at reboot time.
995
+ # Corresponds to the JSON property `passno`
996
+ # @return [Fixnum]
997
+ attr_accessor :passno
998
+
999
+ # The block special device or remote filesystem to be mounted.
1000
+ # Corresponds to the JSON property `spec`
1001
+ # @return [String]
1002
+ attr_accessor :spec
1003
+
1004
+ # The type of the filesystem.
1005
+ # Corresponds to the JSON property `vfstype`
1006
+ # @return [String]
1007
+ attr_accessor :vfstype
1008
+
1009
+ def initialize(**args)
1010
+ update!(**args)
1011
+ end
1012
+
1013
+ # Update properties of this object
1014
+ def update!(**args)
1015
+ @file = args[:file] if args.key?(:file)
1016
+ @freq = args[:freq] if args.key?(:freq)
1017
+ @mntops = args[:mntops] if args.key?(:mntops)
1018
+ @passno = args[:passno] if args.key?(:passno)
1019
+ @spec = args[:spec] if args.key?(:spec)
1020
+ @vfstype = args[:vfstype] if args.key?(:vfstype)
1021
+ end
1022
+ end
1023
+
1024
+ # Fstab content.
1025
+ class FstabEntryList
1026
+ include Google::Apis::Core::Hashable
1027
+
1028
+ # Fstab entries.
1029
+ # Corresponds to the JSON property `entries`
1030
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::FstabEntry>]
1031
+ attr_accessor :entries
1032
+
1033
+ def initialize(**args)
1034
+ update!(**args)
1035
+ end
1036
+
1037
+ # Update properties of this object
1038
+ def update!(**args)
1039
+ @entries = args[:entries] if args.key?(:entries)
1040
+ end
1041
+ end
1042
+
1043
+ # A resource that represents a payload hosted on Google Cloud Storage.
1044
+ class GcsPayloadInfo
1045
+ include Google::Apis::Core::Hashable
1046
+
1047
+ # The import job format.
1048
+ # Corresponds to the JSON property `format`
1049
+ # @return [String]
1050
+ attr_accessor :format
1051
+
1052
+ # The payload path in Google Cloud Storage.
1053
+ # Corresponds to the JSON property `path`
1054
+ # @return [String]
1055
+ attr_accessor :path
1056
+
1057
+ def initialize(**args)
1058
+ update!(**args)
1059
+ end
1060
+
1061
+ # Update properties of this object
1062
+ def update!(**args)
1063
+ @format = args[:format] if args.key?(:format)
1064
+ @path = args[:path] if args.key?(:path)
1065
+ end
1066
+ end
1067
+
1068
+ # Guest OS config information.
1069
+ class GuestConfigDetails
1070
+ include Google::Apis::Core::Hashable
1071
+
1072
+ # Fstab content.
1073
+ # Corresponds to the JSON property `fstab`
1074
+ # @return [Google::Apis::MigrationcenterV1alpha1::FstabEntryList]
1075
+ attr_accessor :fstab
1076
+
1077
+ # Hosts content.
1078
+ # Corresponds to the JSON property `hosts`
1079
+ # @return [Google::Apis::MigrationcenterV1alpha1::HostsEntryList]
1080
+ attr_accessor :hosts
1081
+
1082
+ # OS issue (typically /etc/issue in Linux).
1083
+ # Corresponds to the JSON property `issue`
1084
+ # @return [String]
1085
+ attr_accessor :issue
1086
+
1087
+ # NFS exports.
1088
+ # Corresponds to the JSON property `nfsExports`
1089
+ # @return [Google::Apis::MigrationcenterV1alpha1::NfsExportList]
1090
+ attr_accessor :nfs_exports
1091
+
1092
+ # SELinux details.
1093
+ # Corresponds to the JSON property `selinux`
1094
+ # @return [Google::Apis::MigrationcenterV1alpha1::Selinux]
1095
+ attr_accessor :selinux
1096
+
1097
+ def initialize(**args)
1098
+ update!(**args)
1099
+ end
1100
+
1101
+ # Update properties of this object
1102
+ def update!(**args)
1103
+ @fstab = args[:fstab] if args.key?(:fstab)
1104
+ @hosts = args[:hosts] if args.key?(:hosts)
1105
+ @issue = args[:issue] if args.key?(:issue)
1106
+ @nfs_exports = args[:nfs_exports] if args.key?(:nfs_exports)
1107
+ @selinux = args[:selinux] if args.key?(:selinux)
1108
+ end
1109
+ end
1110
+
1111
+ # Guest installed application information.
1112
+ class GuestInstalledApplication
1113
+ include Google::Apis::Core::Hashable
1114
+
1115
+ # Installed application name .
1116
+ # Corresponds to the JSON property `name`
1117
+ # @return [String]
1118
+ attr_accessor :name
1119
+
1120
+ # Source path.
1121
+ # Corresponds to the JSON property `path`
1122
+ # @return [String]
1123
+ attr_accessor :path
1124
+
1125
+ # Date application was installed.
1126
+ # Corresponds to the JSON property `time`
1127
+ # @return [String]
1128
+ attr_accessor :time
1129
+
1130
+ # Installed application vendor.
1131
+ # Corresponds to the JSON property `vendor`
1132
+ # @return [String]
1133
+ attr_accessor :vendor
1134
+
1135
+ # Installed application version.
1136
+ # Corresponds to the JSON property `version`
1137
+ # @return [String]
1138
+ attr_accessor :version
1139
+
1140
+ def initialize(**args)
1141
+ update!(**args)
1142
+ end
1143
+
1144
+ # Update properties of this object
1145
+ def update!(**args)
1146
+ @name = args[:name] if args.key?(:name)
1147
+ @path = args[:path] if args.key?(:path)
1148
+ @time = args[:time] if args.key?(:time)
1149
+ @vendor = args[:vendor] if args.key?(:vendor)
1150
+ @version = args[:version] if args.key?(:version)
1151
+ end
1152
+ end
1153
+
1154
+ # Guest installed application list.
1155
+ class GuestInstalledApplicationList
1156
+ include Google::Apis::Core::Hashable
1157
+
1158
+ #
1159
+ # Corresponds to the JSON property `entries`
1160
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::GuestInstalledApplication>]
1161
+ attr_accessor :entries
1162
+
1163
+ def initialize(**args)
1164
+ update!(**args)
1165
+ end
1166
+
1167
+ # Update properties of this object
1168
+ def update!(**args)
1169
+ @entries = args[:entries] if args.key?(:entries)
1170
+ end
1171
+ end
1172
+
1173
+ # Information from Guest-level collections.
1174
+ class GuestOsDetails
1175
+ include Google::Apis::Core::Hashable
1176
+
1177
+ # Guest OS config information.
1178
+ # Corresponds to the JSON property `config`
1179
+ # @return [Google::Apis::MigrationcenterV1alpha1::GuestConfigDetails]
1180
+ attr_accessor :config
1181
+
1182
+ # Guest OS runtime information.
1183
+ # Corresponds to the JSON property `runtime`
1184
+ # @return [Google::Apis::MigrationcenterV1alpha1::GuestRuntimeDetails]
1185
+ attr_accessor :runtime
1186
+
1187
+ def initialize(**args)
1188
+ update!(**args)
1189
+ end
1190
+
1191
+ # Update properties of this object
1192
+ def update!(**args)
1193
+ @config = args[:config] if args.key?(:config)
1194
+ @runtime = args[:runtime] if args.key?(:runtime)
1195
+ end
1196
+ end
1197
+
1198
+ # Guest OS runtime information.
1199
+ class GuestRuntimeDetails
1200
+ include Google::Apis::Core::Hashable
1201
+
1202
+ # Domain, e.g. c.stratozone-development.internal.
1203
+ # Corresponds to the JSON property `domain`
1204
+ # @return [String]
1205
+ attr_accessor :domain
1206
+
1207
+ # Guest installed application list.
1208
+ # Corresponds to the JSON property `installedApps`
1209
+ # @return [Google::Apis::MigrationcenterV1alpha1::GuestInstalledApplicationList]
1210
+ attr_accessor :installed_apps
1211
+
1212
+ # Represents a whole or partial calendar date, such as a birthday. The time of
1213
+ # day and time zone are either specified elsewhere or are insignificant. The
1214
+ # date is relative to the Gregorian Calendar. This can represent one of the
1215
+ # following: * A full date, with non-zero year, month, and day values. * A month
1216
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
1217
+ # with a zero month and a zero day. * A year and month, with a zero day (for
1218
+ # example, a credit card expiration date). Related types: * google.type.
1219
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
1220
+ # Corresponds to the JSON property `lastUptime`
1221
+ # @return [Google::Apis::MigrationcenterV1alpha1::Date]
1222
+ attr_accessor :last_uptime
1223
+
1224
+ # Machine name.
1225
+ # Corresponds to the JSON property `machineName`
1226
+ # @return [String]
1227
+ attr_accessor :machine_name
1228
+
1229
+ # Runtime networking information.
1230
+ # Corresponds to the JSON property `networkInfo`
1231
+ # @return [Google::Apis::MigrationcenterV1alpha1::RuntimeNetworkInfo]
1232
+ attr_accessor :network_info
1233
+
1234
+ # Open file list.
1235
+ # Corresponds to the JSON property `openFileList`
1236
+ # @return [Google::Apis::MigrationcenterV1alpha1::OpenFileList]
1237
+ attr_accessor :open_file_list
1238
+
1239
+ # List of running guest OS processes.
1240
+ # Corresponds to the JSON property `processes`
1241
+ # @return [Google::Apis::MigrationcenterV1alpha1::RunningProcessList]
1242
+ attr_accessor :processes
1243
+
1244
+ # List of running guest OS services.
1245
+ # Corresponds to the JSON property `services`
1246
+ # @return [Google::Apis::MigrationcenterV1alpha1::RunningServiceList]
1247
+ attr_accessor :services
1248
+
1249
+ def initialize(**args)
1250
+ update!(**args)
1251
+ end
1252
+
1253
+ # Update properties of this object
1254
+ def update!(**args)
1255
+ @domain = args[:domain] if args.key?(:domain)
1256
+ @installed_apps = args[:installed_apps] if args.key?(:installed_apps)
1257
+ @last_uptime = args[:last_uptime] if args.key?(:last_uptime)
1258
+ @machine_name = args[:machine_name] if args.key?(:machine_name)
1259
+ @network_info = args[:network_info] if args.key?(:network_info)
1260
+ @open_file_list = args[:open_file_list] if args.key?(:open_file_list)
1261
+ @processes = args[:processes] if args.key?(:processes)
1262
+ @services = args[:services] if args.key?(:services)
1263
+ end
1264
+ end
1265
+
1266
+ # Single /etc/hosts entry.
1267
+ class HostsEntry
1268
+ include Google::Apis::Core::Hashable
1269
+
1270
+ # List of host names / aliases.
1271
+ # Corresponds to the JSON property `hostNames`
1272
+ # @return [Array<String>]
1273
+ attr_accessor :host_names
1274
+
1275
+ # IP (raw, IPv4/6 agnostic).
1276
+ # Corresponds to the JSON property `ip`
1277
+ # @return [String]
1278
+ attr_accessor :ip
1279
+
1280
+ def initialize(**args)
1281
+ update!(**args)
1282
+ end
1283
+
1284
+ # Update properties of this object
1285
+ def update!(**args)
1286
+ @host_names = args[:host_names] if args.key?(:host_names)
1287
+ @ip = args[:ip] if args.key?(:ip)
1288
+ end
1289
+ end
1290
+
1291
+ # Hosts content.
1292
+ class HostsEntryList
1293
+ include Google::Apis::Core::Hashable
1294
+
1295
+ # Hosts entries.
1296
+ # Corresponds to the JSON property `entries`
1297
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::HostsEntry>]
1298
+ attr_accessor :entries
1299
+
1300
+ def initialize(**args)
1301
+ update!(**args)
1302
+ end
1303
+
1304
+ # Update properties of this object
1305
+ def update!(**args)
1306
+ @entries = args[:entries] if args.key?(:entries)
1307
+ end
1308
+ end
1309
+
1310
+ # A resource that reports the errors encountered while processing an import job.
1311
+ class ImportError
1312
+ include Google::Apis::Core::Hashable
1313
+
1314
+ # The error information.
1315
+ # Corresponds to the JSON property `errorDetails`
1316
+ # @return [String]
1317
+ attr_accessor :error_details
1318
+
1319
+ # The severity of the error.
1320
+ # Corresponds to the JSON property `severity`
1321
+ # @return [String]
1322
+ attr_accessor :severity
1323
+
1324
+ def initialize(**args)
1325
+ update!(**args)
1326
+ end
1327
+
1328
+ # Update properties of this object
1329
+ def update!(**args)
1330
+ @error_details = args[:error_details] if args.key?(:error_details)
1331
+ @severity = args[:severity] if args.key?(:severity)
1332
+ end
1333
+ end
1334
+
1335
+ # A resource that represents the background job that imports asset frames.
1336
+ class ImportJob
1337
+ include Google::Apis::Core::Hashable
1338
+
1339
+ # Required. Reference to a source.
1340
+ # Corresponds to the JSON property `assetSource`
1341
+ # @return [String]
1342
+ attr_accessor :asset_source
1343
+
1344
+ # Output only. The timestamp when the import job was completed.
1345
+ # Corresponds to the JSON property `completeTime`
1346
+ # @return [String]
1347
+ attr_accessor :complete_time
1348
+
1349
+ # Output only. The timestamp when the import job was created.
1350
+ # Corresponds to the JSON property `createTime`
1351
+ # @return [String]
1352
+ attr_accessor :create_time
1353
+
1354
+ # A resource that reports result of the import job execution.
1355
+ # Corresponds to the JSON property `executionReport`
1356
+ # @return [Google::Apis::MigrationcenterV1alpha1::ExecutionReport]
1357
+ attr_accessor :execution_report
1358
+
1359
+ # A resource that represents a payload hosted on Google Cloud Storage.
1360
+ # Corresponds to the JSON property `gcsPayload`
1361
+ # @return [Google::Apis::MigrationcenterV1alpha1::GcsPayloadInfo]
1362
+ attr_accessor :gcs_payload
1363
+
1364
+ # A resource that represents the inline import job payload.
1365
+ # Corresponds to the JSON property `inlinePayload`
1366
+ # @return [Google::Apis::MigrationcenterV1alpha1::InlinePayloadInfo]
1367
+ attr_accessor :inline_payload
1368
+
1369
+ # Labels as key value pairs.
1370
+ # Corresponds to the JSON property `labels`
1371
+ # @return [Hash<String,String>]
1372
+ attr_accessor :labels
1373
+
1374
+ # Output only. The full name of the import job.
1375
+ # Corresponds to the JSON property `name`
1376
+ # @return [String]
1377
+ attr_accessor :name
1378
+
1379
+ # Output only. The state of the import job.
1380
+ # Corresponds to the JSON property `state`
1381
+ # @return [String]
1382
+ attr_accessor :state
1383
+
1384
+ # Output only. The timestamp when the import job was last updated.
1385
+ # Corresponds to the JSON property `updateTime`
1386
+ # @return [String]
1387
+ attr_accessor :update_time
1388
+
1389
+ # A resource that aggregates errors across import job files.
1390
+ # Corresponds to the JSON property `validationReport`
1391
+ # @return [Google::Apis::MigrationcenterV1alpha1::ValidationReport]
1392
+ attr_accessor :validation_report
1393
+
1394
+ def initialize(**args)
1395
+ update!(**args)
1396
+ end
1397
+
1398
+ # Update properties of this object
1399
+ def update!(**args)
1400
+ @asset_source = args[:asset_source] if args.key?(:asset_source)
1401
+ @complete_time = args[:complete_time] if args.key?(:complete_time)
1402
+ @create_time = args[:create_time] if args.key?(:create_time)
1403
+ @execution_report = args[:execution_report] if args.key?(:execution_report)
1404
+ @gcs_payload = args[:gcs_payload] if args.key?(:gcs_payload)
1405
+ @inline_payload = args[:inline_payload] if args.key?(:inline_payload)
1406
+ @labels = args[:labels] if args.key?(:labels)
1407
+ @name = args[:name] if args.key?(:name)
1408
+ @state = args[:state] if args.key?(:state)
1409
+ @update_time = args[:update_time] if args.key?(:update_time)
1410
+ @validation_report = args[:validation_report] if args.key?(:validation_report)
1411
+ end
1412
+ end
1413
+
1414
+ # A resource that reports the import job errors at row level.
1415
+ class ImportRowError
1416
+ include Google::Apis::Core::Hashable
1417
+
1418
+ # The list of errors detected in the row.
1419
+ # Corresponds to the JSON property `errors`
1420
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ImportError>]
1421
+ attr_accessor :errors
1422
+
1423
+ # The row number where the error was detected.
1424
+ # Corresponds to the JSON property `rowNumber`
1425
+ # @return [Fixnum]
1426
+ attr_accessor :row_number
1427
+
1428
+ # The name of the VM in the row.
1429
+ # Corresponds to the JSON property `vmName`
1430
+ # @return [String]
1431
+ attr_accessor :vm_name
1432
+
1433
+ # The VM UUID.
1434
+ # Corresponds to the JSON property `vmUuid`
1435
+ # @return [String]
1436
+ attr_accessor :vm_uuid
1437
+
1438
+ def initialize(**args)
1439
+ update!(**args)
1440
+ end
1441
+
1442
+ # Update properties of this object
1443
+ def update!(**args)
1444
+ @errors = args[:errors] if args.key?(:errors)
1445
+ @row_number = args[:row_number] if args.key?(:row_number)
1446
+ @vm_name = args[:vm_name] if args.key?(:vm_name)
1447
+ @vm_uuid = args[:vm_uuid] if args.key?(:vm_uuid)
1448
+ end
1449
+ end
1450
+
1451
+ # A resource that represents the inline import job payload.
1452
+ class InlinePayloadInfo
1453
+ include Google::Apis::Core::Hashable
1454
+
1455
+ # The import job format.
1456
+ # Corresponds to the JSON property `format`
1457
+ # @return [String]
1458
+ attr_accessor :format
1459
+
1460
+ # List of payload files.
1461
+ # Corresponds to the JSON property `payload`
1462
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::PayloadFile>]
1463
+ attr_accessor :payload
1464
+
1465
+ def initialize(**args)
1466
+ update!(**args)
1467
+ end
1468
+
1469
+ # Update properties of this object
1470
+ def update!(**args)
1471
+ @format = args[:format] if args.key?(:format)
1472
+ @payload = args[:payload] if args.key?(:payload)
1473
+ end
1474
+ end
1475
+
1476
+ # Response message for listing assets.
1477
+ class ListAssetsResponse
1478
+ include Google::Apis::Core::Hashable
1479
+
1480
+ # A list of assets.
1481
+ # Corresponds to the JSON property `assets`
1482
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Asset>]
1483
+ attr_accessor :assets
1484
+
1485
+ # A token identifying a page of results the server should return.
1486
+ # Corresponds to the JSON property `nextPageToken`
1487
+ # @return [String]
1488
+ attr_accessor :next_page_token
1489
+
1490
+ # Locations that could not be reached.
1491
+ # Corresponds to the JSON property `unreachable`
1492
+ # @return [Array<String>]
1493
+ attr_accessor :unreachable
1494
+
1495
+ def initialize(**args)
1496
+ update!(**args)
1497
+ end
1498
+
1499
+ # Update properties of this object
1500
+ def update!(**args)
1501
+ @assets = args[:assets] if args.key?(:assets)
1502
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1503
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1504
+ end
1505
+ end
1506
+
1507
+ # A response for listing import jobs.
1508
+ class ListImportJobsResponse
1509
+ include Google::Apis::Core::Hashable
1510
+
1511
+ # The list of import jobs.
1512
+ # Corresponds to the JSON property `importJobs`
1513
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ImportJob>]
1514
+ attr_accessor :import_jobs
1515
+
1516
+ # A token identifying a page of results the server should return.
1517
+ # Corresponds to the JSON property `nextPageToken`
1518
+ # @return [String]
1519
+ attr_accessor :next_page_token
1520
+
1521
+ # Locations that could not be reached.
1522
+ # Corresponds to the JSON property `unreachable`
1523
+ # @return [Array<String>]
1524
+ attr_accessor :unreachable
1525
+
1526
+ def initialize(**args)
1527
+ update!(**args)
1528
+ end
1529
+
1530
+ # Update properties of this object
1531
+ def update!(**args)
1532
+ @import_jobs = args[:import_jobs] if args.key?(:import_jobs)
1533
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1534
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1535
+ end
1536
+ end
1537
+
1538
+ # The response message for Locations.ListLocations.
1539
+ class ListLocationsResponse
1540
+ include Google::Apis::Core::Hashable
1541
+
1542
+ # A list of locations that matches the specified filter in the request.
1543
+ # Corresponds to the JSON property `locations`
1544
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Location>]
1545
+ attr_accessor :locations
1546
+
1547
+ # The standard List next-page token.
1548
+ # Corresponds to the JSON property `nextPageToken`
1549
+ # @return [String]
1550
+ attr_accessor :next_page_token
1551
+
1552
+ def initialize(**args)
1553
+ update!(**args)
1554
+ end
1555
+
1556
+ # Update properties of this object
1557
+ def update!(**args)
1558
+ @locations = args[:locations] if args.key?(:locations)
1559
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1560
+ end
1561
+ end
1562
+
1563
+ # The response message for Operations.ListOperations.
1564
+ class ListOperationsResponse
1565
+ include Google::Apis::Core::Hashable
1566
+
1567
+ # The standard List next-page token.
1568
+ # Corresponds to the JSON property `nextPageToken`
1569
+ # @return [String]
1570
+ attr_accessor :next_page_token
1571
+
1572
+ # A list of operations that matches the specified filter in the request.
1573
+ # Corresponds to the JSON property `operations`
1574
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Operation>]
1575
+ attr_accessor :operations
1576
+
1577
+ def initialize(**args)
1578
+ update!(**args)
1579
+ end
1580
+
1581
+ # Update properties of this object
1582
+ def update!(**args)
1583
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1584
+ @operations = args[:operations] if args.key?(:operations)
1585
+ end
1586
+ end
1587
+
1588
+ # Response message for listing sources.
1589
+ class ListSourcesResponse
1590
+ include Google::Apis::Core::Hashable
1591
+
1592
+ # A token identifying a page of results the server should return.
1593
+ # Corresponds to the JSON property `nextPageToken`
1594
+ # @return [String]
1595
+ attr_accessor :next_page_token
1596
+
1597
+ # The list of sources.
1598
+ # Corresponds to the JSON property `sources`
1599
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Source>]
1600
+ attr_accessor :sources
1601
+
1602
+ # Locations that could not be reached.
1603
+ # Corresponds to the JSON property `unreachable`
1604
+ # @return [Array<String>]
1605
+ attr_accessor :unreachable
1606
+
1607
+ def initialize(**args)
1608
+ update!(**args)
1609
+ end
1610
+
1611
+ # Update properties of this object
1612
+ def update!(**args)
1613
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1614
+ @sources = args[:sources] if args.key?(:sources)
1615
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1616
+ end
1617
+ end
1618
+
1619
+ # A resource that represents Google Cloud Platform location.
1620
+ class Location
1621
+ include Google::Apis::Core::Hashable
1622
+
1623
+ # The friendly name for this location, typically a nearby city name. For example,
1624
+ # "Tokyo".
1625
+ # Corresponds to the JSON property `displayName`
1626
+ # @return [String]
1627
+ attr_accessor :display_name
1628
+
1629
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
1630
+ # region": "us-east1"`
1631
+ # Corresponds to the JSON property `labels`
1632
+ # @return [Hash<String,String>]
1633
+ attr_accessor :labels
1634
+
1635
+ # The canonical id for this location. For example: `"us-east1"`.
1636
+ # Corresponds to the JSON property `locationId`
1637
+ # @return [String]
1638
+ attr_accessor :location_id
1639
+
1640
+ # Service-specific metadata. For example the available capacity at the given
1641
+ # location.
1642
+ # Corresponds to the JSON property `metadata`
1643
+ # @return [Hash<String,Object>]
1644
+ attr_accessor :metadata
1645
+
1646
+ # Resource name for the location, which may vary between implementations. For
1647
+ # example: `"projects/example-project/locations/us-east1"`
1648
+ # Corresponds to the JSON property `name`
1649
+ # @return [String]
1650
+ attr_accessor :name
1651
+
1652
+ def initialize(**args)
1653
+ update!(**args)
1654
+ end
1655
+
1656
+ # Update properties of this object
1657
+ def update!(**args)
1658
+ @display_name = args[:display_name] if args.key?(:display_name)
1659
+ @labels = args[:labels] if args.key?(:labels)
1660
+ @location_id = args[:location_id] if args.key?(:location_id)
1661
+ @metadata = args[:metadata] if args.key?(:metadata)
1662
+ @name = args[:name] if args.key?(:name)
1663
+ end
1664
+ end
1665
+
1666
+ # Memory usage sample.
1667
+ class MemoryUsageSample
1668
+ include Google::Apis::Core::Hashable
1669
+
1670
+ # Percentage of system memory utilized. Must be in the interval [0, 100].
1671
+ # Corresponds to the JSON property `utilizedPercentage`
1672
+ # @return [Float]
1673
+ attr_accessor :utilized_percentage
1674
+
1675
+ def initialize(**args)
1676
+ update!(**args)
1677
+ end
1678
+
1679
+ # Update properties of this object
1680
+ def update!(**args)
1681
+ @utilized_percentage = args[:utilized_percentage] if args.key?(:utilized_percentage)
1682
+ end
1683
+ end
1684
+
1685
+ # Details of network adapter.
1686
+ class NetworkAdapterDetails
1687
+ include Google::Apis::Core::Hashable
1688
+
1689
+ # Network adapter type (e.g. VMXNET3).
1690
+ # Corresponds to the JSON property `adapterType`
1691
+ # @return [String]
1692
+ attr_accessor :adapter_type
1693
+
1694
+ # List of allocated/assigned network addresses.
1695
+ # Corresponds to the JSON property `addresses`
1696
+ # @return [Google::Apis::MigrationcenterV1alpha1::NetworkAddressList]
1697
+ attr_accessor :addresses
1698
+
1699
+ # MAC address.
1700
+ # Corresponds to the JSON property `macAddress`
1701
+ # @return [String]
1702
+ attr_accessor :mac_address
1703
+
1704
+ def initialize(**args)
1705
+ update!(**args)
1706
+ end
1707
+
1708
+ # Update properties of this object
1709
+ def update!(**args)
1710
+ @adapter_type = args[:adapter_type] if args.key?(:adapter_type)
1711
+ @addresses = args[:addresses] if args.key?(:addresses)
1712
+ @mac_address = args[:mac_address] if args.key?(:mac_address)
1713
+ end
1714
+ end
1715
+
1716
+ #
1717
+ class NetworkAdapterList
1718
+ include Google::Apis::Core::Hashable
1719
+
1720
+ # Network Adapter descriptions.
1721
+ # Corresponds to the JSON property `networkAdapters`
1722
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::NetworkAdapterDetails>]
1723
+ attr_accessor :network_adapters
1724
+
1725
+ def initialize(**args)
1726
+ update!(**args)
1727
+ end
1728
+
1729
+ # Update properties of this object
1730
+ def update!(**args)
1731
+ @network_adapters = args[:network_adapters] if args.key?(:network_adapters)
1732
+ end
1733
+ end
1734
+
1735
+ # Details of network address.
1736
+ class NetworkAddress
1737
+ include Google::Apis::Core::Hashable
1738
+
1739
+ # If DHCP is used to assign addresses.
1740
+ # Corresponds to the JSON property `assignment`
1741
+ # @return [String]
1742
+ attr_accessor :assignment
1743
+
1744
+ # Broadcast address.
1745
+ # Corresponds to the JSON property `bcast`
1746
+ # @return [String]
1747
+ attr_accessor :bcast
1748
+
1749
+ # Fully qualified domain name.
1750
+ # Corresponds to the JSON property `fqdn`
1751
+ # @return [String]
1752
+ attr_accessor :fqdn
1753
+
1754
+ # Assigned or configured IP Address.
1755
+ # Corresponds to the JSON property `ipAddress`
1756
+ # @return [String]
1757
+ attr_accessor :ip_address
1758
+
1759
+ # Subnet mask.
1760
+ # Corresponds to the JSON property `subnetMask`
1761
+ # @return [String]
1762
+ attr_accessor :subnet_mask
1763
+
1764
+ def initialize(**args)
1765
+ update!(**args)
1766
+ end
1767
+
1768
+ # Update properties of this object
1769
+ def update!(**args)
1770
+ @assignment = args[:assignment] if args.key?(:assignment)
1771
+ @bcast = args[:bcast] if args.key?(:bcast)
1772
+ @fqdn = args[:fqdn] if args.key?(:fqdn)
1773
+ @ip_address = args[:ip_address] if args.key?(:ip_address)
1774
+ @subnet_mask = args[:subnet_mask] if args.key?(:subnet_mask)
1775
+ end
1776
+ end
1777
+
1778
+ # List of allocated/assigned network addresses.
1779
+ class NetworkAddressList
1780
+ include Google::Apis::Core::Hashable
1781
+
1782
+ #
1783
+ # Corresponds to the JSON property `addresses`
1784
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::NetworkAddress>]
1785
+ attr_accessor :addresses
1786
+
1787
+ def initialize(**args)
1788
+ update!(**args)
1789
+ end
1790
+
1791
+ # Update properties of this object
1792
+ def update!(**args)
1793
+ @addresses = args[:addresses] if args.key?(:addresses)
1794
+ end
1795
+ end
1796
+
1797
+ #
1798
+ class NetworkConnection
1799
+ include Google::Apis::Core::Hashable
1800
+
1801
+ # Local IP address.
1802
+ # Corresponds to the JSON property `localIpAddress`
1803
+ # @return [String]
1804
+ attr_accessor :local_ip_address
1805
+
1806
+ # Local port.
1807
+ # Corresponds to the JSON property `localPort`
1808
+ # @return [Fixnum]
1809
+ attr_accessor :local_port
1810
+
1811
+ # Process ID.
1812
+ # Corresponds to the JSON property `pid`
1813
+ # @return [Fixnum]
1814
+ attr_accessor :pid
1815
+
1816
+ # Process or service name.
1817
+ # Corresponds to the JSON property `processName`
1818
+ # @return [String]
1819
+ attr_accessor :process_name
1820
+
1821
+ # Connection protocol (e.g. TCP/UDP).
1822
+ # Corresponds to the JSON property `protocol`
1823
+ # @return [String]
1824
+ attr_accessor :protocol
1825
+
1826
+ # Remote IP address.
1827
+ # Corresponds to the JSON property `remoteIpAddress`
1828
+ # @return [String]
1829
+ attr_accessor :remote_ip_address
1830
+
1831
+ # Remote port.
1832
+ # Corresponds to the JSON property `remotePort`
1833
+ # @return [Fixnum]
1834
+ attr_accessor :remote_port
1835
+
1836
+ # Connection state (e.g. CONNECTED).
1837
+ # Corresponds to the JSON property `state`
1838
+ # @return [String]
1839
+ attr_accessor :state
1840
+
1841
+ def initialize(**args)
1842
+ update!(**args)
1843
+ end
1844
+
1845
+ # Update properties of this object
1846
+ def update!(**args)
1847
+ @local_ip_address = args[:local_ip_address] if args.key?(:local_ip_address)
1848
+ @local_port = args[:local_port] if args.key?(:local_port)
1849
+ @pid = args[:pid] if args.key?(:pid)
1850
+ @process_name = args[:process_name] if args.key?(:process_name)
1851
+ @protocol = args[:protocol] if args.key?(:protocol)
1852
+ @remote_ip_address = args[:remote_ip_address] if args.key?(:remote_ip_address)
1853
+ @remote_port = args[:remote_port] if args.key?(:remote_port)
1854
+ @state = args[:state] if args.key?(:state)
1855
+ end
1856
+ end
1857
+
1858
+ # Network connection list.
1859
+ class NetworkConnectionList
1860
+ include Google::Apis::Core::Hashable
1861
+
1862
+ #
1863
+ # Corresponds to the JSON property `entries`
1864
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::NetworkConnection>]
1865
+ attr_accessor :entries
1866
+
1867
+ def initialize(**args)
1868
+ update!(**args)
1869
+ end
1870
+
1871
+ # Update properties of this object
1872
+ def update!(**args)
1873
+ @entries = args[:entries] if args.key?(:entries)
1874
+ end
1875
+ end
1876
+
1877
+ # Network usage sample. Values are across all network interfaces.
1878
+ class NetworkUsageSample
1879
+ include Google::Apis::Core::Hashable
1880
+
1881
+ # Average network egress in B/s sampled over a short window. Must be non-
1882
+ # negative.
1883
+ # Corresponds to the JSON property `averageEgressBps`
1884
+ # @return [Float]
1885
+ attr_accessor :average_egress_bps
1886
+
1887
+ # Average network ingress in B/s sampled over a short window. Must be non-
1888
+ # negative.
1889
+ # Corresponds to the JSON property `averageIngressBps`
1890
+ # @return [Float]
1891
+ attr_accessor :average_ingress_bps
1892
+
1893
+ def initialize(**args)
1894
+ update!(**args)
1895
+ end
1896
+
1897
+ # Update properties of this object
1898
+ def update!(**args)
1899
+ @average_egress_bps = args[:average_egress_bps] if args.key?(:average_egress_bps)
1900
+ @average_ingress_bps = args[:average_ingress_bps] if args.key?(:average_ingress_bps)
1901
+ end
1902
+ end
1903
+
1904
+ # NFS export.
1905
+ class NfsExport
1906
+ include Google::Apis::Core::Hashable
1907
+
1908
+ # The directory being exported.
1909
+ # Corresponds to the JSON property `exportDirectory`
1910
+ # @return [String]
1911
+ attr_accessor :export_directory
1912
+
1913
+ # The hosts or networks to which the export is being shared.
1914
+ # Corresponds to the JSON property `hosts`
1915
+ # @return [Array<String>]
1916
+ attr_accessor :hosts
1917
+
1918
+ def initialize(**args)
1919
+ update!(**args)
1920
+ end
1921
+
1922
+ # Update properties of this object
1923
+ def update!(**args)
1924
+ @export_directory = args[:export_directory] if args.key?(:export_directory)
1925
+ @hosts = args[:hosts] if args.key?(:hosts)
1926
+ end
1927
+ end
1928
+
1929
+ # NFS exports.
1930
+ class NfsExportList
1931
+ include Google::Apis::Core::Hashable
1932
+
1933
+ # NFS export entries.
1934
+ # Corresponds to the JSON property `entries`
1935
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::NfsExport>]
1936
+ attr_accessor :entries
1937
+
1938
+ def initialize(**args)
1939
+ update!(**args)
1940
+ end
1941
+
1942
+ # Update properties of this object
1943
+ def update!(**args)
1944
+ @entries = args[:entries] if args.key?(:entries)
1945
+ end
1946
+ end
1947
+
1948
+ # Open file Information.
1949
+ class OpenFileDetails
1950
+ include Google::Apis::Core::Hashable
1951
+
1952
+ # Opened file command.
1953
+ # Corresponds to the JSON property `command`
1954
+ # @return [String]
1955
+ attr_accessor :command
1956
+
1957
+ # Opened file file path.
1958
+ # Corresponds to the JSON property `filePath`
1959
+ # @return [String]
1960
+ attr_accessor :file_path
1961
+
1962
+ # Opened file file type.
1963
+ # Corresponds to the JSON property `fileType`
1964
+ # @return [String]
1965
+ attr_accessor :file_type
1966
+
1967
+ # Opened file user.
1968
+ # Corresponds to the JSON property `user`
1969
+ # @return [String]
1970
+ attr_accessor :user
1971
+
1972
+ def initialize(**args)
1973
+ update!(**args)
1974
+ end
1975
+
1976
+ # Update properties of this object
1977
+ def update!(**args)
1978
+ @command = args[:command] if args.key?(:command)
1979
+ @file_path = args[:file_path] if args.key?(:file_path)
1980
+ @file_type = args[:file_type] if args.key?(:file_type)
1981
+ @user = args[:user] if args.key?(:user)
1982
+ end
1983
+ end
1984
+
1985
+ # Open file list.
1986
+ class OpenFileList
1987
+ include Google::Apis::Core::Hashable
1988
+
1989
+ # Open file details entries.
1990
+ # Corresponds to the JSON property `entries`
1991
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::OpenFileDetails>]
1992
+ attr_accessor :entries
1993
+
1994
+ def initialize(**args)
1995
+ update!(**args)
1996
+ end
1997
+
1998
+ # Update properties of this object
1999
+ def update!(**args)
2000
+ @entries = args[:entries] if args.key?(:entries)
2001
+ end
2002
+ end
2003
+
2004
+ # This resource represents a long-running operation that is the result of a
2005
+ # network API call.
2006
+ class Operation
2007
+ include Google::Apis::Core::Hashable
2008
+
2009
+ # If the value is `false`, it means the operation is still in progress. If `true`
2010
+ # , the operation is completed, and either `error` or `response` is available.
2011
+ # Corresponds to the JSON property `done`
2012
+ # @return [Boolean]
2013
+ attr_accessor :done
2014
+ alias_method :done?, :done
2015
+
2016
+ # The `Status` type defines a logical error model that is suitable for different
2017
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2018
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2019
+ # data: error code, error message, and error details. You can find out more
2020
+ # about this error model and how to work with it in the [API Design Guide](https:
2021
+ # //cloud.google.com/apis/design/errors).
2022
+ # Corresponds to the JSON property `error`
2023
+ # @return [Google::Apis::MigrationcenterV1alpha1::Status]
2024
+ attr_accessor :error
2025
+
2026
+ # Service-specific metadata associated with the operation. It typically contains
2027
+ # progress information and common metadata such as create time. Some services
2028
+ # might not provide such metadata. Any method that returns a long-running
2029
+ # operation should document the metadata type, if any.
2030
+ # Corresponds to the JSON property `metadata`
2031
+ # @return [Hash<String,Object>]
2032
+ attr_accessor :metadata
2033
+
2034
+ # The server-assigned name, which is only unique within the same service that
2035
+ # originally returns it. If you use the default HTTP mapping, the `name` should
2036
+ # be a resource name ending with `operations/`unique_id``.
2037
+ # Corresponds to the JSON property `name`
2038
+ # @return [String]
2039
+ attr_accessor :name
2040
+
2041
+ # The normal response of the operation in case of success. If the original
2042
+ # method returns no data on success, such as `Delete`, the response is `google.
2043
+ # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
2044
+ # the response should be the resource. For other methods, the response should
2045
+ # have the type `XxxResponse`, where `Xxx` is the original method name. For
2046
+ # example, if the original method name is `TakeSnapshot()`, the inferred
2047
+ # response type is `TakeSnapshotResponse`.
2048
+ # Corresponds to the JSON property `response`
2049
+ # @return [Hash<String,Object>]
2050
+ attr_accessor :response
2051
+
2052
+ def initialize(**args)
2053
+ update!(**args)
2054
+ end
2055
+
2056
+ # Update properties of this object
2057
+ def update!(**args)
2058
+ @done = args[:done] if args.key?(:done)
2059
+ @error = args[:error] if args.key?(:error)
2060
+ @metadata = args[:metadata] if args.key?(:metadata)
2061
+ @name = args[:name] if args.key?(:name)
2062
+ @response = args[:response] if args.key?(:response)
2063
+ end
2064
+ end
2065
+
2066
+ # Represents the metadata of the long-running operation.
2067
+ class OperationMetadata
2068
+ include Google::Apis::Core::Hashable
2069
+
2070
+ # Output only. API version used to start the operation.
2071
+ # Corresponds to the JSON property `apiVersion`
2072
+ # @return [String]
2073
+ attr_accessor :api_version
2074
+
2075
+ # Output only. The time the operation was created.
2076
+ # Corresponds to the JSON property `createTime`
2077
+ # @return [String]
2078
+ attr_accessor :create_time
2079
+
2080
+ # Output only. The time the operation finished running.
2081
+ # Corresponds to the JSON property `endTime`
2082
+ # @return [String]
2083
+ attr_accessor :end_time
2084
+
2085
+ # Output only. Identifies whether the user has requested cancellation of the
2086
+ # operation. Operations that have been cancelled successfully have Operation.
2087
+ # error value with a google.rpc.Status.code of 1, corresponding to `Code.
2088
+ # CANCELLED`.
2089
+ # Corresponds to the JSON property `requestedCancellation`
2090
+ # @return [Boolean]
2091
+ attr_accessor :requested_cancellation
2092
+ alias_method :requested_cancellation?, :requested_cancellation
2093
+
2094
+ # Output only. Human-readable status of the operation, if any.
2095
+ # Corresponds to the JSON property `statusMessage`
2096
+ # @return [String]
2097
+ attr_accessor :status_message
2098
+
2099
+ # Output only. Server-defined resource path for the target of the operation.
2100
+ # Corresponds to the JSON property `target`
2101
+ # @return [String]
2102
+ attr_accessor :target
2103
+
2104
+ # Output only. Name of the verb executed by the operation.
2105
+ # Corresponds to the JSON property `verb`
2106
+ # @return [String]
2107
+ attr_accessor :verb
2108
+
2109
+ def initialize(**args)
2110
+ update!(**args)
2111
+ end
2112
+
2113
+ # Update properties of this object
2114
+ def update!(**args)
2115
+ @api_version = args[:api_version] if args.key?(:api_version)
2116
+ @create_time = args[:create_time] if args.key?(:create_time)
2117
+ @end_time = args[:end_time] if args.key?(:end_time)
2118
+ @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
2119
+ @status_message = args[:status_message] if args.key?(:status_message)
2120
+ @target = args[:target] if args.key?(:target)
2121
+ @verb = args[:verb] if args.key?(:verb)
2122
+ end
2123
+ end
2124
+
2125
+ # Payload file for inline import job payload.
2126
+ class PayloadFile
2127
+ include Google::Apis::Core::Hashable
2128
+
2129
+ # The file data.
2130
+ # Corresponds to the JSON property `data`
2131
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2132
+ # @return [String]
2133
+ attr_accessor :data
2134
+
2135
+ # The file name.
2136
+ # Corresponds to the JSON property `name`
2137
+ # @return [String]
2138
+ attr_accessor :name
2139
+
2140
+ def initialize(**args)
2141
+ update!(**args)
2142
+ end
2143
+
2144
+ # Update properties of this object
2145
+ def update!(**args)
2146
+ @data = args[:data] if args.key?(:data)
2147
+ @name = args[:name] if args.key?(:name)
2148
+ end
2149
+ end
2150
+
2151
+ # Performance data sample.
2152
+ class PerformanceSample
2153
+ include Google::Apis::Core::Hashable
2154
+
2155
+ # CPU usage sample.
2156
+ # Corresponds to the JSON property `cpu`
2157
+ # @return [Google::Apis::MigrationcenterV1alpha1::CpuUsageSample]
2158
+ attr_accessor :cpu
2159
+
2160
+ # Disk usage sample. Values are across all disks.
2161
+ # Corresponds to the JSON property `disk`
2162
+ # @return [Google::Apis::MigrationcenterV1alpha1::DiskUsageSample]
2163
+ attr_accessor :disk
2164
+
2165
+ # Memory usage sample.
2166
+ # Corresponds to the JSON property `memory`
2167
+ # @return [Google::Apis::MigrationcenterV1alpha1::MemoryUsageSample]
2168
+ attr_accessor :memory
2169
+
2170
+ # Network usage sample. Values are across all network interfaces.
2171
+ # Corresponds to the JSON property `network`
2172
+ # @return [Google::Apis::MigrationcenterV1alpha1::NetworkUsageSample]
2173
+ attr_accessor :network
2174
+
2175
+ # Time the sample was collected.
2176
+ # Corresponds to the JSON property `sampleTime`
2177
+ # @return [String]
2178
+ attr_accessor :sample_time
2179
+
2180
+ def initialize(**args)
2181
+ update!(**args)
2182
+ end
2183
+
2184
+ # Update properties of this object
2185
+ def update!(**args)
2186
+ @cpu = args[:cpu] if args.key?(:cpu)
2187
+ @disk = args[:disk] if args.key?(:disk)
2188
+ @memory = args[:memory] if args.key?(:memory)
2189
+ @network = args[:network] if args.key?(:network)
2190
+ @sample_time = args[:sample_time] if args.key?(:sample_time)
2191
+ end
2192
+ end
2193
+
2194
+ # Information about the platform.
2195
+ class PlatformDetails
2196
+ include Google::Apis::Core::Hashable
2197
+
2198
+ # VMware specific details.
2199
+ # Corresponds to the JSON property `vmwareDetails`
2200
+ # @return [Google::Apis::MigrationcenterV1alpha1::VmwarePlatformDetails]
2201
+ attr_accessor :vmware_details
2202
+
2203
+ def initialize(**args)
2204
+ update!(**args)
2205
+ end
2206
+
2207
+ # Update properties of this object
2208
+ def update!(**args)
2209
+ @vmware_details = args[:vmware_details] if args.key?(:vmware_details)
2210
+ end
2211
+ end
2212
+
2213
+ # A response to a call to `ReportAssetFrame`.
2214
+ class ReportAssetFramesResponse
2215
+ include Google::Apis::Core::Hashable
2216
+
2217
+ def initialize(**args)
2218
+ update!(**args)
2219
+ end
2220
+
2221
+ # Update properties of this object
2222
+ def update!(**args)
2223
+ end
2224
+ end
2225
+
2226
+ # A request to run an import job.
2227
+ class RunImportJobRequest
2228
+ include Google::Apis::Core::Hashable
2229
+
2230
+ # Optional. An optional request ID to identify requests. Specify a unique
2231
+ # request ID so that if you must retry your request, the server will know to
2232
+ # ignore the request if it has already been completed. The server will guarantee
2233
+ # that for at least 60 minutes after the first request. For example, consider a
2234
+ # situation where you make an initial request and the request times out. If you
2235
+ # make the request again with the same request ID, the server can check if
2236
+ # original operation with the same request ID was received, and if so, will
2237
+ # ignore the second request. This prevents clients from accidentally creating
2238
+ # duplicate commitments. The request ID must be a valid UUID with the exception
2239
+ # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
2240
+ # Corresponds to the JSON property `requestId`
2241
+ # @return [String]
2242
+ attr_accessor :request_id
2243
+
2244
+ def initialize(**args)
2245
+ update!(**args)
2246
+ end
2247
+
2248
+ # Update properties of this object
2249
+ def update!(**args)
2250
+ @request_id = args[:request_id] if args.key?(:request_id)
2251
+ end
2252
+ end
2253
+
2254
+ # Guest OS running process details.
2255
+ class RunningProcess
2256
+ include Google::Apis::Core::Hashable
2257
+
2258
+ # Process extended attributes.
2259
+ # Corresponds to the JSON property `attributes`
2260
+ # @return [Hash<String,String>]
2261
+ attr_accessor :attributes
2262
+
2263
+ # Process full command line.
2264
+ # Corresponds to the JSON property `cmdline`
2265
+ # @return [String]
2266
+ attr_accessor :cmdline
2267
+
2268
+ # Process binary path.
2269
+ # Corresponds to the JSON property `exePath`
2270
+ # @return [String]
2271
+ attr_accessor :exe_path
2272
+
2273
+ # Process ID.
2274
+ # Corresponds to the JSON property `pid`
2275
+ # @return [Fixnum]
2276
+ attr_accessor :pid
2277
+
2278
+ # User running the process.
2279
+ # Corresponds to the JSON property `user`
2280
+ # @return [String]
2281
+ attr_accessor :user
2282
+
2283
+ def initialize(**args)
2284
+ update!(**args)
2285
+ end
2286
+
2287
+ # Update properties of this object
2288
+ def update!(**args)
2289
+ @attributes = args[:attributes] if args.key?(:attributes)
2290
+ @cmdline = args[:cmdline] if args.key?(:cmdline)
2291
+ @exe_path = args[:exe_path] if args.key?(:exe_path)
2292
+ @pid = args[:pid] if args.key?(:pid)
2293
+ @user = args[:user] if args.key?(:user)
2294
+ end
2295
+ end
2296
+
2297
+ # List of running guest OS processes.
2298
+ class RunningProcessList
2299
+ include Google::Apis::Core::Hashable
2300
+
2301
+ #
2302
+ # Corresponds to the JSON property `processes`
2303
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::RunningProcess>]
2304
+ attr_accessor :processes
2305
+
2306
+ def initialize(**args)
2307
+ update!(**args)
2308
+ end
2309
+
2310
+ # Update properties of this object
2311
+ def update!(**args)
2312
+ @processes = args[:processes] if args.key?(:processes)
2313
+ end
2314
+ end
2315
+
2316
+ # Guest OS running service details.
2317
+ class RunningService
2318
+ include Google::Apis::Core::Hashable
2319
+
2320
+ # Service command line.
2321
+ # Corresponds to the JSON property `cmdline`
2322
+ # @return [String]
2323
+ attr_accessor :cmdline
2324
+
2325
+ # Service binary path.
2326
+ # Corresponds to the JSON property `exePath`
2327
+ # @return [String]
2328
+ attr_accessor :exe_path
2329
+
2330
+ # Service name.
2331
+ # Corresponds to the JSON property `name`
2332
+ # @return [String]
2333
+ attr_accessor :name
2334
+
2335
+ # Service pid.
2336
+ # Corresponds to the JSON property `pid`
2337
+ # @return [Fixnum]
2338
+ attr_accessor :pid
2339
+
2340
+ # Service start mode (raw, OS-agnostic).
2341
+ # Corresponds to the JSON property `startMode`
2342
+ # @return [String]
2343
+ attr_accessor :start_mode
2344
+
2345
+ # Service state (raw, OS-agnostic).
2346
+ # Corresponds to the JSON property `state`
2347
+ # @return [String]
2348
+ attr_accessor :state
2349
+
2350
+ # Service status.
2351
+ # Corresponds to the JSON property `status`
2352
+ # @return [String]
2353
+ attr_accessor :status
2354
+
2355
+ def initialize(**args)
2356
+ update!(**args)
2357
+ end
2358
+
2359
+ # Update properties of this object
2360
+ def update!(**args)
2361
+ @cmdline = args[:cmdline] if args.key?(:cmdline)
2362
+ @exe_path = args[:exe_path] if args.key?(:exe_path)
2363
+ @name = args[:name] if args.key?(:name)
2364
+ @pid = args[:pid] if args.key?(:pid)
2365
+ @start_mode = args[:start_mode] if args.key?(:start_mode)
2366
+ @state = args[:state] if args.key?(:state)
2367
+ @status = args[:status] if args.key?(:status)
2368
+ end
2369
+ end
2370
+
2371
+ # List of running guest OS services.
2372
+ class RunningServiceList
2373
+ include Google::Apis::Core::Hashable
2374
+
2375
+ #
2376
+ # Corresponds to the JSON property `services`
2377
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::RunningService>]
2378
+ attr_accessor :services
2379
+
2380
+ def initialize(**args)
2381
+ update!(**args)
2382
+ end
2383
+
2384
+ # Update properties of this object
2385
+ def update!(**args)
2386
+ @services = args[:services] if args.key?(:services)
2387
+ end
2388
+ end
2389
+
2390
+ # Runtime networking information.
2391
+ class RuntimeNetworkInfo
2392
+ include Google::Apis::Core::Hashable
2393
+
2394
+ # Network connection list.
2395
+ # Corresponds to the JSON property `connections`
2396
+ # @return [Google::Apis::MigrationcenterV1alpha1::NetworkConnectionList]
2397
+ attr_accessor :connections
2398
+
2399
+ # Netstat (raw, OS-agnostic).
2400
+ # Corresponds to the JSON property `netstat`
2401
+ # @return [String]
2402
+ attr_accessor :netstat
2403
+
2404
+ # Represents civil time (or occasionally physical time). This type can represent
2405
+ # a civil time in one of a few possible ways: * When utc_offset is set and
2406
+ # time_zone is unset: a civil time on a calendar day with a particular offset
2407
+ # from UTC. * When time_zone is set and utc_offset is unset: a civil time on a
2408
+ # calendar day in a particular time zone. * When neither time_zone nor
2409
+ # utc_offset is set: a civil time on a calendar day in local time. The date is
2410
+ # relative to the Proleptic Gregorian Calendar. If year, month, or day are 0,
2411
+ # the DateTime is considered not to have a specific year, month, or day
2412
+ # respectively. This type may also be used to represent a physical time if all
2413
+ # the date and time fields are set and either case of the `time_offset` oneof is
2414
+ # set. Consider using `Timestamp` message for physical time instead. If your use
2415
+ # case also would like to store the user's timezone, that can be done in another
2416
+ # field. This type is more flexible than some applications may want. Make sure
2417
+ # to document and validate your application's limitations.
2418
+ # Corresponds to the JSON property `netstatTime`
2419
+ # @return [Google::Apis::MigrationcenterV1alpha1::DateTime]
2420
+ attr_accessor :netstat_time
2421
+
2422
+ def initialize(**args)
2423
+ update!(**args)
2424
+ end
2425
+
2426
+ # Update properties of this object
2427
+ def update!(**args)
2428
+ @connections = args[:connections] if args.key?(:connections)
2429
+ @netstat = args[:netstat] if args.key?(:netstat)
2430
+ @netstat_time = args[:netstat_time] if args.key?(:netstat_time)
2431
+ end
2432
+ end
2433
+
2434
+ # SELinux details.
2435
+ class Selinux
2436
+ include Google::Apis::Core::Hashable
2437
+
2438
+ # Is SELinux enabled.
2439
+ # Corresponds to the JSON property `enabled`
2440
+ # @return [Boolean]
2441
+ attr_accessor :enabled
2442
+ alias_method :enabled?, :enabled
2443
+
2444
+ # SELinux mode enforcing / permissive.
2445
+ # Corresponds to the JSON property `mode`
2446
+ # @return [String]
2447
+ attr_accessor :mode
2448
+
2449
+ def initialize(**args)
2450
+ update!(**args)
2451
+ end
2452
+
2453
+ # Update properties of this object
2454
+ def update!(**args)
2455
+ @enabled = args[:enabled] if args.key?(:enabled)
2456
+ @mode = args[:mode] if args.key?(:mode)
2457
+ end
2458
+ end
2459
+
2460
+ # Source represents an object from which asset information is streamed to
2461
+ # Migration Center.
2462
+ class Source
2463
+ include Google::Apis::Core::Hashable
2464
+
2465
+ # Output only. The timestamp when the source was created.
2466
+ # Corresponds to the JSON property `createTime`
2467
+ # @return [String]
2468
+ attr_accessor :create_time
2469
+
2470
+ # Free-text description.
2471
+ # Corresponds to the JSON property `description`
2472
+ # @return [String]
2473
+ attr_accessor :description
2474
+
2475
+ # User-friendly display name.
2476
+ # Corresponds to the JSON property `displayName`
2477
+ # @return [String]
2478
+ attr_accessor :display_name
2479
+
2480
+ # If `true`, the source is managed by other service(s).
2481
+ # Corresponds to the JSON property `isManaged`
2482
+ # @return [Boolean]
2483
+ attr_accessor :is_managed
2484
+ alias_method :is_managed?, :is_managed
2485
+
2486
+ # Output only. The full name of the source.
2487
+ # Corresponds to the JSON property `name`
2488
+ # @return [String]
2489
+ attr_accessor :name
2490
+
2491
+ # Output only. Number of frames that are still being processed.
2492
+ # Corresponds to the JSON property `pendingFrameCount`
2493
+ # @return [Fixnum]
2494
+ attr_accessor :pending_frame_count
2495
+
2496
+ # The information confidence of the source. The higher the value, the higher the
2497
+ # confidence.
2498
+ # Corresponds to the JSON property `priority`
2499
+ # @return [Fixnum]
2500
+ attr_accessor :priority
2501
+
2502
+ # Data source type.
2503
+ # Corresponds to the JSON property `type`
2504
+ # @return [String]
2505
+ attr_accessor :type
2506
+
2507
+ # Output only. The timestamp when the source was last updated.
2508
+ # Corresponds to the JSON property `updateTime`
2509
+ # @return [String]
2510
+ attr_accessor :update_time
2511
+
2512
+ def initialize(**args)
2513
+ update!(**args)
2514
+ end
2515
+
2516
+ # Update properties of this object
2517
+ def update!(**args)
2518
+ @create_time = args[:create_time] if args.key?(:create_time)
2519
+ @description = args[:description] if args.key?(:description)
2520
+ @display_name = args[:display_name] if args.key?(:display_name)
2521
+ @is_managed = args[:is_managed] if args.key?(:is_managed)
2522
+ @name = args[:name] if args.key?(:name)
2523
+ @pending_frame_count = args[:pending_frame_count] if args.key?(:pending_frame_count)
2524
+ @priority = args[:priority] if args.key?(:priority)
2525
+ @type = args[:type] if args.key?(:type)
2526
+ @update_time = args[:update_time] if args.key?(:update_time)
2527
+ end
2528
+ end
2529
+
2530
+ # The `Status` type defines a logical error model that is suitable for different
2531
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2532
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2533
+ # data: error code, error message, and error details. You can find out more
2534
+ # about this error model and how to work with it in the [API Design Guide](https:
2535
+ # //cloud.google.com/apis/design/errors).
2536
+ class Status
2537
+ include Google::Apis::Core::Hashable
2538
+
2539
+ # The status code, which should be an enum value of google.rpc.Code.
2540
+ # Corresponds to the JSON property `code`
2541
+ # @return [Fixnum]
2542
+ attr_accessor :code
2543
+
2544
+ # A list of messages that carry the error details. There is a common set of
2545
+ # message types for APIs to use.
2546
+ # Corresponds to the JSON property `details`
2547
+ # @return [Array<Hash<String,Object>>]
2548
+ attr_accessor :details
2549
+
2550
+ # A developer-facing error message, which should be in English. Any user-facing
2551
+ # error message should be localized and sent in the google.rpc.Status.details
2552
+ # field, or localized by the client.
2553
+ # Corresponds to the JSON property `message`
2554
+ # @return [String]
2555
+ attr_accessor :message
2556
+
2557
+ def initialize(**args)
2558
+ update!(**args)
2559
+ end
2560
+
2561
+ # Update properties of this object
2562
+ def update!(**args)
2563
+ @code = args[:code] if args.key?(:code)
2564
+ @details = args[:details] if args.key?(:details)
2565
+ @message = args[:message] if args.key?(:message)
2566
+ end
2567
+ end
2568
+
2569
+ # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/
2570
+ # time-zones).
2571
+ class TimeZone
2572
+ include Google::Apis::Core::Hashable
2573
+
2574
+ # IANA Time Zone Database time zone, e.g. "America/New_York".
2575
+ # Corresponds to the JSON property `id`
2576
+ # @return [String]
2577
+ attr_accessor :id
2578
+
2579
+ # Optional. IANA Time Zone Database version number, e.g. "2019a".
2580
+ # Corresponds to the JSON property `version`
2581
+ # @return [String]
2582
+ attr_accessor :version
2583
+
2584
+ def initialize(**args)
2585
+ update!(**args)
2586
+ end
2587
+
2588
+ # Update properties of this object
2589
+ def update!(**args)
2590
+ @id = args[:id] if args.key?(:id)
2591
+ @version = args[:version] if args.key?(:version)
2592
+ end
2593
+ end
2594
+
2595
+ # A request to update an asset.
2596
+ class UpdateAssetRequest
2597
+ include Google::Apis::Core::Hashable
2598
+
2599
+ # An asset represents a resource in your environment. Asset types include
2600
+ # virtual machines and databases.
2601
+ # Corresponds to the JSON property `asset`
2602
+ # @return [Google::Apis::MigrationcenterV1alpha1::Asset]
2603
+ attr_accessor :asset
2604
+
2605
+ # Optional. An optional request ID to identify requests. Specify a unique
2606
+ # request ID so that if you must retry your request, the server will know to
2607
+ # ignore the request if it has already been completed. The server will guarantee
2608
+ # that for at least 60 minutes since the first request. For example, consider a
2609
+ # situation where you make an initial request and the request times out. If you
2610
+ # make the request again with the same request ID, the server can check if
2611
+ # original operation with the same request ID was received, and if so, will
2612
+ # ignore the second request. This prevents clients from accidentally creating
2613
+ # duplicate commitments. The request ID must be a valid UUID with the exception
2614
+ # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
2615
+ # Corresponds to the JSON property `requestId`
2616
+ # @return [String]
2617
+ attr_accessor :request_id
2618
+
2619
+ # Required. Field mask is used to specify the fields to be overwritten in the `
2620
+ # Asset` resource by the update. The values specified in the `update_mask` field
2621
+ # are relative to the resource, not the full request. A field will be
2622
+ # overwritten if it is in the mask. A single * value in the mask lets you to
2623
+ # overwrite all fields.
2624
+ # Corresponds to the JSON property `updateMask`
2625
+ # @return [String]
2626
+ attr_accessor :update_mask
2627
+
2628
+ def initialize(**args)
2629
+ update!(**args)
2630
+ end
2631
+
2632
+ # Update properties of this object
2633
+ def update!(**args)
2634
+ @asset = args[:asset] if args.key?(:asset)
2635
+ @request_id = args[:request_id] if args.key?(:request_id)
2636
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
2637
+ end
2638
+ end
2639
+
2640
+ # A request to validate an import job.
2641
+ class ValidateImportJobRequest
2642
+ include Google::Apis::Core::Hashable
2643
+
2644
+ # Optional. An optional request ID to identify requests. Specify a unique
2645
+ # request ID so that if you must retry your request, the server will know to
2646
+ # ignore the request if it has already been completed. The server will guarantee
2647
+ # that for at least 60 minutes after the first request. For example, consider a
2648
+ # situation where you make an initial request and the request times out. If you
2649
+ # make the request again with the same request ID, the server can check if
2650
+ # original operation with the same request ID was received, and if so, will
2651
+ # ignore the second request. This prevents clients from accidentally creating
2652
+ # duplicate commitments. The request ID must be a valid UUID with the exception
2653
+ # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
2654
+ # Corresponds to the JSON property `requestId`
2655
+ # @return [String]
2656
+ attr_accessor :request_id
2657
+
2658
+ def initialize(**args)
2659
+ update!(**args)
2660
+ end
2661
+
2662
+ # Update properties of this object
2663
+ def update!(**args)
2664
+ @request_id = args[:request_id] if args.key?(:request_id)
2665
+ end
2666
+ end
2667
+
2668
+ # A resource that aggregates errors across import job files.
2669
+ class ValidationReport
2670
+ include Google::Apis::Core::Hashable
2671
+
2672
+ # List of errors found in files.
2673
+ # Corresponds to the JSON property `fileValidations`
2674
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::FileValidationReport>]
2675
+ attr_accessor :file_validations
2676
+
2677
+ # List of job level errors.
2678
+ # Corresponds to the JSON property `jobErrors`
2679
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ImportError>]
2680
+ attr_accessor :job_errors
2681
+
2682
+ def initialize(**args)
2683
+ update!(**args)
2684
+ end
2685
+
2686
+ # Update properties of this object
2687
+ def update!(**args)
2688
+ @file_validations = args[:file_validations] if args.key?(:file_validations)
2689
+ @job_errors = args[:job_errors] if args.key?(:job_errors)
2690
+ end
2691
+ end
2692
+
2693
+ # Details of the VM architecture.
2694
+ class VirtualMachineArchitectureDetails
2695
+ include Google::Apis::Core::Hashable
2696
+
2697
+ # Details about the bios.
2698
+ # Corresponds to the JSON property `bios`
2699
+ # @return [Google::Apis::MigrationcenterV1alpha1::BiosDetails]
2700
+ attr_accessor :bios
2701
+
2702
+ # CPU architecture e.g.: "x64-based PC", "x86_64", "i686" etc.
2703
+ # Corresponds to the JSON property `cpuArchitecture`
2704
+ # @return [String]
2705
+ attr_accessor :cpu_architecture
2706
+
2707
+ # CPU manufacturer e.g.: "Intel", "AMD".
2708
+ # Corresponds to the JSON property `cpuManufacturer`
2709
+ # @return [String]
2710
+ attr_accessor :cpu_manufacturer
2711
+
2712
+ # CPU name e.g. "Intel Xeon E5-2690", "AMD EPYC 7571" etc.
2713
+ # Corresponds to the JSON property `cpuName`
2714
+ # @return [String]
2715
+ attr_accessor :cpu_name
2716
+
2717
+ # Number of processor sockets allocated to the machine.
2718
+ # Corresponds to the JSON property `cpuSocketCount`
2719
+ # @return [Fixnum]
2720
+ attr_accessor :cpu_socket_count
2721
+
2722
+ # Number of cpu threads allocated to the machine.
2723
+ # Corresponds to the JSON property `cpuThreadCount`
2724
+ # @return [Fixnum]
2725
+ attr_accessor :cpu_thread_count
2726
+
2727
+ # Firmware (BIOS/efi).
2728
+ # Corresponds to the JSON property `firmware`
2729
+ # @return [String]
2730
+ attr_accessor :firmware
2731
+
2732
+ # CPU hyperthreading support (inner enum).
2733
+ # Corresponds to the JSON property `hyperthreading`
2734
+ # @return [String]
2735
+ attr_accessor :hyperthreading
2736
+
2737
+ # Hardware vendor.
2738
+ # Corresponds to the JSON property `vendor`
2739
+ # @return [String]
2740
+ attr_accessor :vendor
2741
+
2742
+ def initialize(**args)
2743
+ update!(**args)
2744
+ end
2745
+
2746
+ # Update properties of this object
2747
+ def update!(**args)
2748
+ @bios = args[:bios] if args.key?(:bios)
2749
+ @cpu_architecture = args[:cpu_architecture] if args.key?(:cpu_architecture)
2750
+ @cpu_manufacturer = args[:cpu_manufacturer] if args.key?(:cpu_manufacturer)
2751
+ @cpu_name = args[:cpu_name] if args.key?(:cpu_name)
2752
+ @cpu_socket_count = args[:cpu_socket_count] if args.key?(:cpu_socket_count)
2753
+ @cpu_thread_count = args[:cpu_thread_count] if args.key?(:cpu_thread_count)
2754
+ @firmware = args[:firmware] if args.key?(:firmware)
2755
+ @hyperthreading = args[:hyperthreading] if args.key?(:hyperthreading)
2756
+ @vendor = args[:vendor] if args.key?(:vendor)
2757
+ end
2758
+ end
2759
+
2760
+ # Details of a VirtualMachine.
2761
+ class VirtualMachineDetails
2762
+ include Google::Apis::Core::Hashable
2763
+
2764
+ # Number of CPU cores in the VirtualMachine. Must be non-negative.
2765
+ # Corresponds to the JSON property `coreCount`
2766
+ # @return [Fixnum]
2767
+ attr_accessor :core_count
2768
+
2769
+ # Information from Guest-level collections.
2770
+ # Corresponds to the JSON property `guestOs`
2771
+ # @return [Google::Apis::MigrationcenterV1alpha1::GuestOsDetails]
2772
+ attr_accessor :guest_os
2773
+
2774
+ # The amount of memory in the VirtualMachine. Must be non-negative.
2775
+ # Corresponds to the JSON property `memoryMb`
2776
+ # @return [Fixnum]
2777
+ attr_accessor :memory_mb
2778
+
2779
+ # What family the OS belong to, if known.
2780
+ # Corresponds to the JSON property `osFamily`
2781
+ # @return [String]
2782
+ attr_accessor :os_family
2783
+
2784
+ # The name of the operating system running on the VirtualMachine.
2785
+ # Corresponds to the JSON property `osName`
2786
+ # @return [String]
2787
+ attr_accessor :os_name
2788
+
2789
+ # Information about the platform.
2790
+ # Corresponds to the JSON property `platform`
2791
+ # @return [Google::Apis::MigrationcenterV1alpha1::PlatformDetails]
2792
+ attr_accessor :platform
2793
+
2794
+ # Power state of VM (poweredOn or poweredOff).
2795
+ # Corresponds to the JSON property `powerState`
2796
+ # @return [String]
2797
+ attr_accessor :power_state
2798
+
2799
+ # Folder name in vCenter where asset resides.
2800
+ # Corresponds to the JSON property `vcenterFolder`
2801
+ # @return [String]
2802
+ attr_accessor :vcenter_folder
2803
+
2804
+ # vCenter URL used in collection.
2805
+ # Corresponds to the JSON property `vcenterUrl`
2806
+ # @return [String]
2807
+ attr_accessor :vcenter_url
2808
+
2809
+ # vCenter VM ID.
2810
+ # Corresponds to the JSON property `vcenterVmId`
2811
+ # @return [String]
2812
+ attr_accessor :vcenter_vm_id
2813
+
2814
+ # Details of the VM architecture.
2815
+ # Corresponds to the JSON property `vmArchitecture`
2816
+ # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachineArchitectureDetails]
2817
+ attr_accessor :vm_architecture
2818
+
2819
+ # Details of VM disks.
2820
+ # Corresponds to the JSON property `vmDisks`
2821
+ # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachineDiskDetails]
2822
+ attr_accessor :vm_disks
2823
+
2824
+ # Virtual Machine display name.
2825
+ # Corresponds to the JSON property `vmName`
2826
+ # @return [String]
2827
+ attr_accessor :vm_name
2828
+
2829
+ # Details of network adapters and settings
2830
+ # Corresponds to the JSON property `vmNetwork`
2831
+ # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachineNetworkDetails]
2832
+ attr_accessor :vm_network
2833
+
2834
+ # Virtual Machine uniqe identifier.
2835
+ # Corresponds to the JSON property `vmUuid`
2836
+ # @return [String]
2837
+ attr_accessor :vm_uuid
2838
+
2839
+ def initialize(**args)
2840
+ update!(**args)
2841
+ end
2842
+
2843
+ # Update properties of this object
2844
+ def update!(**args)
2845
+ @core_count = args[:core_count] if args.key?(:core_count)
2846
+ @guest_os = args[:guest_os] if args.key?(:guest_os)
2847
+ @memory_mb = args[:memory_mb] if args.key?(:memory_mb)
2848
+ @os_family = args[:os_family] if args.key?(:os_family)
2849
+ @os_name = args[:os_name] if args.key?(:os_name)
2850
+ @platform = args[:platform] if args.key?(:platform)
2851
+ @power_state = args[:power_state] if args.key?(:power_state)
2852
+ @vcenter_folder = args[:vcenter_folder] if args.key?(:vcenter_folder)
2853
+ @vcenter_url = args[:vcenter_url] if args.key?(:vcenter_url)
2854
+ @vcenter_vm_id = args[:vcenter_vm_id] if args.key?(:vcenter_vm_id)
2855
+ @vm_architecture = args[:vm_architecture] if args.key?(:vm_architecture)
2856
+ @vm_disks = args[:vm_disks] if args.key?(:vm_disks)
2857
+ @vm_name = args[:vm_name] if args.key?(:vm_name)
2858
+ @vm_network = args[:vm_network] if args.key?(:vm_network)
2859
+ @vm_uuid = args[:vm_uuid] if args.key?(:vm_uuid)
2860
+ end
2861
+ end
2862
+
2863
+ # Details of VM disks.
2864
+ class VirtualMachineDiskDetails
2865
+ include Google::Apis::Core::Hashable
2866
+
2867
+ # VM disks.
2868
+ # Corresponds to the JSON property `disks`
2869
+ # @return [Google::Apis::MigrationcenterV1alpha1::DiskEntryList]
2870
+ attr_accessor :disks
2871
+
2872
+ # Disk total Capacity.
2873
+ # Corresponds to the JSON property `hddTotalCapacityBytes`
2874
+ # @return [Fixnum]
2875
+ attr_accessor :hdd_total_capacity_bytes
2876
+
2877
+ # Total Disk Free Space.
2878
+ # Corresponds to the JSON property `hddTotalFreeBytes`
2879
+ # @return [Fixnum]
2880
+ attr_accessor :hdd_total_free_bytes
2881
+
2882
+ # Raw lsblk output in json.
2883
+ # Corresponds to the JSON property `lsblkJson`
2884
+ # @return [String]
2885
+ attr_accessor :lsblk_json
2886
+
2887
+ def initialize(**args)
2888
+ update!(**args)
2889
+ end
2890
+
2891
+ # Update properties of this object
2892
+ def update!(**args)
2893
+ @disks = args[:disks] if args.key?(:disks)
2894
+ @hdd_total_capacity_bytes = args[:hdd_total_capacity_bytes] if args.key?(:hdd_total_capacity_bytes)
2895
+ @hdd_total_free_bytes = args[:hdd_total_free_bytes] if args.key?(:hdd_total_free_bytes)
2896
+ @lsblk_json = args[:lsblk_json] if args.key?(:lsblk_json)
2897
+ end
2898
+ end
2899
+
2900
+ # Details of network adapters and settings
2901
+ class VirtualMachineNetworkDetails
2902
+ include Google::Apis::Core::Hashable
2903
+
2904
+ # Default GW address. Top-level object, will be later encriched by full
2905
+ # RouteInfo.
2906
+ # Corresponds to the JSON property `defaultGw`
2907
+ # @return [String]
2908
+ attr_accessor :default_gw
2909
+
2910
+ # List of Network Adapters.
2911
+ # Corresponds to the JSON property `networkAdapters`
2912
+ # @return [Google::Apis::MigrationcenterV1alpha1::NetworkAdapterList]
2913
+ attr_accessor :network_adapters
2914
+
2915
+ # IP Address of the machine.
2916
+ # Corresponds to the JSON property `primaryIpAddress`
2917
+ # @return [String]
2918
+ attr_accessor :primary_ip_address
2919
+
2920
+ # MAC Address of the machine. This property is used to uniqly identify the
2921
+ # machine.
2922
+ # Corresponds to the JSON property `primaryMacAddress`
2923
+ # @return [String]
2924
+ attr_accessor :primary_mac_address
2925
+
2926
+ def initialize(**args)
2927
+ update!(**args)
2928
+ end
2929
+
2930
+ # Update properties of this object
2931
+ def update!(**args)
2932
+ @default_gw = args[:default_gw] if args.key?(:default_gw)
2933
+ @network_adapters = args[:network_adapters] if args.key?(:network_adapters)
2934
+ @primary_ip_address = args[:primary_ip_address] if args.key?(:primary_ip_address)
2935
+ @primary_mac_address = args[:primary_mac_address] if args.key?(:primary_mac_address)
2936
+ end
2937
+ end
2938
+
2939
+ # VMware disk config details.
2940
+ class VmwareDiskConfig
2941
+ include Google::Apis::Core::Hashable
2942
+
2943
+ # VMDK backing type.
2944
+ # Corresponds to the JSON property `backingType`
2945
+ # @return [String]
2946
+ attr_accessor :backing_type
2947
+
2948
+ # RDM compatibility mode.
2949
+ # Corresponds to the JSON property `rdmCompatibilityMode`
2950
+ # @return [String]
2951
+ attr_accessor :rdm_compatibility_mode
2952
+
2953
+ # Is VMDK shared with other VMs.
2954
+ # Corresponds to the JSON property `shared`
2955
+ # @return [Boolean]
2956
+ attr_accessor :shared
2957
+ alias_method :shared?, :shared
2958
+
2959
+ # VMDK disk mode.
2960
+ # Corresponds to the JSON property `vmdkDiskMode`
2961
+ # @return [String]
2962
+ attr_accessor :vmdk_disk_mode
2963
+
2964
+ def initialize(**args)
2965
+ update!(**args)
2966
+ end
2967
+
2968
+ # Update properties of this object
2969
+ def update!(**args)
2970
+ @backing_type = args[:backing_type] if args.key?(:backing_type)
2971
+ @rdm_compatibility_mode = args[:rdm_compatibility_mode] if args.key?(:rdm_compatibility_mode)
2972
+ @shared = args[:shared] if args.key?(:shared)
2973
+ @vmdk_disk_mode = args[:vmdk_disk_mode] if args.key?(:vmdk_disk_mode)
2974
+ end
2975
+ end
2976
+
2977
+ # VMware specific details.
2978
+ class VmwarePlatformDetails
2979
+ include Google::Apis::Core::Hashable
2980
+
2981
+ # ESX version.
2982
+ # Corresponds to the JSON property `esxVersion`
2983
+ # @return [String]
2984
+ attr_accessor :esx_version
2985
+
2986
+ # VMware os enum - https://vdc-repo.vmware.com/vmwb-repository/dcr-public/
2987
+ # da47f910-60ac-438b-8b9b-6122f4d14524/16b7274a-bf8b-4b4c-a05e-746f2aa93c8c/doc/
2988
+ # vim.vm.GuestOsDescriptor.GuestOsIdentifier.html.
2989
+ # Corresponds to the JSON property `osid`
2990
+ # @return [String]
2991
+ attr_accessor :osid
2992
+
2993
+ # vCenter version.
2994
+ # Corresponds to the JSON property `vcenterVersion`
2995
+ # @return [String]
2996
+ attr_accessor :vcenter_version
2997
+
2998
+ def initialize(**args)
2999
+ update!(**args)
3000
+ end
3001
+
3002
+ # Update properties of this object
3003
+ def update!(**args)
3004
+ @esx_version = args[:esx_version] if args.key?(:esx_version)
3005
+ @osid = args[:osid] if args.key?(:osid)
3006
+ @vcenter_version = args[:vcenter_version] if args.key?(:vcenter_version)
3007
+ end
3008
+ end
3009
+ end
3010
+ end
3011
+ end