google-apis-migrationcenter_v1alpha1 0.2.0 → 0.3.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.
@@ -2336,6 +2336,68 @@ module Google
2336
2336
  end
2337
2337
  end
2338
2338
 
2339
+ # Response message for listing report configs.
2340
+ class ListReportConfigsResponse
2341
+ include Google::Apis::Core::Hashable
2342
+
2343
+ # A token identifying a page of results the server should return.
2344
+ # Corresponds to the JSON property `nextPageToken`
2345
+ # @return [String]
2346
+ attr_accessor :next_page_token
2347
+
2348
+ # A list of report configs.
2349
+ # Corresponds to the JSON property `reportConfigs`
2350
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ReportConfig>]
2351
+ attr_accessor :report_configs
2352
+
2353
+ # Locations that could not be reached.
2354
+ # Corresponds to the JSON property `unreachable`
2355
+ # @return [Array<String>]
2356
+ attr_accessor :unreachable
2357
+
2358
+ def initialize(**args)
2359
+ update!(**args)
2360
+ end
2361
+
2362
+ # Update properties of this object
2363
+ def update!(**args)
2364
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2365
+ @report_configs = args[:report_configs] if args.key?(:report_configs)
2366
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
2367
+ end
2368
+ end
2369
+
2370
+ # Response message for listing Reports.
2371
+ class ListReportsResponse
2372
+ include Google::Apis::Core::Hashable
2373
+
2374
+ # A token identifying a page of results the server should return.
2375
+ # Corresponds to the JSON property `nextPageToken`
2376
+ # @return [String]
2377
+ attr_accessor :next_page_token
2378
+
2379
+ # The list of Reports.
2380
+ # Corresponds to the JSON property `reports`
2381
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::Report>]
2382
+ attr_accessor :reports
2383
+
2384
+ # Locations that could not be reached.
2385
+ # Corresponds to the JSON property `unreachable`
2386
+ # @return [Array<String>]
2387
+ attr_accessor :unreachable
2388
+
2389
+ def initialize(**args)
2390
+ update!(**args)
2391
+ end
2392
+
2393
+ # Update properties of this object
2394
+ def update!(**args)
2395
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2396
+ @reports = args[:reports] if args.key?(:reports)
2397
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
2398
+ end
2399
+ end
2400
+
2339
2401
  # Response message for listing sources.
2340
2402
  class ListSourcesResponse
2341
2403
  include Google::Apis::Core::Hashable
@@ -2513,6 +2575,42 @@ module Google
2513
2575
  end
2514
2576
  end
2515
2577
 
2578
+ # Represents an amount of money with its currency type.
2579
+ class Money
2580
+ include Google::Apis::Core::Hashable
2581
+
2582
+ # The three-letter currency code defined in ISO 4217.
2583
+ # Corresponds to the JSON property `currencyCode`
2584
+ # @return [String]
2585
+ attr_accessor :currency_code
2586
+
2587
+ # Number of nano (10^-9) units of the amount. The value must be between -999,999,
2588
+ # 999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be
2589
+ # positive or zero. If `units` is zero, `nanos` can be positive, zero, or
2590
+ # negative. If `units` is negative, `nanos` must be negative or zero. For
2591
+ # example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2592
+ # Corresponds to the JSON property `nanos`
2593
+ # @return [Fixnum]
2594
+ attr_accessor :nanos
2595
+
2596
+ # The whole units of the amount. For example if `currencyCode` is `"USD"`, then
2597
+ # 1 unit is one US dollar.
2598
+ # Corresponds to the JSON property `units`
2599
+ # @return [Fixnum]
2600
+ attr_accessor :units
2601
+
2602
+ def initialize(**args)
2603
+ update!(**args)
2604
+ end
2605
+
2606
+ # Update properties of this object
2607
+ def update!(**args)
2608
+ @currency_code = args[:currency_code] if args.key?(:currency_code)
2609
+ @nanos = args[:nanos] if args.key?(:nanos)
2610
+ @units = args[:units] if args.key?(:units)
2611
+ end
2612
+ end
2613
+
2516
2614
  # Details of network adapter.
2517
2615
  class NetworkAdapterDetails
2518
2616
  include Google::Apis::Core::Hashable
@@ -3203,6 +3301,68 @@ module Google
3203
3301
  end
3204
3302
  end
3205
3303
 
3304
+ # Report represents a point-in-time rendering of the ReportConfig results.
3305
+ class Report
3306
+ include Google::Apis::Core::Hashable
3307
+
3308
+ # Output only. Creation timestamp.
3309
+ # Corresponds to the JSON property `createTime`
3310
+ # @return [String]
3311
+ attr_accessor :create_time
3312
+
3313
+ # Free-text description.
3314
+ # Corresponds to the JSON property `description`
3315
+ # @return [String]
3316
+ attr_accessor :description
3317
+
3318
+ # User-friendly display name. Maximum length is 63 characters.
3319
+ # Corresponds to the JSON property `displayName`
3320
+ # @return [String]
3321
+ attr_accessor :display_name
3322
+
3323
+ # Output only. Name of resource.
3324
+ # Corresponds to the JSON property `name`
3325
+ # @return [String]
3326
+ attr_accessor :name
3327
+
3328
+ # Report creation state.
3329
+ # Corresponds to the JSON property `state`
3330
+ # @return [String]
3331
+ attr_accessor :state
3332
+
3333
+ # Describes the Summary view of a Report, which contains aggregated values for
3334
+ # all the groups and preference sets included in this Report.
3335
+ # Corresponds to the JSON property `summary`
3336
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummary]
3337
+ attr_accessor :summary
3338
+
3339
+ # Report type.
3340
+ # Corresponds to the JSON property `type`
3341
+ # @return [String]
3342
+ attr_accessor :type
3343
+
3344
+ # Output only. Last update timestamp.
3345
+ # Corresponds to the JSON property `updateTime`
3346
+ # @return [String]
3347
+ attr_accessor :update_time
3348
+
3349
+ def initialize(**args)
3350
+ update!(**args)
3351
+ end
3352
+
3353
+ # Update properties of this object
3354
+ def update!(**args)
3355
+ @create_time = args[:create_time] if args.key?(:create_time)
3356
+ @description = args[:description] if args.key?(:description)
3357
+ @display_name = args[:display_name] if args.key?(:display_name)
3358
+ @name = args[:name] if args.key?(:name)
3359
+ @state = args[:state] if args.key?(:state)
3360
+ @summary = args[:summary] if args.key?(:summary)
3361
+ @type = args[:type] if args.key?(:type)
3362
+ @update_time = args[:update_time] if args.key?(:update_time)
3363
+ end
3364
+ end
3365
+
3206
3366
  # A response to a call to `ReportAssetFrame`.
3207
3367
  class ReportAssetFramesResponse
3208
3368
  include Google::Apis::Core::Hashable
@@ -3216,6 +3376,531 @@ module Google
3216
3376
  end
3217
3377
  end
3218
3378
 
3379
+ # The groups and associated preference sets on which we can generate reports.
3380
+ class ReportConfig
3381
+ include Google::Apis::Core::Hashable
3382
+
3383
+ # Output only. The timestamp when the resource was created.
3384
+ # Corresponds to the JSON property `createTime`
3385
+ # @return [String]
3386
+ attr_accessor :create_time
3387
+
3388
+ # Free-text description.
3389
+ # Corresponds to the JSON property `description`
3390
+ # @return [String]
3391
+ attr_accessor :description
3392
+
3393
+ # User-friendly display name. Maximum length is 63 characters.
3394
+ # Corresponds to the JSON property `displayName`
3395
+ # @return [String]
3396
+ attr_accessor :display_name
3397
+
3398
+ # Collection of combinations of groups and preference sets.
3399
+ # Corresponds to the JSON property `groupPreferencesetAssignments`
3400
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ReportConfigGroupPreferenceSetAssignment>]
3401
+ attr_accessor :group_preferenceset_assignments
3402
+
3403
+ # Output only. Name of resource.
3404
+ # Corresponds to the JSON property `name`
3405
+ # @return [String]
3406
+ attr_accessor :name
3407
+
3408
+ # Output only. The timestamp when the resource was last updated.
3409
+ # Corresponds to the JSON property `updateTime`
3410
+ # @return [String]
3411
+ attr_accessor :update_time
3412
+
3413
+ def initialize(**args)
3414
+ update!(**args)
3415
+ end
3416
+
3417
+ # Update properties of this object
3418
+ def update!(**args)
3419
+ @create_time = args[:create_time] if args.key?(:create_time)
3420
+ @description = args[:description] if args.key?(:description)
3421
+ @display_name = args[:display_name] if args.key?(:display_name)
3422
+ @group_preferenceset_assignments = args[:group_preferenceset_assignments] if args.key?(:group_preferenceset_assignments)
3423
+ @name = args[:name] if args.key?(:name)
3424
+ @update_time = args[:update_time] if args.key?(:update_time)
3425
+ end
3426
+ end
3427
+
3428
+ # Represents a combination of a group with a preference set.
3429
+ class ReportConfigGroupPreferenceSetAssignment
3430
+ include Google::Apis::Core::Hashable
3431
+
3432
+ # Name of the group.
3433
+ # Corresponds to the JSON property `group`
3434
+ # @return [String]
3435
+ attr_accessor :group
3436
+
3437
+ # Name of the Preference Set.
3438
+ # Corresponds to the JSON property `preferenceSet`
3439
+ # @return [String]
3440
+ attr_accessor :preference_set
3441
+
3442
+ def initialize(**args)
3443
+ update!(**args)
3444
+ end
3445
+
3446
+ # Update properties of this object
3447
+ def update!(**args)
3448
+ @group = args[:group] if args.key?(:group)
3449
+ @preference_set = args[:preference_set] if args.key?(:preference_set)
3450
+ end
3451
+ end
3452
+
3453
+ # Describes the Summary view of a Report, which contains aggregated values for
3454
+ # all the groups and preference sets included in this Report.
3455
+ class ReportSummary
3456
+ include Google::Apis::Core::Hashable
3457
+
3458
+ # Aggregate statistics for a collection of assets.
3459
+ # Corresponds to the JSON property `allAssetsStats`
3460
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryAssetAggregateStats]
3461
+ attr_accessor :all_assets_stats
3462
+
3463
+ # Findings for each Group included in this report.
3464
+ # Corresponds to the JSON property `groupFindings`
3465
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ReportSummaryGroupFinding>]
3466
+ attr_accessor :group_findings
3467
+
3468
+ def initialize(**args)
3469
+ update!(**args)
3470
+ end
3471
+
3472
+ # Update properties of this object
3473
+ def update!(**args)
3474
+ @all_assets_stats = args[:all_assets_stats] if args.key?(:all_assets_stats)
3475
+ @group_findings = args[:group_findings] if args.key?(:group_findings)
3476
+ end
3477
+ end
3478
+
3479
+ # Aggregate statistics for a collection of assets.
3480
+ class ReportSummaryAssetAggregateStats
3481
+ include Google::Apis::Core::Hashable
3482
+
3483
+ # Describes a collection of data points rendered as a Chart.
3484
+ # Corresponds to the JSON property `assetAge`
3485
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryChartData]
3486
+ attr_accessor :asset_age
3487
+
3488
+ # A Histogram Chart shows a distribution of values into buckets, showing a count
3489
+ # of values which fall into a bucket.
3490
+ # Corresponds to the JSON property `coreCountHistogram`
3491
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryHistogramChartData]
3492
+ attr_accessor :core_count_histogram
3493
+
3494
+ # A Histogram Chart shows a distribution of values into buckets, showing a count
3495
+ # of values which fall into a bucket.
3496
+ # Corresponds to the JSON property `memoryBytesHistogram`
3497
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryHistogramChartData]
3498
+ attr_accessor :memory_bytes_histogram
3499
+
3500
+ # Describes a collection of data points rendered as a Chart.
3501
+ # Corresponds to the JSON property `memoryUtilization`
3502
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryChartData]
3503
+ attr_accessor :memory_utilization
3504
+
3505
+ # Utilization Chart is a specific type of visualization which displays a metric
3506
+ # classified into "Used" and "Free" buckets.
3507
+ # Corresponds to the JSON property `memoryUtilizationChart`
3508
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryUtilizationChartData]
3509
+ attr_accessor :memory_utilization_chart
3510
+
3511
+ # Describes a collection of data points rendered as a Chart.
3512
+ # Corresponds to the JSON property `operatingSystem`
3513
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryChartData]
3514
+ attr_accessor :operating_system
3515
+
3516
+ # A Histogram Chart shows a distribution of values into buckets, showing a count
3517
+ # of values which fall into a bucket.
3518
+ # Corresponds to the JSON property `storageBytesHistogram`
3519
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryHistogramChartData]
3520
+ attr_accessor :storage_bytes_histogram
3521
+
3522
+ # Describes a collection of data points rendered as a Chart.
3523
+ # Corresponds to the JSON property `storageUtilization`
3524
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryChartData]
3525
+ attr_accessor :storage_utilization
3526
+
3527
+ # Utilization Chart is a specific type of visualization which displays a metric
3528
+ # classified into "Used" and "Free" buckets.
3529
+ # Corresponds to the JSON property `storageUtilizationChart`
3530
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryUtilizationChartData]
3531
+ attr_accessor :storage_utilization_chart
3532
+
3533
+ # Count of the number of unique assets in this collection.
3534
+ # Corresponds to the JSON property `totalAssets`
3535
+ # @return [Fixnum]
3536
+ attr_accessor :total_assets
3537
+
3538
+ # Sum of the CPU core count of all the assets in this collection.
3539
+ # Corresponds to the JSON property `totalCores`
3540
+ # @return [Fixnum]
3541
+ attr_accessor :total_cores
3542
+
3543
+ # Sum of the memory in bytes of all the assets in this collection.
3544
+ # Corresponds to the JSON property `totalMemoryBytes`
3545
+ # @return [Fixnum]
3546
+ attr_accessor :total_memory_bytes
3547
+
3548
+ # Sum of persistent storage in bytes of all the assets in this collection.
3549
+ # Corresponds to the JSON property `totalStorageBytes`
3550
+ # @return [Fixnum]
3551
+ attr_accessor :total_storage_bytes
3552
+
3553
+ def initialize(**args)
3554
+ update!(**args)
3555
+ end
3556
+
3557
+ # Update properties of this object
3558
+ def update!(**args)
3559
+ @asset_age = args[:asset_age] if args.key?(:asset_age)
3560
+ @core_count_histogram = args[:core_count_histogram] if args.key?(:core_count_histogram)
3561
+ @memory_bytes_histogram = args[:memory_bytes_histogram] if args.key?(:memory_bytes_histogram)
3562
+ @memory_utilization = args[:memory_utilization] if args.key?(:memory_utilization)
3563
+ @memory_utilization_chart = args[:memory_utilization_chart] if args.key?(:memory_utilization_chart)
3564
+ @operating_system = args[:operating_system] if args.key?(:operating_system)
3565
+ @storage_bytes_histogram = args[:storage_bytes_histogram] if args.key?(:storage_bytes_histogram)
3566
+ @storage_utilization = args[:storage_utilization] if args.key?(:storage_utilization)
3567
+ @storage_utilization_chart = args[:storage_utilization_chart] if args.key?(:storage_utilization_chart)
3568
+ @total_assets = args[:total_assets] if args.key?(:total_assets)
3569
+ @total_cores = args[:total_cores] if args.key?(:total_cores)
3570
+ @total_memory_bytes = args[:total_memory_bytes] if args.key?(:total_memory_bytes)
3571
+ @total_storage_bytes = args[:total_storage_bytes] if args.key?(:total_storage_bytes)
3572
+ end
3573
+ end
3574
+
3575
+ # Describes a collection of data points rendered as a Chart.
3576
+ class ReportSummaryChartData
3577
+ include Google::Apis::Core::Hashable
3578
+
3579
+ # Each data point in the chart is represented as a name-value pair with the name
3580
+ # being the x-axis label, and the value being the y-axis value.
3581
+ # Corresponds to the JSON property `dataPoints`
3582
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ReportSummaryChartDataDataPoint>]
3583
+ attr_accessor :data_points
3584
+
3585
+ def initialize(**args)
3586
+ update!(**args)
3587
+ end
3588
+
3589
+ # Update properties of this object
3590
+ def update!(**args)
3591
+ @data_points = args[:data_points] if args.key?(:data_points)
3592
+ end
3593
+ end
3594
+
3595
+ # Describes a single data point in the Chart.
3596
+ class ReportSummaryChartDataDataPoint
3597
+ include Google::Apis::Core::Hashable
3598
+
3599
+ # The X-axis label for this data point.
3600
+ # Corresponds to the JSON property `label`
3601
+ # @return [String]
3602
+ attr_accessor :label
3603
+
3604
+ # The Y-axis value for this data point.
3605
+ # Corresponds to the JSON property `value`
3606
+ # @return [Float]
3607
+ attr_accessor :value
3608
+
3609
+ def initialize(**args)
3610
+ update!(**args)
3611
+ end
3612
+
3613
+ # Update properties of this object
3614
+ def update!(**args)
3615
+ @label = args[:label] if args.key?(:label)
3616
+ @value = args[:value] if args.key?(:value)
3617
+ end
3618
+ end
3619
+
3620
+ # Summary Findings for a specific Group.
3621
+ class ReportSummaryGroupFinding
3622
+ include Google::Apis::Core::Hashable
3623
+
3624
+ # Aggregate statistics for a collection of assets.
3625
+ # Corresponds to the JSON property `assetAggregateStats`
3626
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryAssetAggregateStats]
3627
+ attr_accessor :asset_aggregate_stats
3628
+
3629
+ # Description for the Group.
3630
+ # Corresponds to the JSON property `description`
3631
+ # @return [String]
3632
+ attr_accessor :description
3633
+
3634
+ # Display Name for the Group.
3635
+ # Corresponds to the JSON property `displayName`
3636
+ # @return [String]
3637
+ attr_accessor :display_name
3638
+
3639
+ # Count of the number of assets in this group which are also included in another
3640
+ # group within the same report.
3641
+ # Corresponds to the JSON property `overlappingAssetCount`
3642
+ # @return [Fixnum]
3643
+ attr_accessor :overlapping_asset_count
3644
+
3645
+ # Findings for each of the PreferenceSets for this group.
3646
+ # Corresponds to the JSON property `preferenceSetFindings`
3647
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ReportSummaryGroupPreferenceSetFinding>]
3648
+ attr_accessor :preference_set_findings
3649
+
3650
+ def initialize(**args)
3651
+ update!(**args)
3652
+ end
3653
+
3654
+ # Update properties of this object
3655
+ def update!(**args)
3656
+ @asset_aggregate_stats = args[:asset_aggregate_stats] if args.key?(:asset_aggregate_stats)
3657
+ @description = args[:description] if args.key?(:description)
3658
+ @display_name = args[:display_name] if args.key?(:display_name)
3659
+ @overlapping_asset_count = args[:overlapping_asset_count] if args.key?(:overlapping_asset_count)
3660
+ @preference_set_findings = args[:preference_set_findings] if args.key?(:preference_set_findings)
3661
+ end
3662
+ end
3663
+
3664
+ # Summary Findings for a specific Group/PreferenceSet combination.
3665
+ class ReportSummaryGroupPreferenceSetFinding
3666
+ include Google::Apis::Core::Hashable
3667
+
3668
+ # Description for the Preference Set.
3669
+ # Corresponds to the JSON property `description`
3670
+ # @return [String]
3671
+ attr_accessor :description
3672
+
3673
+ # Display Name of the Preference Set
3674
+ # Corresponds to the JSON property `displayName`
3675
+ # @return [String]
3676
+ attr_accessor :display_name
3677
+
3678
+ # A set of findings that applies to assets of type Virtual/Physical Machine.
3679
+ # Corresponds to the JSON property `machineFinding`
3680
+ # @return [Google::Apis::MigrationcenterV1alpha1::ReportSummaryMachineFinding]
3681
+ attr_accessor :machine_finding
3682
+
3683
+ # VirtualMachinePreferences enables you to create sets of assumptions, for
3684
+ # example, a geographical location and pricing track, for your migrated virtual
3685
+ # machines. The set of preferences influence recommendations for migrating
3686
+ # virtual machine assets.
3687
+ # Corresponds to the JSON property `machinePreferences`
3688
+ # @return [Google::Apis::MigrationcenterV1alpha1::VirtualMachinePreferences]
3689
+ attr_accessor :machine_preferences
3690
+
3691
+ # Represents an amount of money with its currency type.
3692
+ # Corresponds to the JSON property `monthlyCostCompute`
3693
+ # @return [Google::Apis::MigrationcenterV1alpha1::Money]
3694
+ attr_accessor :monthly_cost_compute
3695
+
3696
+ # Represents an amount of money with its currency type.
3697
+ # Corresponds to the JSON property `monthlyCostNetworkEgress`
3698
+ # @return [Google::Apis::MigrationcenterV1alpha1::Money]
3699
+ attr_accessor :monthly_cost_network_egress
3700
+
3701
+ # Represents an amount of money with its currency type.
3702
+ # Corresponds to the JSON property `monthlyCostOsLicense`
3703
+ # @return [Google::Apis::MigrationcenterV1alpha1::Money]
3704
+ attr_accessor :monthly_cost_os_license
3705
+
3706
+ # Represents an amount of money with its currency type.
3707
+ # Corresponds to the JSON property `monthlyCostOther`
3708
+ # @return [Google::Apis::MigrationcenterV1alpha1::Money]
3709
+ attr_accessor :monthly_cost_other
3710
+
3711
+ # Represents an amount of money with its currency type.
3712
+ # Corresponds to the JSON property `monthlyCostStorage`
3713
+ # @return [Google::Apis::MigrationcenterV1alpha1::Money]
3714
+ attr_accessor :monthly_cost_storage
3715
+
3716
+ # Represents an amount of money with its currency type.
3717
+ # Corresponds to the JSON property `monthlyCostTotal`
3718
+ # @return [Google::Apis::MigrationcenterV1alpha1::Money]
3719
+ attr_accessor :monthly_cost_total
3720
+
3721
+ # Target region for this Preference Set
3722
+ # Corresponds to the JSON property `preferredRegion`
3723
+ # @return [String]
3724
+ attr_accessor :preferred_region
3725
+
3726
+ # Text describing the pricing track specified for this Preference Set
3727
+ # Corresponds to the JSON property `pricingTrack`
3728
+ # @return [String]
3729
+ attr_accessor :pricing_track
3730
+
3731
+ # Text describing the business priority specified for this Preference Set
3732
+ # Corresponds to the JSON property `topPriority`
3733
+ # @return [String]
3734
+ attr_accessor :top_priority
3735
+
3736
+ def initialize(**args)
3737
+ update!(**args)
3738
+ end
3739
+
3740
+ # Update properties of this object
3741
+ def update!(**args)
3742
+ @description = args[:description] if args.key?(:description)
3743
+ @display_name = args[:display_name] if args.key?(:display_name)
3744
+ @machine_finding = args[:machine_finding] if args.key?(:machine_finding)
3745
+ @machine_preferences = args[:machine_preferences] if args.key?(:machine_preferences)
3746
+ @monthly_cost_compute = args[:monthly_cost_compute] if args.key?(:monthly_cost_compute)
3747
+ @monthly_cost_network_egress = args[:monthly_cost_network_egress] if args.key?(:monthly_cost_network_egress)
3748
+ @monthly_cost_os_license = args[:monthly_cost_os_license] if args.key?(:monthly_cost_os_license)
3749
+ @monthly_cost_other = args[:monthly_cost_other] if args.key?(:monthly_cost_other)
3750
+ @monthly_cost_storage = args[:monthly_cost_storage] if args.key?(:monthly_cost_storage)
3751
+ @monthly_cost_total = args[:monthly_cost_total] if args.key?(:monthly_cost_total)
3752
+ @preferred_region = args[:preferred_region] if args.key?(:preferred_region)
3753
+ @pricing_track = args[:pricing_track] if args.key?(:pricing_track)
3754
+ @top_priority = args[:top_priority] if args.key?(:top_priority)
3755
+ end
3756
+ end
3757
+
3758
+ # A Histogram Chart shows a distribution of values into buckets, showing a count
3759
+ # of values which fall into a bucket.
3760
+ class ReportSummaryHistogramChartData
3761
+ include Google::Apis::Core::Hashable
3762
+
3763
+ # Buckets in the histogram. There will be `n+1` buckets matching `n` lower
3764
+ # bounds in the request. The first bucket will be from -infinity to the first
3765
+ # bound. Subsequent buckets will be between one bound and the next. The final
3766
+ # bucket will be from the final bound to infinity.
3767
+ # Corresponds to the JSON property `buckets`
3768
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ReportSummaryHistogramChartDataBucket>]
3769
+ attr_accessor :buckets
3770
+
3771
+ def initialize(**args)
3772
+ update!(**args)
3773
+ end
3774
+
3775
+ # Update properties of this object
3776
+ def update!(**args)
3777
+ @buckets = args[:buckets] if args.key?(:buckets)
3778
+ end
3779
+ end
3780
+
3781
+ # A histogram bucket with a lower and upper bound, and a count of items with a
3782
+ # field value between those bounds. The lower bound is inclusive and the upper
3783
+ # bound is exclusive. Lower bound may be -infinity and upper bound may be
3784
+ # infinity.
3785
+ class ReportSummaryHistogramChartDataBucket
3786
+ include Google::Apis::Core::Hashable
3787
+
3788
+ # Count of items in the bucket.
3789
+ # Corresponds to the JSON property `count`
3790
+ # @return [Fixnum]
3791
+ attr_accessor :count
3792
+
3793
+ # Lower bound - inclusive.
3794
+ # Corresponds to the JSON property `lowerBound`
3795
+ # @return [Fixnum]
3796
+ attr_accessor :lower_bound
3797
+
3798
+ # Upper bound - exclusive.
3799
+ # Corresponds to the JSON property `upperBound`
3800
+ # @return [Fixnum]
3801
+ attr_accessor :upper_bound
3802
+
3803
+ def initialize(**args)
3804
+ update!(**args)
3805
+ end
3806
+
3807
+ # Update properties of this object
3808
+ def update!(**args)
3809
+ @count = args[:count] if args.key?(:count)
3810
+ @lower_bound = args[:lower_bound] if args.key?(:lower_bound)
3811
+ @upper_bound = args[:upper_bound] if args.key?(:upper_bound)
3812
+ end
3813
+ end
3814
+
3815
+ # A set of findings that applies to assets of type Virtual/Physical Machine.
3816
+ class ReportSummaryMachineFinding
3817
+ include Google::Apis::Core::Hashable
3818
+
3819
+ # Count of assets which were allocated.
3820
+ # Corresponds to the JSON property `allocatedAssetCount`
3821
+ # @return [Fixnum]
3822
+ attr_accessor :allocated_asset_count
3823
+
3824
+ # Set of disk types allocated to assets.
3825
+ # Corresponds to the JSON property `allocatedDiskTypes`
3826
+ # @return [Array<String>]
3827
+ attr_accessor :allocated_disk_types
3828
+
3829
+ # Set of regions in which the assets were allocated.
3830
+ # Corresponds to the JSON property `allocatedRegions`
3831
+ # @return [Array<String>]
3832
+ attr_accessor :allocated_regions
3833
+
3834
+ # Distribution of assets based on the Machine Series.
3835
+ # Corresponds to the JSON property `machineSeriesAllocations`
3836
+ # @return [Array<Google::Apis::MigrationcenterV1alpha1::ReportSummaryMachineSeriesAllocation>]
3837
+ attr_accessor :machine_series_allocations
3838
+
3839
+ def initialize(**args)
3840
+ update!(**args)
3841
+ end
3842
+
3843
+ # Update properties of this object
3844
+ def update!(**args)
3845
+ @allocated_asset_count = args[:allocated_asset_count] if args.key?(:allocated_asset_count)
3846
+ @allocated_disk_types = args[:allocated_disk_types] if args.key?(:allocated_disk_types)
3847
+ @allocated_regions = args[:allocated_regions] if args.key?(:allocated_regions)
3848
+ @machine_series_allocations = args[:machine_series_allocations] if args.key?(:machine_series_allocations)
3849
+ end
3850
+ end
3851
+
3852
+ # Represents a data point tracking the count of assets allocated for a specific
3853
+ # Machine Series.
3854
+ class ReportSummaryMachineSeriesAllocation
3855
+ include Google::Apis::Core::Hashable
3856
+
3857
+ # Count of assets allocated to this machine series.
3858
+ # Corresponds to the JSON property `allocatedAssetCount`
3859
+ # @return [Fixnum]
3860
+ attr_accessor :allocated_asset_count
3861
+
3862
+ # A Compute Engine machine series.
3863
+ # Corresponds to the JSON property `machineSeries`
3864
+ # @return [Google::Apis::MigrationcenterV1alpha1::MachineSeries]
3865
+ attr_accessor :machine_series
3866
+
3867
+ def initialize(**args)
3868
+ update!(**args)
3869
+ end
3870
+
3871
+ # Update properties of this object
3872
+ def update!(**args)
3873
+ @allocated_asset_count = args[:allocated_asset_count] if args.key?(:allocated_asset_count)
3874
+ @machine_series = args[:machine_series] if args.key?(:machine_series)
3875
+ end
3876
+ end
3877
+
3878
+ # Utilization Chart is a specific type of visualization which displays a metric
3879
+ # classified into "Used" and "Free" buckets.
3880
+ class ReportSummaryUtilizationChartData
3881
+ include Google::Apis::Core::Hashable
3882
+
3883
+ # Aggregate value which falls into the "Free" bucket.
3884
+ # Corresponds to the JSON property `free`
3885
+ # @return [Fixnum]
3886
+ attr_accessor :free
3887
+
3888
+ # Aggregate value which falls into the "Used" bucket.
3889
+ # Corresponds to the JSON property `used`
3890
+ # @return [Fixnum]
3891
+ attr_accessor :used
3892
+
3893
+ def initialize(**args)
3894
+ update!(**args)
3895
+ end
3896
+
3897
+ # Update properties of this object
3898
+ def update!(**args)
3899
+ @free = args[:free] if args.key?(:free)
3900
+ @used = args[:used] if args.key?(:used)
3901
+ end
3902
+ end
3903
+
3219
3904
  # A request to run an import job.
3220
3905
  class RunImportJobRequest
3221
3906
  include Google::Apis::Core::Hashable