# 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::Batch::Mgmt::V2017_09_01 module Models # # The configuration for nodes in a pool based on the Azure Cloud Services # platform. # # class CloudServiceConfiguration include MsRestAzure # @return [String] The Azure Guest OS family to be installed on the # virtual machines in the pool. Possible values are: 2 - OS Family 2, # equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent # to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server # 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. For more # information, see Azure Guest OS Releases # (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). attr_accessor :os_family # @return [String] The Azure Guest OS version to be installed on the # virtual machines in the pool. The default value is * which specifies # the latest operating system version for the specified OS family. attr_accessor :target_osversion # @return [String] The Azure Guest OS Version currently installed on the # virtual machines in the pool. This may differ from targetOSVersion if # the pool state is Upgrading. In this case some virtual machines may be # on the targetOSVersion and some may be on the currentOSVersion during # the upgrade process. Once all virtual machines have upgraded, # currentOSVersion is updated to be the same as targetOSVersion. attr_accessor :current_osversion # # Mapper for CloudServiceConfiguration class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'CloudServiceConfiguration', type: { name: 'Composite', class_name: 'CloudServiceConfiguration', model_properties: { os_family: { client_side_validation: true, required: true, serialized_name: 'osFamily', type: { name: 'String' } }, target_osversion: { client_side_validation: true, required: false, serialized_name: 'targetOSVersion', type: { name: 'String' } }, current_osversion: { client_side_validation: true, required: false, serialized_name: 'currentOSVersion', type: { name: 'String' } } } } } end end end end