class Azure::Compute::Mgmt::V2017_12_01::Models::UpgradePolicy

Describes an upgrade policy - automatic, manual, or rolling.

Attributes

auto_osupgrade_policy[RW]

@return [AutoOSUpgradePolicy] Configuration parameters used for performing automatic OS Upgrade.

automatic_osupgrade[RW]

@return [Boolean] Whether OS upgrades should automatically be applied to scale set instances in a rolling fashion when a newer version of the image becomes available.

mode[RW]

@return [UpgradeMode] Specifies the mode of an upgrade to virtual machines in the scale set.<br /><br /> Possible values are:<br /><br /> Manual - You control the application of updates to virtual machines in the scale set. You do this by using the manualUpgrade action.<br /><br /> Automatic - All virtual machines in the scale set are automatically updated at the same time. Possible values include: 'Automatic', 'Manual', 'Rolling'

rolling_upgrade_policy[RW]

@return [RollingUpgradePolicy] The configuration parameters used while performing a rolling upgrade.

Private Class Methods

mapper() click to toggle source

Mapper for UpgradePolicy class as Ruby Hash. This will be used for serialization/deserialization.

# File lib/2017-12-01/generated/azure_mgmt_compute/models/upgrade_policy.rb, line 42
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'UpgradePolicy',
    type: {
      name: 'Composite',
      class_name: 'UpgradePolicy',
      model_properties: {
        mode: {
          client_side_validation: true,
          required: false,
          serialized_name: 'mode',
          type: {
            name: 'Enum',
            module: 'UpgradeMode'
          }
        },
        rolling_upgrade_policy: {
          client_side_validation: true,
          required: false,
          serialized_name: 'rollingUpgradePolicy',
          type: {
            name: 'Composite',
            class_name: 'RollingUpgradePolicy'
          }
        },
        automatic_osupgrade: {
          client_side_validation: true,
          required: false,
          serialized_name: 'automaticOSUpgrade',
          type: {
            name: 'Boolean'
          }
        },
        auto_osupgrade_policy: {
          client_side_validation: true,
          required: false,
          serialized_name: 'autoOSUpgradePolicy',
          type: {
            name: 'Composite',
            class_name: 'AutoOSUpgradePolicy'
          }
        }
      }
    }
  }
end