# encoding: utf-8 # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. module Azure::Compute::Mgmt::V2019_12_01 module Models # # Describes a virtual machine scale set virtual machine profile. # class VirtualMachineScaleSetUpdateVMProfile include MsRestAzure # @return [VirtualMachineScaleSetUpdateOSProfile] The virtual machine # scale set OS profile. attr_accessor :os_profile # @return [VirtualMachineScaleSetUpdateStorageProfile] The virtual # machine scale set storage profile. attr_accessor :storage_profile # @return [VirtualMachineScaleSetUpdateNetworkProfile] The virtual # machine scale set network profile. attr_accessor :network_profile # @return [DiagnosticsProfile] The virtual machine scale set diagnostics # profile. attr_accessor :diagnostics_profile # @return [VirtualMachineScaleSetExtensionProfile] The virtual machine # scale set extension profile. attr_accessor :extension_profile # @return [String] The license type, which is for bring your own license # scenario. attr_accessor :license_type # @return [BillingProfile] Specifies the billing related details of a # Azure Spot VMSS.

Minimum api-version: 2019-03-01. attr_accessor :billing_profile # @return [ScheduledEventsProfile] Specifies Scheduled Event related # configurations. attr_accessor :scheduled_events_profile # # Mapper for VirtualMachineScaleSetUpdateVMProfile class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'VirtualMachineScaleSetUpdateVMProfile', type: { name: 'Composite', class_name: 'VirtualMachineScaleSetUpdateVMProfile', model_properties: { os_profile: { client_side_validation: true, required: false, serialized_name: 'osProfile', type: { name: 'Composite', class_name: 'VirtualMachineScaleSetUpdateOSProfile' } }, storage_profile: { client_side_validation: true, required: false, serialized_name: 'storageProfile', type: { name: 'Composite', class_name: 'VirtualMachineScaleSetUpdateStorageProfile' } }, network_profile: { client_side_validation: true, required: false, serialized_name: 'networkProfile', type: { name: 'Composite', class_name: 'VirtualMachineScaleSetUpdateNetworkProfile' } }, diagnostics_profile: { client_side_validation: true, required: false, serialized_name: 'diagnosticsProfile', type: { name: 'Composite', class_name: 'DiagnosticsProfile' } }, extension_profile: { client_side_validation: true, required: false, serialized_name: 'extensionProfile', type: { name: 'Composite', class_name: 'VirtualMachineScaleSetExtensionProfile' } }, license_type: { client_side_validation: true, required: false, serialized_name: 'licenseType', type: { name: 'String' } }, billing_profile: { client_side_validation: true, required: false, serialized_name: 'billingProfile', type: { name: 'Composite', class_name: 'BillingProfile' } }, scheduled_events_profile: { client_side_validation: true, required: false, serialized_name: 'scheduledEventsProfile', type: { name: 'Composite', class_name: 'ScheduledEventsProfile' } } } } } end end end end