google-apis-migrationcenter_v1alpha1 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,50 @@ module Google
22
22
  module Apis
23
23
  module MigrationcenterV1alpha1
24
24
 
25
+ # A request to add assets to a group.
26
+ class AddAssetsToGroupRequest
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Optional. When this value is set to `false` and one of the given assets is
30
+ # already an existing member of the group, the operation fails with an `Already
31
+ # Exists` error. When set to `true` this situation is silently ignored by the
32
+ # server. Default value is `false`.
33
+ # Corresponds to the JSON property `allowExisting`
34
+ # @return [Boolean]
35
+ attr_accessor :allow_existing
36
+ alias_method :allow_existing?, :allow_existing
37
+
38
+ # Lists the asset IDs of all assets.
39
+ # Corresponds to the JSON property `assets`
40
+ # @return [Google::Apis::MigrationcenterV1alpha1::AssetList]
41
+ attr_accessor :assets
42
+
43
+ # Optional. An optional request ID to identify requests. Specify a unique
44
+ # request ID so that if you must retry your request, the server will know to
45
+ # ignore the request if it has already been completed. The server will guarantee
46
+ # that for at least 60 minutes after the first request. For example, consider a
47
+ # situation where you make an initial request and the request times out. If you
48
+ # make the request again with the same request ID, the server can check if
49
+ # original operation with the same request ID was received, and if so, will
50
+ # ignore the second request. This prevents clients from accidentally creating
51
+ # duplicate commitments. The request ID must be a valid UUID with the exception
52
+ # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
53
+ # Corresponds to the JSON property `requestId`
54
+ # @return [String]
55
+ attr_accessor :request_id
56
+
57
+ def initialize(**args)
58
+ update!(**args)
59
+ end
60
+
61
+ # Update properties of this object
62
+ def update!(**args)
63
+ @allow_existing = args[:allow_existing] if args.key?(:allow_existing)
64
+ @assets = args[:assets] if args.key?(:assets)
65
+ @request_id = args[:request_id] if args.key?(:request_id)
66
+ end
67
+ end
68
+
25
69
  # A request to aggregate one or more values.
26
70
  class AggregateAssetsValuesRequest
27
71
  include Google::Apis::Core::Hashable
@@ -334,6 +378,11 @@ module Google
334
378
  class Asset
335
379
  include Google::Apis::Core::Hashable
336
380
 
381
+ # Output only. The list of groups that the asset is assigned to.
382
+ # Corresponds to the JSON property `assignedGroups`
383
+ # @return [Array<String>]
384
+ attr_accessor :assigned_groups
385
+
337
386
  # Generic asset attributes.
338
387
  # Corresponds to the JSON property `attributes`
339
388
  # @return [Hash<String,String>]
@@ -344,6 +393,11 @@ module Google
344
393
  # @return [String]
345
394
  attr_accessor :create_time
346
395
 
396
+ # Message containing insights list.
397
+ # Corresponds to the JSON property `insightList`
398
+ # @return [Google::Apis::MigrationcenterV1alpha1::InsightList]
399
+ attr_accessor :insight_list
400
+
347
401
  # Labels as key value pairs.
348
402
  # Corresponds to the JSON property `labels`
349
403
  # @return [Hash<String,String>]
@@ -354,6 +408,11 @@ module Google
354
408
  # @return [String]
355
409
  attr_accessor :name
356
410
 
411
+ # Performance data for an asset.
412
+ # Corresponds to the JSON property `performanceData`
413
+ # @return [Google::Apis::MigrationcenterV1alpha1::AssetPerformanceData]
414
+ attr_accessor :performance_data
415
+
357
416
  # Output only. The list of sources contributing to the asset.
358
417
  # Corresponds to the JSON property `sources`
359
418
  # @return [Array<String>]
@@ -375,10 +434,13 @@ module Google
375
434
 
376
435
  # Update properties of this object
377
436
  def update!(**args)
437
+ @assigned_groups = args[:assigned_groups] if args.key?(:assigned_groups)
378
438
  @attributes = args[:attributes] if args.key?(:attributes)
379
439
  @create_time = args[:create_time] if args.key?(:create_time)
440
+ @insight_list = args[:insight_list] if args.key?(:insight_list)
380
441
  @labels = args[:labels] if args.key?(:labels)
381
442
  @name = args[:name] if args.key?(:name)
443
+ @performance_data = args[:performance_data] if args.key?(:performance_data)
382
444
  @sources = args[:sources] if args.key?(:sources)
383
445
  @update_time = args[:update_time] if args.key?(:update_time)
384
446
  @virtual_machine_details = args[:virtual_machine_details] if args.key?(:virtual_machine_details)
@@ -435,6 +497,131 @@ module Google
435
497
  end
436
498
  end
437
499
 
500
+ # Lists the asset IDs of all assets.
501
+ class AssetList
502
+ include Google::Apis::Core::Hashable
503
+
504
+ # A list of asset IDs
505
+ # Corresponds to the JSON property `assetIds`
506
+ # @return [Array<String>]
507
+ attr_accessor :asset_ids
508
+
509
+ def initialize(**args)
510
+ update!(**args)
511
+ end
512
+
513
+ # Update properties of this object
514
+ def update!(**args)
515
+ @asset_ids = args[:asset_ids] if args.key?(:asset_ids)
516
+ end
517
+ end
518
+
519
+ # Performance data for an asset.
520
+ class AssetPerformanceData
521
+ include Google::Apis::Core::Hashable
522
+
523
+ # Daily resource usage aggregations. Contains all of the data available for an
524
+ # asset, up to the last 420 days.
525
+ # Corresponds to the JSON property `dailyResourceUsageAggregations`
526
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregation>]
527
+ attr_accessor :daily_resource_usage_aggregations
528
+
529
+ def initialize(**args)
530
+ update!(**args)
531
+ end
532
+
533
+ # Update properties of this object
534
+ def update!(**args)
535
+ @daily_resource_usage_aggregations = args[:daily_resource_usage_aggregations] if args.key?(:daily_resource_usage_aggregations)
536
+ end
537
+ end
538
+
539
+ # AWS EC2 specific details.
540
+ class AwsEc2PlatformDetails
541
+ include Google::Apis::Core::Hashable
542
+
543
+ # The location of the machine in the AWS format.
544
+ # Corresponds to the JSON property `location`
545
+ # @return [String]
546
+ attr_accessor :location
547
+
548
+ # AWS platform's machine type label.
549
+ # Corresponds to the JSON property `machineTypeLabel`
550
+ # @return [String]
551
+ attr_accessor :machine_type_label
552
+
553
+ def initialize(**args)
554
+ update!(**args)
555
+ end
556
+
557
+ # Update properties of this object
558
+ def update!(**args)
559
+ @location = args[:location] if args.key?(:location)
560
+ @machine_type_label = args[:machine_type_label] if args.key?(:machine_type_label)
561
+ end
562
+ end
563
+
564
+ # Azure VM specific details.
565
+ class AzureVmPlatformDetails
566
+ include Google::Apis::Core::Hashable
567
+
568
+ # The location of the machine in the Azure format.
569
+ # Corresponds to the JSON property `location`
570
+ # @return [String]
571
+ attr_accessor :location
572
+
573
+ # Azure platform's machine type label.
574
+ # Corresponds to the JSON property `machineTypeLabel`
575
+ # @return [String]
576
+ attr_accessor :machine_type_label
577
+
578
+ # Azure platform's provisioning state.
579
+ # Corresponds to the JSON property `provisioningState`
580
+ # @return [String]
581
+ attr_accessor :provisioning_state
582
+
583
+ def initialize(**args)
584
+ update!(**args)
585
+ end
586
+
587
+ # Update properties of this object
588
+ def update!(**args)
589
+ @location = args[:location] if args.key?(:location)
590
+ @machine_type_label = args[:machine_type_label] if args.key?(:machine_type_label)
591
+ @provisioning_state = args[:provisioning_state] if args.key?(:provisioning_state)
592
+ end
593
+ end
594
+
595
+ # A request to delete a list of asset.
596
+ class BatchDeleteAssetsRequest
597
+ include Google::Apis::Core::Hashable
598
+
599
+ # Optional. When this value is set to `true` the request is a no-op for non-
600
+ # existing assets. See https://google.aip.dev/135#delete-if-existing for
601
+ # additional details. Default value is `false`.
602
+ # Corresponds to the JSON property `allowMissing`
603
+ # @return [Boolean]
604
+ attr_accessor :allow_missing
605
+ alias_method :allow_missing?, :allow_missing
606
+
607
+ # Required. The IDs of the assets to delete. A maximum of 10 assets can be
608
+ # deleted in a batch. format: projects/`project`/locations/`location`/asset/`
609
+ # name`.
610
+ # Corresponds to the JSON property `names`
611
+ # @return [Array<String>]
612
+ attr_accessor :names
613
+
614
+ def initialize(**args)
615
+ update!(**args)
616
+ end
617
+
618
+ # Update properties of this object
619
+ def update!(**args)
620
+ @allow_missing = args[:allow_missing] if args.key?(:allow_missing)
621
+ @names = args[:names] if args.key?(:names)
622
+ end
623
+ end
624
+
438
625
  # A request to update a list of assets.
439
626
  class BatchUpdateAssetsRequest
440
627
  include Google::Apis::Core::Hashable
@@ -475,31 +662,31 @@ module Google
475
662
  end
476
663
  end
477
664
 
478
- # Details about the bios.
665
+ # Details about the BIOS.
479
666
  class BiosDetails
480
667
  include Google::Apis::Core::Hashable
481
668
 
482
- # Bios manufacturer.
669
+ # BIOS manufacturer.
483
670
  # Corresponds to the JSON property `biosManufacturer`
484
671
  # @return [String]
485
672
  attr_accessor :bios_manufacturer
486
673
 
487
- # Bios name.
674
+ # BIOS name.
488
675
  # Corresponds to the JSON property `biosName`
489
676
  # @return [String]
490
677
  attr_accessor :bios_name
491
678
 
492
- # Bios release date.
679
+ # BIOS release date.
493
680
  # Corresponds to the JSON property `biosReleaseDate`
494
681
  # @return [String]
495
682
  attr_accessor :bios_release_date
496
683
 
497
- # Bios version.
684
+ # BIOS version.
498
685
  # Corresponds to the JSON property `biosVersion`
499
686
  # @return [String]
500
687
  attr_accessor :bios_version
501
688
 
502
- # SMBios UUID.
689
+ # SMBIOS UUID.
503
690
  # Corresponds to the JSON property `smbiosUuid`
504
691
  # @return [String]
505
692
  attr_accessor :smbios_uuid
@@ -531,6 +718,104 @@ module Google
531
718
  end
532
719
  end
533
720
 
721
+ # Compute engine migration target.
722
+ class ComputeEngineMigrationTarget
723
+ include Google::Apis::Core::Hashable
724
+
725
+ # Compute Engine target shape descriptor.
726
+ # Corresponds to the JSON property `shape`
727
+ # @return [Google::Apis::MigrationcenterV1alpha1::ComputeEngineShapeDescriptor]
728
+ attr_accessor :shape
729
+
730
+ def initialize(**args)
731
+ update!(**args)
732
+ end
733
+
734
+ # Update properties of this object
735
+ def update!(**args)
736
+ @shape = args[:shape] if args.key?(:shape)
737
+ end
738
+ end
739
+
740
+ # The user preferences relating to Compute Engine target platform.
741
+ class ComputeEnginePreferences
742
+ include Google::Apis::Core::Hashable
743
+
744
+ # License type to consider when calculating costs for virtual machine insights
745
+ # and recommendations. If unspecified, costs are calculated based on the default
746
+ # licensing plan.
747
+ # Corresponds to the JSON property `licenseType`
748
+ # @return [String]
749
+ attr_accessor :license_type
750
+
751
+ # The type of machines to consider when calculating virtual machine migration
752
+ # insights and recommendations. Not all machine types are available in all zones
753
+ # and regions.
754
+ # Corresponds to the JSON property `machinePreferences`
755
+ # @return [Google::Apis::MigrationcenterV1alpha1::MachinePreferences]
756
+ attr_accessor :machine_preferences
757
+
758
+ # Persistent disk type to use. If unspecified (default), all types are
759
+ # considered, based on available usage data.
760
+ # Corresponds to the JSON property `persistentDiskType`
761
+ # @return [String]
762
+ attr_accessor :persistent_disk_type
763
+
764
+ def initialize(**args)
765
+ update!(**args)
766
+ end
767
+
768
+ # Update properties of this object
769
+ def update!(**args)
770
+ @license_type = args[:license_type] if args.key?(:license_type)
771
+ @machine_preferences = args[:machine_preferences] if args.key?(:machine_preferences)
772
+ @persistent_disk_type = args[:persistent_disk_type] if args.key?(:persistent_disk_type)
773
+ end
774
+ end
775
+
776
+ # Compute Engine target shape descriptor.
777
+ class ComputeEngineShapeDescriptor
778
+ include Google::Apis::Core::Hashable
779
+
780
+ # Number of logical cores.
781
+ # Corresponds to the JSON property `logicalCoreCount`
782
+ # @return [Fixnum]
783
+ attr_accessor :logical_core_count
784
+
785
+ # Compute Engine machine type.
786
+ # Corresponds to the JSON property `machineType`
787
+ # @return [String]
788
+ attr_accessor :machine_type
789
+
790
+ # Memory in mebibytes.
791
+ # Corresponds to the JSON property `memoryMb`
792
+ # @return [Fixnum]
793
+ attr_accessor :memory_mb
794
+
795
+ # Number of physical cores.
796
+ # Corresponds to the JSON property `physicalCoreCount`
797
+ # @return [Fixnum]
798
+ attr_accessor :physical_core_count
799
+
800
+ # Compute Engine machine series.
801
+ # Corresponds to the JSON property `series`
802
+ # @return [String]
803
+ attr_accessor :series
804
+
805
+ def initialize(**args)
806
+ update!(**args)
807
+ end
808
+
809
+ # Update properties of this object
810
+ def update!(**args)
811
+ @logical_core_count = args[:logical_core_count] if args.key?(:logical_core_count)
812
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
813
+ @memory_mb = args[:memory_mb] if args.key?(:memory_mb)
814
+ @physical_core_count = args[:physical_core_count] if args.key?(:physical_core_count)
815
+ @series = args[:series] if args.key?(:series)
816
+ end
817
+ end
818
+
534
819
  # CPU usage sample.
535
820
  class CpuUsageSample
536
821
  include Google::Apis::Core::Hashable
@@ -551,6 +836,175 @@ module Google
551
836
  end
552
837
  end
553
838
 
839
+ # Usage data aggregation for a single day.
840
+ class DailyResourceUsageAggregation
841
+ include Google::Apis::Core::Hashable
842
+
843
+ # Statistical aggregation of CPU usage.
844
+ # Corresponds to the JSON property `cpu`
845
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationCpu]
846
+ attr_accessor :cpu
847
+
848
+ # Represents a whole or partial calendar date, such as a birthday. The time of
849
+ # day and time zone are either specified elsewhere or are insignificant. The
850
+ # date is relative to the Gregorian Calendar. This can represent one of the
851
+ # following: * A full date, with non-zero year, month, and day values. * A month
852
+ # and day, with a zero year (for example, an anniversary). * A year on its own,
853
+ # with a zero month and a zero day. * A year and month, with a zero day (for
854
+ # example, a credit card expiration date). Related types: * google.type.
855
+ # TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
856
+ # Corresponds to the JSON property `date`
857
+ # @return [Google::Apis::MigrationcenterV1alpha1::Date]
858
+ attr_accessor :date
859
+
860
+ # Statistical aggregation of disk usage.
861
+ # Corresponds to the JSON property `disk`
862
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationDisk]
863
+ attr_accessor :disk
864
+
865
+ # Statistical aggregation of memory usage.
866
+ # Corresponds to the JSON property `memory`
867
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationMemory]
868
+ attr_accessor :memory
869
+
870
+ # Statistical aggregation of network usage.
871
+ # Corresponds to the JSON property `network`
872
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationNetwork]
873
+ attr_accessor :network
874
+
875
+ def initialize(**args)
876
+ update!(**args)
877
+ end
878
+
879
+ # Update properties of this object
880
+ def update!(**args)
881
+ @cpu = args[:cpu] if args.key?(:cpu)
882
+ @date = args[:date] if args.key?(:date)
883
+ @disk = args[:disk] if args.key?(:disk)
884
+ @memory = args[:memory] if args.key?(:memory)
885
+ @network = args[:network] if args.key?(:network)
886
+ end
887
+ end
888
+
889
+ # Statistical aggregation of CPU usage.
890
+ class DailyResourceUsageAggregationCpu
891
+ include Google::Apis::Core::Hashable
892
+
893
+ # Statistical aggregation of samples for a single resource usage.
894
+ # Corresponds to the JSON property `utilizationPercentage`
895
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationStats]
896
+ attr_accessor :utilization_percentage
897
+
898
+ def initialize(**args)
899
+ update!(**args)
900
+ end
901
+
902
+ # Update properties of this object
903
+ def update!(**args)
904
+ @utilization_percentage = args[:utilization_percentage] if args.key?(:utilization_percentage)
905
+ end
906
+ end
907
+
908
+ # Statistical aggregation of disk usage.
909
+ class DailyResourceUsageAggregationDisk
910
+ include Google::Apis::Core::Hashable
911
+
912
+ # Statistical aggregation of samples for a single resource usage.
913
+ # Corresponds to the JSON property `iops`
914
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationStats]
915
+ attr_accessor :iops
916
+
917
+ def initialize(**args)
918
+ update!(**args)
919
+ end
920
+
921
+ # Update properties of this object
922
+ def update!(**args)
923
+ @iops = args[:iops] if args.key?(:iops)
924
+ end
925
+ end
926
+
927
+ # Statistical aggregation of memory usage.
928
+ class DailyResourceUsageAggregationMemory
929
+ include Google::Apis::Core::Hashable
930
+
931
+ # Statistical aggregation of samples for a single resource usage.
932
+ # Corresponds to the JSON property `utilizationPercentage`
933
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationStats]
934
+ attr_accessor :utilization_percentage
935
+
936
+ def initialize(**args)
937
+ update!(**args)
938
+ end
939
+
940
+ # Update properties of this object
941
+ def update!(**args)
942
+ @utilization_percentage = args[:utilization_percentage] if args.key?(:utilization_percentage)
943
+ end
944
+ end
945
+
946
+ # Statistical aggregation of network usage.
947
+ class DailyResourceUsageAggregationNetwork
948
+ include Google::Apis::Core::Hashable
949
+
950
+ # Statistical aggregation of samples for a single resource usage.
951
+ # Corresponds to the JSON property `egressBps`
952
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationStats]
953
+ attr_accessor :egress_bps
954
+
955
+ # Statistical aggregation of samples for a single resource usage.
956
+ # Corresponds to the JSON property `ingressBps`
957
+ # @return [Google::Apis::MigrationcenterV1alpha1::DailyResourceUsageAggregationStats]
958
+ attr_accessor :ingress_bps
959
+
960
+ def initialize(**args)
961
+ update!(**args)
962
+ end
963
+
964
+ # Update properties of this object
965
+ def update!(**args)
966
+ @egress_bps = args[:egress_bps] if args.key?(:egress_bps)
967
+ @ingress_bps = args[:ingress_bps] if args.key?(:ingress_bps)
968
+ end
969
+ end
970
+
971
+ # Statistical aggregation of samples for a single resource usage.
972
+ class DailyResourceUsageAggregationStats
973
+ include Google::Apis::Core::Hashable
974
+
975
+ # Average usage value.
976
+ # Corresponds to the JSON property `average`
977
+ # @return [Float]
978
+ attr_accessor :average
979
+
980
+ # Median usage value.
981
+ # Corresponds to the JSON property `median`
982
+ # @return [Float]
983
+ attr_accessor :median
984
+
985
+ # 95th percentile usage value.
986
+ # Corresponds to the JSON property `ninteyFifthPercentile`
987
+ # @return [Float]
988
+ attr_accessor :nintey_fifth_percentile
989
+
990
+ # Peak usage value.
991
+ # Corresponds to the JSON property `peak`
992
+ # @return [Float]
993
+ attr_accessor :peak
994
+
995
+ def initialize(**args)
996
+ update!(**args)
997
+ end
998
+
999
+ # Update properties of this object
1000
+ def update!(**args)
1001
+ @average = args[:average] if args.key?(:average)
1002
+ @median = args[:median] if args.key?(:median)
1003
+ @nintey_fifth_percentile = args[:nintey_fifth_percentile] if args.key?(:nintey_fifth_percentile)
1004
+ @peak = args[:peak] if args.key?(:peak)
1005
+ end
1006
+ end
1007
+
554
1008
  # Represents a whole or partial calendar date, such as a birthday. The time of
555
1009
  # day and time zone are either specified elsewhere or are insignificant. The
556
1010
  # date is relative to the Gregorian Calendar. This can represent one of the
@@ -705,7 +1159,7 @@ module Google
705
1159
  # @return [String]
706
1160
  attr_accessor :interface_type
707
1161
 
708
- # Partition layout.
1162
+ # Disk partition list.
709
1163
  # Corresponds to the JSON property `partitions`
710
1164
  # @return [Google::Apis::MigrationcenterV1alpha1::DiskPartitionList]
711
1165
  attr_accessor :partitions
@@ -715,12 +1169,12 @@ module Google
715
1169
  # @return [String]
716
1170
  attr_accessor :status
717
1171
 
718
- # Disk Capacity (required).
1172
+ # Disk capacity.
719
1173
  # Corresponds to the JSON property `totalCapacityBytes`
720
1174
  # @return [Fixnum]
721
1175
  attr_accessor :total_capacity_bytes
722
1176
 
723
- # Disk Free Space.
1177
+ # Disk free space.
724
1178
  # Corresponds to the JSON property `totalFreeBytes`
725
1179
  # @return [Fixnum]
726
1180
  attr_accessor :total_free_bytes
@@ -791,7 +1245,7 @@ module Google
791
1245
  # @return [String]
792
1246
  attr_accessor :mount_point
793
1247
 
794
- # Sub-partitions.
1248
+ # Disk partition list.
795
1249
  # Corresponds to the JSON property `subPartitions`
796
1250
  # @return [Google::Apis::MigrationcenterV1alpha1::DiskPartitionList]
797
1251
  attr_accessor :sub_partitions
@@ -822,7 +1276,7 @@ module Google
822
1276
  end
823
1277
  end
824
1278
 
825
- #
1279
+ # Disk partition list.
826
1280
  class DiskPartitionList
827
1281
  include Google::Apis::Core::Hashable
828
1282
 
@@ -952,6 +1406,25 @@ module Google
952
1406
  end
953
1407
  end
954
1408
 
1409
+ # Describes the fit level of an asset for migration to a specific target.
1410
+ class FitDescriptor
1411
+ include Google::Apis::Core::Hashable
1412
+
1413
+ # Fit level.
1414
+ # Corresponds to the JSON property `fitLevel`
1415
+ # @return [String]
1416
+ attr_accessor :fit_level
1417
+
1418
+ def initialize(**args)
1419
+ update!(**args)
1420
+ end
1421
+
1422
+ # Update properties of this object
1423
+ def update!(**args)
1424
+ @fit_level = args[:fit_level] if args.key?(:fit_level)
1425
+ end
1426
+ end
1427
+
955
1428
  # Collection of frame data.
956
1429
  class Frames
957
1430
  include Google::Apis::Core::Hashable
@@ -1065,6 +1538,91 @@ module Google
1065
1538
  end
1066
1539
  end
1067
1540
 
1541
+ # Generic platform details.
1542
+ class GenericPlatformDetails
1543
+ include Google::Apis::Core::Hashable
1544
+
1545
+ # Free text representation of the machine location. The format of this field
1546
+ # should not be relied on. Different VMs in the same location may have different
1547
+ # string values for this field.
1548
+ # Corresponds to the JSON property `location`
1549
+ # @return [String]
1550
+ attr_accessor :location
1551
+
1552
+ def initialize(**args)
1553
+ update!(**args)
1554
+ end
1555
+
1556
+ # Update properties of this object
1557
+ def update!(**args)
1558
+ @location = args[:location] if args.key?(:location)
1559
+ end
1560
+ end
1561
+
1562
+ # GKE migration target.
1563
+ class GoogleKubernetesEngineMigrationTarget
1564
+ include Google::Apis::Core::Hashable
1565
+
1566
+ def initialize(**args)
1567
+ update!(**args)
1568
+ end
1569
+
1570
+ # Update properties of this object
1571
+ def update!(**args)
1572
+ end
1573
+ end
1574
+
1575
+ # A resource that represents an asset group. The purpose of an asset group is to
1576
+ # bundle a set of assets that have something in common, while allowing users to
1577
+ # add annotations to the group. An asset can belong to multiple groups.
1578
+ class Group
1579
+ include Google::Apis::Core::Hashable
1580
+
1581
+ # Output only. The timestamp when the group was created.
1582
+ # Corresponds to the JSON property `createTime`
1583
+ # @return [String]
1584
+ attr_accessor :create_time
1585
+
1586
+ # The description of the resource.
1587
+ # Corresponds to the JSON property `description`
1588
+ # @return [String]
1589
+ attr_accessor :description
1590
+
1591
+ # User-friendly display name.
1592
+ # Corresponds to the JSON property `displayName`
1593
+ # @return [String]
1594
+ attr_accessor :display_name
1595
+
1596
+ # Labels as key value pairs.
1597
+ # Corresponds to the JSON property `labels`
1598
+ # @return [Hash<String,String>]
1599
+ attr_accessor :labels
1600
+
1601
+ # Output only. The name of the group.
1602
+ # Corresponds to the JSON property `name`
1603
+ # @return [String]
1604
+ attr_accessor :name
1605
+
1606
+ # Output only. The timestamp when the group was last updated.
1607
+ # Corresponds to the JSON property `updateTime`
1608
+ # @return [String]
1609
+ attr_accessor :update_time
1610
+
1611
+ def initialize(**args)
1612
+ update!(**args)
1613
+ end
1614
+
1615
+ # Update properties of this object
1616
+ def update!(**args)
1617
+ @create_time = args[:create_time] if args.key?(:create_time)
1618
+ @description = args[:description] if args.key?(:description)
1619
+ @display_name = args[:display_name] if args.key?(:display_name)
1620
+ @labels = args[:labels] if args.key?(:labels)
1621
+ @name = args[:name] if args.key?(:name)
1622
+ @update_time = args[:update_time] if args.key?(:update_time)
1623
+ end
1624
+ end
1625
+
1068
1626
  # Guest OS config information.
1069
1627
  class GuestConfigDetails
1070
1628
  include Google::Apis::Core::Hashable
@@ -1112,7 +1670,7 @@ module Google
1112
1670
  class GuestInstalledApplication
1113
1671
  include Google::Apis::Core::Hashable
1114
1672
 
1115
- # Installed application name .
1673
+ # Installed application name.
1116
1674
  # Corresponds to the JSON property `name`
1117
1675
  # @return [String]
1118
1676
  attr_accessor :name
@@ -1155,7 +1713,7 @@ module Google
1155
1713
  class GuestInstalledApplicationList
1156
1714
  include Google::Apis::Core::Hashable
1157
1715
 
1158
- #
1716
+ # Application entries.
1159
1717
  # Corresponds to the JSON property `entries`
1160
1718
  # @return [Array<Google::Apis::MigrationcenterV1alpha1::GuestInstalledApplication>]
1161
1719
  attr_accessor :entries
@@ -1307,6 +1865,55 @@ module Google
1307
1865
  end
1308
1866
  end
1309
1867
 
1868
+ # A resource that represents a payload file in an import job.
1869
+ class ImportDataFile
1870
+ include Google::Apis::Core::Hashable
1871
+
1872
+ # Output only. The timestamp when the file was created.
1873
+ # Corresponds to the JSON property `createTime`
1874
+ # @return [String]
1875
+ attr_accessor :create_time
1876
+
1877
+ # User-friendly display name. Maximum length is 63 characters.
1878
+ # Corresponds to the JSON property `displayName`
1879
+ # @return [String]
1880
+ attr_accessor :display_name
1881
+
1882
+ # The payload format.
1883
+ # Corresponds to the JSON property `format`
1884
+ # @return [String]
1885
+ attr_accessor :format
1886
+
1887
+ # Output only. The name of the file.
1888
+ # Corresponds to the JSON property `name`
1889
+ # @return [String]
1890
+ attr_accessor :name
1891
+
1892
+ # Output only. The state of the import data file.
1893
+ # Corresponds to the JSON property `state`
1894
+ # @return [String]
1895
+ attr_accessor :state
1896
+
1897
+ # A resource that contains a URI to which a data file can be uploaded.
1898
+ # Corresponds to the JSON property `uploadFileInfo`
1899
+ # @return [Google::Apis::MigrationcenterV1alpha1::UploadFileInfo]
1900
+ attr_accessor :upload_file_info
1901
+
1902
+ def initialize(**args)
1903
+ update!(**args)
1904
+ end
1905
+
1906
+ # Update properties of this object
1907
+ def update!(**args)
1908
+ @create_time = args[:create_time] if args.key?(:create_time)
1909
+ @display_name = args[:display_name] if args.key?(:display_name)
1910
+ @format = args[:format] if args.key?(:format)
1911
+ @name = args[:name] if args.key?(:name)
1912
+ @state = args[:state] if args.key?(:state)
1913
+ @upload_file_info = args[:upload_file_info] if args.key?(:upload_file_info)
1914
+ end
1915
+ end
1916
+
1310
1917
  # A resource that reports the errors encountered while processing an import job.
1311
1918
  class ImportError
1312
1919
  include Google::Apis::Core::Hashable
@@ -1351,6 +1958,11 @@ module Google
1351
1958
  # @return [String]
1352
1959
  attr_accessor :create_time
1353
1960
 
1961
+ # User-friendly display name. Maximum length is 63 characters.
1962
+ # Corresponds to the JSON property `displayName`
1963
+ # @return [String]
1964
+ attr_accessor :display_name
1965
+
1354
1966
  # A resource that reports result of the import job execution.
1355
1967
  # Corresponds to the JSON property `executionReport`
1356
1968
  # @return [Google::Apis::MigrationcenterV1alpha1::ExecutionReport]
@@ -1400,6 +2012,7 @@ module Google
1400
2012
  @asset_source = args[:asset_source] if args.key?(:asset_source)
1401
2013
  @complete_time = args[:complete_time] if args.key?(:complete_time)
1402
2014
  @create_time = args[:create_time] if args.key?(:create_time)
2015
+ @display_name = args[:display_name] if args.key?(:display_name)
1403
2016
  @execution_report = args[:execution_report] if args.key?(:execution_report)
1404
2017
  @gcs_payload = args[:gcs_payload] if args.key?(:gcs_payload)
1405
2018
  @inline_payload = args[:inline_payload] if args.key?(:inline_payload)
@@ -1473,16 +2086,123 @@ module Google
1473
2086
  end
1474
2087
  end
1475
2088
 
1476
- # Response message for listing assets.
1477
- class ListAssetsResponse
2089
+ # An insight about an asset.
2090
+ class Insight
2091
+ include Google::Apis::Core::Hashable
2092
+
2093
+ # An insight about potential migrations for an asset.
2094
+ # Corresponds to the JSON property `migrationInsight`
2095
+ # @return [Google::Apis::MigrationcenterV1alpha1::MigrationInsight]
2096
+ attr_accessor :migration_insight
2097
+
2098
+ def initialize(**args)
2099
+ update!(**args)
2100
+ end
2101
+
2102
+ # Update properties of this object
2103
+ def update!(**args)
2104
+ @migration_insight = args[:migration_insight] if args.key?(:migration_insight)
2105
+ end
2106
+ end
2107
+
2108
+ # Message containing insights list.
2109
+ class InsightList
2110
+ include Google::Apis::Core::Hashable
2111
+
2112
+ # Output only. Insights of the list.
2113
+ # Corresponds to the JSON property `insights`
2114
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Insight>]
2115
+ attr_accessor :insights
2116
+
2117
+ # Output only. Update timestamp.
2118
+ # Corresponds to the JSON property `updateTime`
2119
+ # @return [String]
2120
+ attr_accessor :update_time
2121
+
2122
+ def initialize(**args)
2123
+ update!(**args)
2124
+ end
2125
+
2126
+ # Update properties of this object
2127
+ def update!(**args)
2128
+ @insights = args[:insights] if args.key?(:insights)
2129
+ @update_time = args[:update_time] if args.key?(:update_time)
2130
+ end
2131
+ end
2132
+
2133
+ # Response message for listing assets.
2134
+ class ListAssetsResponse
2135
+ include Google::Apis::Core::Hashable
2136
+
2137
+ # A list of assets.
2138
+ # Corresponds to the JSON property `assets`
2139
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Asset>]
2140
+ attr_accessor :assets
2141
+
2142
+ # A token identifying a page of results the server should return.
2143
+ # Corresponds to the JSON property `nextPageToken`
2144
+ # @return [String]
2145
+ attr_accessor :next_page_token
2146
+
2147
+ # Locations that could not be reached.
2148
+ # Corresponds to the JSON property `unreachable`
2149
+ # @return [Array<String>]
2150
+ attr_accessor :unreachable
2151
+
2152
+ def initialize(**args)
2153
+ update!(**args)
2154
+ end
2155
+
2156
+ # Update properties of this object
2157
+ def update!(**args)
2158
+ @assets = args[:assets] if args.key?(:assets)
2159
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2160
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
2161
+ end
2162
+ end
2163
+
2164
+ # A response for listing groups.
2165
+ class ListGroupsResponse
2166
+ include Google::Apis::Core::Hashable
2167
+
2168
+ # The list of Group
2169
+ # Corresponds to the JSON property `groups`
2170
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Group>]
2171
+ attr_accessor :groups
2172
+
2173
+ # A token identifying a page of results the server should return.
2174
+ # Corresponds to the JSON property `nextPageToken`
2175
+ # @return [String]
2176
+ attr_accessor :next_page_token
2177
+
2178
+ # Locations that could not be reached.
2179
+ # Corresponds to the JSON property `unreachable`
2180
+ # @return [Array<String>]
2181
+ attr_accessor :unreachable
2182
+
2183
+ def initialize(**args)
2184
+ update!(**args)
2185
+ end
2186
+
2187
+ # Update properties of this object
2188
+ def update!(**args)
2189
+ @groups = args[:groups] if args.key?(:groups)
2190
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2191
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
2192
+ end
2193
+ end
2194
+
2195
+ # Response for listing payload files of an import job.
2196
+ class ListImportDataFilesResponse
1478
2197
  include Google::Apis::Core::Hashable
1479
2198
 
1480
- # A list of assets.
1481
- # Corresponds to the JSON property `assets`
1482
- # @return [Array<Google::Apis::MigrationcenterV1alpha1::Asset>]
1483
- attr_accessor :assets
2199
+ # The list of import data files.
2200
+ # Corresponds to the JSON property `importDataFiles`
2201
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ImportDataFile>]
2202
+ attr_accessor :import_data_files
1484
2203
 
1485
- # A token identifying a page of results the server should return.
2204
+ # A token that can be sent as `page_token` to retrieve the next page. If this
2205
+ # field is omitted, there are no subsequent pages.
1486
2206
  # Corresponds to the JSON property `nextPageToken`
1487
2207
  # @return [String]
1488
2208
  attr_accessor :next_page_token
@@ -1498,7 +2218,7 @@ module Google
1498
2218
 
1499
2219
  # Update properties of this object
1500
2220
  def update!(**args)
1501
- @assets = args[:assets] if args.key?(:assets)
2221
+ @import_data_files = args[:import_data_files] if args.key?(:import_data_files)
1502
2222
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1503
2223
  @unreachable = args[:unreachable] if args.key?(:unreachable)
1504
2224
  end
@@ -1585,6 +2305,37 @@ module Google
1585
2305
  end
1586
2306
  end
1587
2307
 
2308
+ # Response message for listing preference sets.
2309
+ class ListPreferenceSetsResponse
2310
+ include Google::Apis::Core::Hashable
2311
+
2312
+ # A token identifying a page of results the server should return.
2313
+ # Corresponds to the JSON property `nextPageToken`
2314
+ # @return [String]
2315
+ attr_accessor :next_page_token
2316
+
2317
+ # The list of PreferenceSets
2318
+ # Corresponds to the JSON property `preferenceSets`
2319
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::PreferenceSet>]
2320
+ attr_accessor :preference_sets
2321
+
2322
+ # Locations that could not be reached.
2323
+ # Corresponds to the JSON property `unreachable`
2324
+ # @return [Array<String>]
2325
+ attr_accessor :unreachable
2326
+
2327
+ def initialize(**args)
2328
+ update!(**args)
2329
+ end
2330
+
2331
+ # Update properties of this object
2332
+ def update!(**args)
2333
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2334
+ @preference_sets = args[:preference_sets] if args.key?(:preference_sets)
2335
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
2336
+ end
2337
+ end
2338
+
1588
2339
  # Response message for listing sources.
1589
2340
  class ListSourcesResponse
1590
2341
  include Google::Apis::Core::Hashable
@@ -1663,6 +2414,49 @@ module Google
1663
2414
  end
1664
2415
  end
1665
2416
 
2417
+ # The type of machines to consider when calculating virtual machine migration
2418
+ # insights and recommendations. Not all machine types are available in all zones
2419
+ # and regions.
2420
+ class MachinePreferences
2421
+ include Google::Apis::Core::Hashable
2422
+
2423
+ # Compute Engine machine series to consider for insights and recommendations. If
2424
+ # empty, no restriction is applied on the machine series.
2425
+ # Corresponds to the JSON property `allowedMachineSeries`
2426
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::MachineSeries>]
2427
+ attr_accessor :allowed_machine_series
2428
+
2429
+ def initialize(**args)
2430
+ update!(**args)
2431
+ end
2432
+
2433
+ # Update properties of this object
2434
+ def update!(**args)
2435
+ @allowed_machine_series = args[:allowed_machine_series] if args.key?(:allowed_machine_series)
2436
+ end
2437
+ end
2438
+
2439
+ # A Compute Engine machine series.
2440
+ class MachineSeries
2441
+ include Google::Apis::Core::Hashable
2442
+
2443
+ # Code to identify a Compute Engine machine series. Consult https://cloud.google.
2444
+ # com/compute/docs/machine-resource#machine_type_comparison for more details on
2445
+ # the available series.
2446
+ # Corresponds to the JSON property `code`
2447
+ # @return [String]
2448
+ attr_accessor :code
2449
+
2450
+ def initialize(**args)
2451
+ update!(**args)
2452
+ end
2453
+
2454
+ # Update properties of this object
2455
+ def update!(**args)
2456
+ @code = args[:code] if args.key?(:code)
2457
+ end
2458
+ end
2459
+
1666
2460
  # Memory usage sample.
1667
2461
  class MemoryUsageSample
1668
2462
  include Google::Apis::Core::Hashable
@@ -1682,6 +2476,43 @@ module Google
1682
2476
  end
1683
2477
  end
1684
2478
 
2479
+ # An insight about potential migrations for an asset.
2480
+ class MigrationInsight
2481
+ include Google::Apis::Core::Hashable
2482
+
2483
+ # Compute engine migration target.
2484
+ # Corresponds to the JSON property `computeEngineTarget`
2485
+ # @return [Google::Apis::MigrationcenterV1alpha1::ComputeEngineMigrationTarget]
2486
+ attr_accessor :compute_engine_target
2487
+
2488
+ # Describes the fit level of an asset for migration to a specific target.
2489
+ # Corresponds to the JSON property `fit`
2490
+ # @return [Google::Apis::MigrationcenterV1alpha1::FitDescriptor]
2491
+ attr_accessor :fit
2492
+
2493
+ # GKE migration target.
2494
+ # Corresponds to the JSON property `gkeTarget`
2495
+ # @return [Google::Apis::MigrationcenterV1alpha1::GoogleKubernetesEngineMigrationTarget]
2496
+ attr_accessor :gke_target
2497
+
2498
+ # VMWare engine migration target.
2499
+ # Corresponds to the JSON property `vmwareEngineTarget`
2500
+ # @return [Google::Apis::MigrationcenterV1alpha1::VmwareEngineMigrationTarget]
2501
+ attr_accessor :vmware_engine_target
2502
+
2503
+ def initialize(**args)
2504
+ update!(**args)
2505
+ end
2506
+
2507
+ # Update properties of this object
2508
+ def update!(**args)
2509
+ @compute_engine_target = args[:compute_engine_target] if args.key?(:compute_engine_target)
2510
+ @fit = args[:fit] if args.key?(:fit)
2511
+ @gke_target = args[:gke_target] if args.key?(:gke_target)
2512
+ @vmware_engine_target = args[:vmware_engine_target] if args.key?(:vmware_engine_target)
2513
+ end
2514
+ end
2515
+
1685
2516
  # Details of network adapter.
1686
2517
  class NetworkAdapterDetails
1687
2518
  include Google::Apis::Core::Hashable
@@ -1713,11 +2544,11 @@ module Google
1713
2544
  end
1714
2545
  end
1715
2546
 
1716
- #
2547
+ # List of network adapters.
1717
2548
  class NetworkAdapterList
1718
2549
  include Google::Apis::Core::Hashable
1719
2550
 
1720
- # Network Adapter descriptions.
2551
+ # Network adapter descriptions.
1721
2552
  # Corresponds to the JSON property `networkAdapters`
1722
2553
  # @return [Array<Google::Apis::MigrationcenterV1alpha1::NetworkAdapterDetails>]
1723
2554
  attr_accessor :network_adapters
@@ -1736,7 +2567,7 @@ module Google
1736
2567
  class NetworkAddress
1737
2568
  include Google::Apis::Core::Hashable
1738
2569
 
1739
- # If DHCP is used to assign addresses.
2570
+ # Whether DHCP is used to assign addresses.
1740
2571
  # Corresponds to the JSON property `assignment`
1741
2572
  # @return [String]
1742
2573
  attr_accessor :assignment
@@ -1779,7 +2610,7 @@ module Google
1779
2610
  class NetworkAddressList
1780
2611
  include Google::Apis::Core::Hashable
1781
2612
 
1782
- #
2613
+ # Network address entries.
1783
2614
  # Corresponds to the JSON property `addresses`
1784
2615
  # @return [Array<Google::Apis::MigrationcenterV1alpha1::NetworkAddress>]
1785
2616
  attr_accessor :addresses
@@ -1859,7 +2690,7 @@ module Google
1859
2690
  class NetworkConnectionList
1860
2691
  include Google::Apis::Core::Hashable
1861
2692
 
1862
- #
2693
+ # Network connection entries.
1863
2694
  # Corresponds to the JSON property `entries`
1864
2695
  # @return [Array<Google::Apis::MigrationcenterV1alpha1::NetworkConnection>]
1865
2696
  attr_accessor :entries
@@ -2191,10 +3022,51 @@ module Google
2191
3022
  end
2192
3023
  end
2193
3024
 
3025
+ # Platform specific details for Physical Machines.
3026
+ class PhysicalPlatformDetails
3027
+ include Google::Apis::Core::Hashable
3028
+
3029
+ # Free text representation of the machine location. The format of this field
3030
+ # should not be relied on. Different machines in the same location may have
3031
+ # different string values for this field.
3032
+ # Corresponds to the JSON property `location`
3033
+ # @return [String]
3034
+ attr_accessor :location
3035
+
3036
+ def initialize(**args)
3037
+ update!(**args)
3038
+ end
3039
+
3040
+ # Update properties of this object
3041
+ def update!(**args)
3042
+ @location = args[:location] if args.key?(:location)
3043
+ end
3044
+ end
3045
+
2194
3046
  # Information about the platform.
2195
3047
  class PlatformDetails
2196
3048
  include Google::Apis::Core::Hashable
2197
3049
 
3050
+ # AWS EC2 specific details.
3051
+ # Corresponds to the JSON property `awsEc2Details`
3052
+ # @return [Google::Apis::MigrationcenterV1alpha1::AwsEc2PlatformDetails]
3053
+ attr_accessor :aws_ec2_details
3054
+
3055
+ # Azure VM specific details.
3056
+ # Corresponds to the JSON property `azureVmDetails`
3057
+ # @return [Google::Apis::MigrationcenterV1alpha1::AzureVmPlatformDetails]
3058
+ attr_accessor :azure_vm_details
3059
+
3060
+ # Generic platform details.
3061
+ # Corresponds to the JSON property `genericDetails`
3062
+ # @return [Google::Apis::MigrationcenterV1alpha1::GenericPlatformDetails]
3063
+ attr_accessor :generic_details
3064
+
3065
+ # Platform specific details for Physical Machines.
3066
+ # Corresponds to the JSON property `physicalDetails`
3067
+ # @return [Google::Apis::MigrationcenterV1alpha1::PhysicalPlatformDetails]
3068
+ attr_accessor :physical_details
3069
+
2198
3070
  # VMware specific details.
2199
3071
  # Corresponds to the JSON property `vmwareDetails`
2200
3072
  # @return [Google::Apis::MigrationcenterV1alpha1::VmwarePlatformDetails]
@@ -2206,10 +3078,131 @@ module Google
2206
3078
 
2207
3079
  # Update properties of this object
2208
3080
  def update!(**args)
3081
+ @aws_ec2_details = args[:aws_ec2_details] if args.key?(:aws_ec2_details)
3082
+ @azure_vm_details = args[:azure_vm_details] if args.key?(:azure_vm_details)
3083
+ @generic_details = args[:generic_details] if args.key?(:generic_details)
3084
+ @physical_details = args[:physical_details] if args.key?(:physical_details)
2209
3085
  @vmware_details = args[:vmware_details] if args.key?(:vmware_details)
2210
3086
  end
2211
3087
  end
2212
3088
 
3089
+ # The preferences that apply to all assets in a given context.
3090
+ class PreferenceSet
3091
+ include Google::Apis::Core::Hashable
3092
+
3093
+ # Output only. The timestamp when the preference set was created.
3094
+ # Corresponds to the JSON property `createTime`
3095
+ # @return [String]
3096
+ attr_accessor :create_time
3097
+
3098
+ # A description of the preference set.
3099
+ # Corresponds to the JSON property `description`
3100
+ # @return [String]
3101
+ attr_accessor :description
3102
+
3103
+ # User-friendly display name. Maximum length is 63 characters.
3104
+ # Corresponds to the JSON property `displayName`
3105
+ # @return [String]
3106
+ attr_accessor :display_name
3107
+
3108
+ # Output only. Name of the preference set.
3109
+ # Corresponds to the JSON property `name`
3110
+ # @return [String]
3111
+ attr_accessor :name
3112
+
3113
+ # Output only. The timestamp when the preference set was last updated.
3114
+ # Corresponds to the JSON property `updateTime`
3115
+ # @return [String]
3116
+ attr_accessor :update_time
3117
+
3118
+ # VirtualMachinePreferences enables you to create sets of assumptions, for
3119
+ # example, a geographical location and pricing track, for your migrated virtual
3120
+ # machines. The set of preferences influence recommendations for migrating
3121
+ # virtual machine assets.
3122
+ # Corresponds to the JSON property `virtualMachinePreferences`
3123
+ # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachinePreferences]
3124
+ attr_accessor :virtual_machine_preferences
3125
+
3126
+ def initialize(**args)
3127
+ update!(**args)
3128
+ end
3129
+
3130
+ # Update properties of this object
3131
+ def update!(**args)
3132
+ @create_time = args[:create_time] if args.key?(:create_time)
3133
+ @description = args[:description] if args.key?(:description)
3134
+ @display_name = args[:display_name] if args.key?(:display_name)
3135
+ @name = args[:name] if args.key?(:name)
3136
+ @update_time = args[:update_time] if args.key?(:update_time)
3137
+ @virtual_machine_preferences = args[:virtual_machine_preferences] if args.key?(:virtual_machine_preferences)
3138
+ end
3139
+ end
3140
+
3141
+ # The user preferences relating to target regions.
3142
+ class RegionPreferences
3143
+ include Google::Apis::Core::Hashable
3144
+
3145
+ # A list of preferred regions, ordered by the most preferred region first. Set
3146
+ # only valid Google Cloud region names. See https://cloud.google.com/compute/
3147
+ # docs/regions-zones for available regions.
3148
+ # Corresponds to the JSON property `preferredRegions`
3149
+ # @return [Array<String>]
3150
+ attr_accessor :preferred_regions
3151
+
3152
+ def initialize(**args)
3153
+ update!(**args)
3154
+ end
3155
+
3156
+ # Update properties of this object
3157
+ def update!(**args)
3158
+ @preferred_regions = args[:preferred_regions] if args.key?(:preferred_regions)
3159
+ end
3160
+ end
3161
+
3162
+ # A request to remove assets from a group.
3163
+ class RemoveAssetsFromGroupRequest
3164
+ include Google::Apis::Core::Hashable
3165
+
3166
+ # Optional. When this value is set to `false` and one of the given assets is not
3167
+ # an existing member of the group, the operation fails with a `Not Found` error.
3168
+ # When set to `true` this situation is silently ignored by the server. Default
3169
+ # value is `false`.
3170
+ # Corresponds to the JSON property `allowMissing`
3171
+ # @return [Boolean]
3172
+ attr_accessor :allow_missing
3173
+ alias_method :allow_missing?, :allow_missing
3174
+
3175
+ # Lists the asset IDs of all assets.
3176
+ # Corresponds to the JSON property `assets`
3177
+ # @return [Google::Apis::MigrationcenterV1alpha1::AssetList]
3178
+ attr_accessor :assets
3179
+
3180
+ # Optional. An optional request ID to identify requests. Specify a unique
3181
+ # request ID so that if you must retry your request, the server will know to
3182
+ # ignore the request if it has already been completed. The server will guarantee
3183
+ # that for at least 60 minutes after the first request. For example, consider a
3184
+ # situation where you make an initial request and the request times out. If you
3185
+ # make the request again with the same request ID, the server can check if
3186
+ # original operation with the same request ID was received, and if so, will
3187
+ # ignore the second request. This prevents clients from accidentally creating
3188
+ # duplicate commitments. The request ID must be a valid UUID with the exception
3189
+ # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
3190
+ # Corresponds to the JSON property `requestId`
3191
+ # @return [String]
3192
+ attr_accessor :request_id
3193
+
3194
+ def initialize(**args)
3195
+ update!(**args)
3196
+ end
3197
+
3198
+ # Update properties of this object
3199
+ def update!(**args)
3200
+ @allow_missing = args[:allow_missing] if args.key?(:allow_missing)
3201
+ @assets = args[:assets] if args.key?(:assets)
3202
+ @request_id = args[:request_id] if args.key?(:request_id)
3203
+ end
3204
+ end
3205
+
2213
3206
  # A response to a call to `ReportAssetFrame`.
2214
3207
  class ReportAssetFramesResponse
2215
3208
  include Google::Apis::Core::Hashable
@@ -2298,7 +3291,7 @@ module Google
2298
3291
  class RunningProcessList
2299
3292
  include Google::Apis::Core::Hashable
2300
3293
 
2301
- #
3294
+ # Running process entries.
2302
3295
  # Corresponds to the JSON property `processes`
2303
3296
  # @return [Array<Google::Apis::MigrationcenterV1alpha1::RunningProcess>]
2304
3297
  attr_accessor :processes
@@ -2372,7 +3365,7 @@ module Google
2372
3365
  class RunningServiceList
2373
3366
  include Google::Apis::Core::Hashable
2374
3367
 
2375
- #
3368
+ # Running service entries.
2376
3369
  # Corresponds to the JSON property `services`
2377
3370
  # @return [Array<Google::Apis::MigrationcenterV1alpha1::RunningService>]
2378
3371
  attr_accessor :services
@@ -2457,6 +3450,31 @@ module Google
2457
3450
  end
2458
3451
  end
2459
3452
 
3453
+ # Describes the Migration Center settings related to the project.
3454
+ class Settings
3455
+ include Google::Apis::Core::Hashable
3456
+
3457
+ # Output only. The name of the resource.
3458
+ # Corresponds to the JSON property `name`
3459
+ # @return [String]
3460
+ attr_accessor :name
3461
+
3462
+ # The preference set used by default for a project.
3463
+ # Corresponds to the JSON property `preferenceSet`
3464
+ # @return [String]
3465
+ attr_accessor :preference_set
3466
+
3467
+ def initialize(**args)
3468
+ update!(**args)
3469
+ end
3470
+
3471
+ # Update properties of this object
3472
+ def update!(**args)
3473
+ @name = args[:name] if args.key?(:name)
3474
+ @preference_set = args[:preference_set] if args.key?(:preference_set)
3475
+ end
3476
+ end
3477
+
2460
3478
  # Source represents an object from which asset information is streamed to
2461
3479
  # Migration Center.
2462
3480
  class Source
@@ -2637,6 +3655,43 @@ module Google
2637
3655
  end
2638
3656
  end
2639
3657
 
3658
+ # A resource that contains a URI to which a data file can be uploaded.
3659
+ class UploadFileInfo
3660
+ include Google::Apis::Core::Hashable
3661
+
3662
+ # Output only. The headers that were used to sign the URL.
3663
+ # Corresponds to the JSON property `headers`
3664
+ # @return [Hash<String,String>]
3665
+ attr_accessor :headers
3666
+
3667
+ # Output only. Upload URI for the file.
3668
+ # Corresponds to the JSON property `signedUri`
3669
+ # @return [String]
3670
+ attr_accessor :signed_uri
3671
+
3672
+ # Output only. Upload URI for the file.
3673
+ # Corresponds to the JSON property `uri`
3674
+ # @return [String]
3675
+ attr_accessor :uri
3676
+
3677
+ # Output only. Expiration time of the upload URI.
3678
+ # Corresponds to the JSON property `uriExpirationTime`
3679
+ # @return [String]
3680
+ attr_accessor :uri_expiration_time
3681
+
3682
+ def initialize(**args)
3683
+ update!(**args)
3684
+ end
3685
+
3686
+ # Update properties of this object
3687
+ def update!(**args)
3688
+ @headers = args[:headers] if args.key?(:headers)
3689
+ @signed_uri = args[:signed_uri] if args.key?(:signed_uri)
3690
+ @uri = args[:uri] if args.key?(:uri)
3691
+ @uri_expiration_time = args[:uri_expiration_time] if args.key?(:uri_expiration_time)
3692
+ end
3693
+ end
3694
+
2640
3695
  # A request to validate an import job.
2641
3696
  class ValidateImportJobRequest
2642
3697
  include Google::Apis::Core::Hashable
@@ -2694,22 +3749,22 @@ module Google
2694
3749
  class VirtualMachineArchitectureDetails
2695
3750
  include Google::Apis::Core::Hashable
2696
3751
 
2697
- # Details about the bios.
3752
+ # Details about the BIOS.
2698
3753
  # Corresponds to the JSON property `bios`
2699
3754
  # @return [Google::Apis::MigrationcenterV1alpha1::BiosDetails]
2700
3755
  attr_accessor :bios
2701
3756
 
2702
- # CPU architecture e.g.: "x64-based PC", "x86_64", "i686" etc.
3757
+ # CPU architecture, e.g., "x64-based PC", "x86_64", "i686" etc.
2703
3758
  # Corresponds to the JSON property `cpuArchitecture`
2704
3759
  # @return [String]
2705
3760
  attr_accessor :cpu_architecture
2706
3761
 
2707
- # CPU manufacturer e.g.: "Intel", "AMD".
3762
+ # CPU manufacturer, e.g., "Intel", "AMD".
2708
3763
  # Corresponds to the JSON property `cpuManufacturer`
2709
3764
  # @return [String]
2710
3765
  attr_accessor :cpu_manufacturer
2711
3766
 
2712
- # CPU name e.g. "Intel Xeon E5-2690", "AMD EPYC 7571" etc.
3767
+ # CPU name, e.g., "Intel Xeon E5-2690", "AMD EPYC 7571" etc.
2713
3768
  # Corresponds to the JSON property `cpuName`
2714
3769
  # @return [String]
2715
3770
  attr_accessor :cpu_name
@@ -2719,7 +3774,7 @@ module Google
2719
3774
  # @return [Fixnum]
2720
3775
  attr_accessor :cpu_socket_count
2721
3776
 
2722
- # Number of cpu threads allocated to the machine.
3777
+ # Number of CPU threads allocated to the machine.
2723
3778
  # Corresponds to the JSON property `cpuThreadCount`
2724
3779
  # @return [Fixnum]
2725
3780
  attr_accessor :cpu_thread_count
@@ -2729,7 +3784,7 @@ module Google
2729
3784
  # @return [String]
2730
3785
  attr_accessor :firmware
2731
3786
 
2732
- # CPU hyperthreading support (inner enum).
3787
+ # CPU hyperthreading support.
2733
3788
  # Corresponds to the JSON property `hyperthreading`
2734
3789
  # @return [String]
2735
3790
  attr_accessor :hyperthreading
@@ -2766,6 +3821,11 @@ module Google
2766
3821
  # @return [Fixnum]
2767
3822
  attr_accessor :core_count
2768
3823
 
3824
+ # VM creation timestamp.
3825
+ # Corresponds to the JSON property `createTime`
3826
+ # @return [String]
3827
+ attr_accessor :create_time
3828
+
2769
3829
  # Information from Guest-level collections.
2770
3830
  # Corresponds to the JSON property `guestOs`
2771
3831
  # @return [Google::Apis::MigrationcenterV1alpha1::GuestOsDetails]
@@ -2786,6 +3846,11 @@ module Google
2786
3846
  # @return [String]
2787
3847
  attr_accessor :os_name
2788
3848
 
3849
+ # The version of the operating system running on the virtual machine.
3850
+ # Corresponds to the JSON property `osVersion`
3851
+ # @return [String]
3852
+ attr_accessor :os_version
3853
+
2789
3854
  # Information about the platform.
2790
3855
  # Corresponds to the JSON property `platform`
2791
3856
  # @return [Google::Apis::MigrationcenterV1alpha1::PlatformDetails]
@@ -2826,12 +3891,12 @@ module Google
2826
3891
  # @return [String]
2827
3892
  attr_accessor :vm_name
2828
3893
 
2829
- # Details of network adapters and settings
3894
+ # Details of network adapters and settings.
2830
3895
  # Corresponds to the JSON property `vmNetwork`
2831
3896
  # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachineNetworkDetails]
2832
3897
  attr_accessor :vm_network
2833
3898
 
2834
- # Virtual Machine uniqe identifier.
3899
+ # Virtual Machine unique identifier.
2835
3900
  # Corresponds to the JSON property `vmUuid`
2836
3901
  # @return [String]
2837
3902
  attr_accessor :vm_uuid
@@ -2843,10 +3908,12 @@ module Google
2843
3908
  # Update properties of this object
2844
3909
  def update!(**args)
2845
3910
  @core_count = args[:core_count] if args.key?(:core_count)
3911
+ @create_time = args[:create_time] if args.key?(:create_time)
2846
3912
  @guest_os = args[:guest_os] if args.key?(:guest_os)
2847
3913
  @memory_mb = args[:memory_mb] if args.key?(:memory_mb)
2848
3914
  @os_family = args[:os_family] if args.key?(:os_family)
2849
3915
  @os_name = args[:os_name] if args.key?(:os_name)
3916
+ @os_version = args[:os_version] if args.key?(:os_version)
2850
3917
  @platform = args[:platform] if args.key?(:platform)
2851
3918
  @power_state = args[:power_state] if args.key?(:power_state)
2852
3919
  @vcenter_folder = args[:vcenter_folder] if args.key?(:vcenter_folder)
@@ -2897,32 +3964,36 @@ module Google
2897
3964
  end
2898
3965
  end
2899
3966
 
2900
- # Details of network adapters and settings
3967
+ # Details of network adapters and settings.
2901
3968
  class VirtualMachineNetworkDetails
2902
3969
  include Google::Apis::Core::Hashable
2903
3970
 
2904
- # Default GW address. Top-level object, will be later encriched by full
2905
- # RouteInfo.
3971
+ # Default gateway address.
2906
3972
  # Corresponds to the JSON property `defaultGw`
2907
3973
  # @return [String]
2908
3974
  attr_accessor :default_gw
2909
3975
 
2910
- # List of Network Adapters.
3976
+ # List of network adapters.
2911
3977
  # Corresponds to the JSON property `networkAdapters`
2912
3978
  # @return [Google::Apis::MigrationcenterV1alpha1::NetworkAdapterList]
2913
3979
  attr_accessor :network_adapters
2914
3980
 
2915
- # IP Address of the machine.
3981
+ # IP address of the machine.
2916
3982
  # Corresponds to the JSON property `primaryIpAddress`
2917
3983
  # @return [String]
2918
3984
  attr_accessor :primary_ip_address
2919
3985
 
2920
- # MAC Address of the machine. This property is used to uniqly identify the
3986
+ # MAC address of the machine. This property is used to uniqly identify the
2921
3987
  # machine.
2922
3988
  # Corresponds to the JSON property `primaryMacAddress`
2923
3989
  # @return [String]
2924
3990
  attr_accessor :primary_mac_address
2925
3991
 
3992
+ # Public IP address of the machine.
3993
+ # Corresponds to the JSON property `publicIpAddress`
3994
+ # @return [String]
3995
+ attr_accessor :public_ip_address
3996
+
2926
3997
  def initialize(**args)
2927
3998
  update!(**args)
2928
3999
  end
@@ -2933,6 +4004,52 @@ module Google
2933
4004
  @network_adapters = args[:network_adapters] if args.key?(:network_adapters)
2934
4005
  @primary_ip_address = args[:primary_ip_address] if args.key?(:primary_ip_address)
2935
4006
  @primary_mac_address = args[:primary_mac_address] if args.key?(:primary_mac_address)
4007
+ @public_ip_address = args[:public_ip_address] if args.key?(:public_ip_address)
4008
+ end
4009
+ end
4010
+
4011
+ # VirtualMachinePreferences enables you to create sets of assumptions, for
4012
+ # example, a geographical location and pricing track, for your migrated virtual
4013
+ # machines. The set of preferences influence recommendations for migrating
4014
+ # virtual machine assets.
4015
+ class VirtualMachinePreferences
4016
+ include Google::Apis::Core::Hashable
4017
+
4018
+ # Commitment plan to consider when calculating costs for virtual machine
4019
+ # insights and recommendations. If you are unsure which value to set, a 3 year
4020
+ # commitment plan is often a good value to start with.
4021
+ # Corresponds to the JSON property `commitmentPlan`
4022
+ # @return [String]
4023
+ attr_accessor :commitment_plan
4024
+
4025
+ # The user preferences relating to Compute Engine target platform.
4026
+ # Corresponds to the JSON property `computeEnginePreferences`
4027
+ # @return [Google::Apis::MigrationcenterV1alpha1::ComputeEnginePreferences]
4028
+ attr_accessor :compute_engine_preferences
4029
+
4030
+ # The user preferences relating to target regions.
4031
+ # Corresponds to the JSON property `regionPreferences`
4032
+ # @return [Google::Apis::MigrationcenterV1alpha1::RegionPreferences]
4033
+ attr_accessor :region_preferences
4034
+
4035
+ # Sizing optimization strategy specifies the preferred strategy used when
4036
+ # extrapolating usage data to calculate insights and recommendations for a
4037
+ # virtual machine. If you are unsure which value to set, a moderate sizing
4038
+ # optimization strategy is often a good value to start with.
4039
+ # Corresponds to the JSON property `sizingOptimizationStrategy`
4040
+ # @return [String]
4041
+ attr_accessor :sizing_optimization_strategy
4042
+
4043
+ def initialize(**args)
4044
+ update!(**args)
4045
+ end
4046
+
4047
+ # Update properties of this object
4048
+ def update!(**args)
4049
+ @commitment_plan = args[:commitment_plan] if args.key?(:commitment_plan)
4050
+ @compute_engine_preferences = args[:compute_engine_preferences] if args.key?(:compute_engine_preferences)
4051
+ @region_preferences = args[:region_preferences] if args.key?(:region_preferences)
4052
+ @sizing_optimization_strategy = args[:sizing_optimization_strategy] if args.key?(:sizing_optimization_strategy)
2936
4053
  end
2937
4054
  end
2938
4055
 
@@ -2974,6 +4091,19 @@ module Google
2974
4091
  end
2975
4092
  end
2976
4093
 
4094
+ # VMWare engine migration target.
4095
+ class VmwareEngineMigrationTarget
4096
+ include Google::Apis::Core::Hashable
4097
+
4098
+ def initialize(**args)
4099
+ update!(**args)
4100
+ end
4101
+
4102
+ # Update properties of this object
4103
+ def update!(**args)
4104
+ end
4105
+ end
4106
+
2977
4107
  # VMware specific details.
2978
4108
  class VmwarePlatformDetails
2979
4109
  include Google::Apis::Core::Hashable