Class: Google::Apis::MigrationcenterV1alpha1::VirtualMachinePreferences

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/migrationcenter_v1alpha1/classes.rb,
lib/google/apis/migrationcenter_v1alpha1/representations.rb,
lib/google/apis/migrationcenter_v1alpha1/representations.rb

Overview

VirtualMachinePreferences enables you to create sets of preferences, for example, a geographical location and pricing track, for your migrated virtual machines. The set of preferences influence recommendations for migrating virtual machine assets.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ VirtualMachinePreferences

Returns a new instance of VirtualMachinePreferences.



9239
9240
9241
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9239

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#commitment_planString

Commitment plan to consider when calculating costs for virtual machine insights and recommendations. If you are unsure which value to set, a 3 year commitment plan is often a good value to start with. Corresponds to the JSON property commitmentPlan

Returns:

  • (String)


9188
9189
9190
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9188

def commitment_plan
  @commitment_plan
end

#compute_engine_preferencesGoogle::Apis::MigrationcenterV1alpha1::ComputeEnginePreferences

The user preferences relating to Compute Engine target platform. Corresponds to the JSON property computeEnginePreferences



9193
9194
9195
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9193

def compute_engine_preferences
  @compute_engine_preferences
end

#estimated_usageGoogle::Apis::MigrationcenterV1alpha1::EstimatedUsage

Estimated usage data. Corresponds to the JSON property estimatedUsage



9198
9199
9200
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9198

def estimated_usage
  @estimated_usage
end

#network_cost_parametersGoogle::Apis::MigrationcenterV1alpha1::VirtualMachinePreferencesNetworkCostParameters

Parameters that affect network cost estimations. Corresponds to the JSON property networkCostParameters



9203
9204
9205
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9203

def network_cost_parameters
  @network_cost_parameters
end

#region_preferencesGoogle::Apis::MigrationcenterV1alpha1::RegionPreferences

The user preferences relating to target regions. Corresponds to the JSON property regionPreferences



9208
9209
9210
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9208

def region_preferences
  @region_preferences
end

#sizing_optimization_custom_parametersGoogle::Apis::MigrationcenterV1alpha1::VirtualMachinePreferencesSizingOptimizationCustomParameters

Custom data to use for sizing optimizations. Corresponds to the JSON property sizingOptimizationCustomParameters



9213
9214
9215
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9213

def sizing_optimization_custom_parameters
  @sizing_optimization_custom_parameters
end

#sizing_optimization_strategyString

Sizing optimization strategy specifies the preferred strategy used when extrapolating usage data to calculate insights and recommendations for a virtual machine. If you are unsure which value to set, a moderate sizing optimization strategy is often a good value to start with. Corresponds to the JSON property sizingOptimizationStrategy

Returns:

  • (String)


9221
9222
9223
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9221

def sizing_optimization_strategy
  @sizing_optimization_strategy
end

#sole_tenancy_preferencesGoogle::Apis::MigrationcenterV1alpha1::SoleTenancyPreferences

Preferences concerning Sole Tenancy nodes and VMs. Corresponds to the JSON property soleTenancyPreferences



9226
9227
9228
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9226

def sole_tenancy_preferences
  @sole_tenancy_preferences
end

#target_productString

Target product for assets using this preference set. Specify either target product or business goal, but not both. Corresponds to the JSON property targetProduct

Returns:

  • (String)


9232
9233
9234
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9232

def target_product
  @target_product
end

#vmware_engine_preferencesGoogle::Apis::MigrationcenterV1alpha1::VmwareEnginePreferences

The user preferences relating to Google Cloud VMware Engine target platform. Corresponds to the JSON property vmwareEnginePreferences



9237
9238
9239
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9237

def vmware_engine_preferences
  @vmware_engine_preferences
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
# File 'lib/google/apis/migrationcenter_v1alpha1/classes.rb', line 9244

def update!(**args)
  @commitment_plan = args[:commitment_plan] if args.key?(:commitment_plan)
  @compute_engine_preferences = args[:compute_engine_preferences] if args.key?(:compute_engine_preferences)
  @estimated_usage = args[:estimated_usage] if args.key?(:estimated_usage)
  @network_cost_parameters = args[:network_cost_parameters] if args.key?(:network_cost_parameters)
  @region_preferences = args[:region_preferences] if args.key?(:region_preferences)
  @sizing_optimization_custom_parameters = args[:sizing_optimization_custom_parameters] if args.key?(:sizing_optimization_custom_parameters)
  @sizing_optimization_strategy = args[:sizing_optimization_strategy] if args.key?(:sizing_optimization_strategy)
  @sole_tenancy_preferences = args[:sole_tenancy_preferences] if args.key?(:sole_tenancy_preferences)
  @target_product = args[:target_product] if args.key?(:target_product)
  @vmware_engine_preferences = args[:vmware_engine_preferences] if args.key?(:vmware_engine_preferences)
end