# 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::V2015_06_15 module Models # # Describes a Virtual Machine Scale Set. # class VirtualMachineScaleSet < Resource include MsRestAzure # @return [Sku] The virtual machine scale set sku. attr_accessor :sku # @return [UpgradePolicy] The upgrade policy. attr_accessor :upgrade_policy # @return [VirtualMachineScaleSetVMProfile] The virtual machine profile. attr_accessor :virtual_machine_profile # @return [String] The provisioning state, which only appears in the # response. attr_accessor :provisioning_state # @return [Boolean] Specifies whether the Virtual Machine Scale Set # should be overprovisioned. attr_accessor :over_provision # # Mapper for VirtualMachineScaleSet class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'VirtualMachineScaleSet', type: { name: 'Composite', class_name: 'VirtualMachineScaleSet', model_properties: { id: { client_side_validation: true, required: false, read_only: true, serialized_name: 'id', type: { name: 'String' } }, name: { client_side_validation: true, required: false, read_only: true, serialized_name: 'name', type: { name: 'String' } }, type: { client_side_validation: true, required: false, read_only: true, serialized_name: 'type', type: { name: 'String' } }, location: { client_side_validation: true, required: true, serialized_name: 'location', type: { name: 'String' } }, tags: { client_side_validation: true, required: false, serialized_name: 'tags', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } }, sku: { client_side_validation: true, required: false, serialized_name: 'sku', type: { name: 'Composite', class_name: 'Sku' } }, upgrade_policy: { client_side_validation: true, required: false, serialized_name: 'properties.upgradePolicy', type: { name: 'Composite', class_name: 'UpgradePolicy' } }, virtual_machine_profile: { client_side_validation: true, required: false, serialized_name: 'properties.virtualMachineProfile', type: { name: 'Composite', class_name: 'VirtualMachineScaleSetVMProfile' } }, provisioning_state: { client_side_validation: true, required: false, serialized_name: 'properties.provisioningState', type: { name: 'String' } }, over_provision: { client_side_validation: true, required: false, serialized_name: 'properties.overProvision', type: { name: 'Boolean' } } } } } end end end end