google-apis-migrationcenter_v1alpha1 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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