google-apis-migrationcenter_v1alpha1 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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