azure-cli
Version:
Microsoft Azure Cross Platform Command Line tool
182 lines (176 loc) • 6.56 kB
JavaScript
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
* regenerated.
*/
;
const models = require('./index');
/**
* The status of the latest virtual machine scale set rolling upgrade.
*
* @extends models['Resource']
*/
class RollingUpgradeStatusInfo extends models['Resource'] {
/**
* Create a RollingUpgradeStatusInfo.
* @member {object} [policy] The rolling upgrade policies applied for this
* upgrade.
* @member {number} [policy.maxBatchInstancePercent] The maximum percent of
* total virtual machine instances that will be upgraded simultaneously by
* the rolling upgrade in one batch. As this is a maximum, unhealthy
* instances in previous or future batches can cause the percentage of
* instances in a batch to decrease to ensure higher reliability. The default
* value for this parameter is 20%.
* @member {number} [policy.maxUnhealthyInstancePercent] The maximum
* percentage of the total virtual machine instances in the scale set that
* can be simultaneously unhealthy, either as a result of being upgraded, or
* by being found in an unhealthy state by the virtual machine health checks
* before the rolling upgrade aborts. This constraint will be checked prior
* to starting any batch. The default value for this parameter is 20%.
* @member {number} [policy.maxUnhealthyUpgradedInstancePercent] The maximum
* percentage of upgraded virtual machine instances that can be found to be
* in an unhealthy state. This check will happen after each batch is
* upgraded. If this percentage is ever exceeded, the rolling update aborts.
* The default value for this parameter is 20%.
* @member {string} [policy.pauseTimeBetweenBatches] The wait time between
* completing the update for all virtual machines in one batch and starting
* the next batch. The time duration should be specified in ISO 8601 format.
* The default value is 0 seconds (PT0S).
* @member {object} [runningStatus] Information about the current running
* state of the overall upgrade.
* @member {string} [runningStatus.code] Code indicating the current status
* of the upgrade. Possible values include: 'RollingForward', 'Cancelled',
* 'Completed', 'Faulted'
* @member {date} [runningStatus.startTime] Start time of the upgrade.
* @member {string} [runningStatus.lastAction] The last action performed on
* the rolling upgrade. Possible values include: 'Start', 'Cancel'
* @member {date} [runningStatus.lastActionTime] Last action time of the
* upgrade.
* @member {object} [progress] Information about the number of virtual
* machine instances in each upgrade state.
* @member {number} [progress.successfulInstanceCount] The number of
* instances that have been successfully upgraded.
* @member {number} [progress.failedInstanceCount] The number of instances
* that have failed to be upgraded successfully.
* @member {number} [progress.inProgressInstanceCount] The number of
* instances that are currently being upgraded.
* @member {number} [progress.pendingInstanceCount] The number of instances
* that have not yet begun to be upgraded.
* @member {object} [error] Error details for this upgrade, if there are any.
* @member {array} [error.details] The Api error details
* @member {object} [error.innererror] The Api inner error
* @member {string} [error.innererror.exceptiontype] The exception type.
* @member {string} [error.innererror.errordetail] The internal error message
* or exception dump.
* @member {string} [error.code] The error code.
* @member {string} [error.target] The target of the particular error.
* @member {string} [error.message] The error message.
*/
constructor() {
super();
}
/**
* Defines the metadata of RollingUpgradeStatusInfo
*
* @returns {object} metadata of RollingUpgradeStatusInfo
*
*/
mapper() {
return {
required: false,
serializedName: 'RollingUpgradeStatusInfo',
type: {
name: 'Composite',
className: 'RollingUpgradeStatusInfo',
modelProperties: {
id: {
required: false,
readOnly: true,
serializedName: 'id',
type: {
name: 'String'
}
},
name: {
required: false,
readOnly: true,
serializedName: 'name',
type: {
name: 'String'
}
},
type: {
required: false,
readOnly: true,
serializedName: 'type',
type: {
name: 'String'
}
},
location: {
required: true,
serializedName: 'location',
type: {
name: 'String'
}
},
tags: {
required: false,
serializedName: 'tags',
type: {
name: 'Dictionary',
value: {
required: false,
serializedName: 'StringElementType',
type: {
name: 'String'
}
}
}
},
policy: {
required: false,
readOnly: true,
serializedName: 'properties.policy',
type: {
name: 'Composite',
className: 'RollingUpgradePolicy'
}
},
runningStatus: {
required: false,
readOnly: true,
serializedName: 'properties.runningStatus',
type: {
name: 'Composite',
className: 'RollingUpgradeRunningStatus'
}
},
progress: {
required: false,
readOnly: true,
serializedName: 'properties.progress',
type: {
name: 'Composite',
className: 'RollingUpgradeProgressInfo'
}
},
error: {
required: false,
readOnly: true,
serializedName: 'properties.error',
type: {
name: 'Composite',
className: 'ApiError'
}
}
}
}
};
}
}
module.exports = RollingUpgradeStatusInfo;