# coding=utf-8
# --------------------------------------------------------------------------
# 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.
# --------------------------------------------------------------------------
from msrest.serialization import Model
[docs]class ClusterUpgradeDescriptionObject(Model):
"""Represents a ServiceFabric cluster upgrade.
:param config_version: The cluster configuration version (specified in the
cluster manifest).
:type config_version: str
:param code_version: The ServiceFabric code version of the cluster.
:type code_version: str
:param upgrade_kind: The kind of upgrade out of the following possible
values. Possible values include: 'Invalid', 'Rolling'. Default value:
"Rolling" .
:type upgrade_kind: str or ~azure.servicefabric.models.UpgradeKind
:param rolling_upgrade_mode: The mode used to monitor health during a
rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and
Monitored. Possible values include: 'Invalid', 'UnmonitoredAuto',
'UnmonitoredManual', 'Monitored'. Default value: "UnmonitoredAuto" .
:type rolling_upgrade_mode: str or ~azure.servicefabric.models.UpgradeMode
:param upgrade_replica_set_check_timeout_in_seconds: The maximum amount of
time to block processing of an upgrade domain and prevent loss of
availability when there are unexpected issues. When this timeout expires,
processing of the upgrade domain will proceed regardless of availability
loss issues. The timeout is reset at the start of each upgrade domain.
Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit
integer).
:type upgrade_replica_set_check_timeout_in_seconds: long
:param force_restart: If true, then processes are forcefully restarted
during upgrade even when the code version has not changed (the upgrade
only changes configuration or data).
:type force_restart: bool
:param enable_delta_health_evaluation: When true, enables delta health
evaluation rather than absolute health evaluation after completion of each
upgrade domain.
:type enable_delta_health_evaluation: bool
:param monitoring_policy: Describes the parameters for monitoring an
upgrade in Monitored mode.
:type monitoring_policy:
~azure.servicefabric.models.MonitoringPolicyDescription
:param cluster_health_policy: Defines a health policy used to evaluate the
health of the cluster or of a cluster node.
:type cluster_health_policy:
~azure.servicefabric.models.ClusterHealthPolicy
:param cluster_upgrade_health_policy: Defines a health policy used to
evaluate the health of the cluster during a cluster upgrade.
:type cluster_upgrade_health_policy:
~azure.servicefabric.models.ClusterUpgradeHealthPolicyObject
:param application_health_policy_map: Defines a map that contains specific
application health policies for different applications.
Each entry specifies as key the application name and as value an
ApplicationHealthPolicy used to evaluate the application health.
If an application is not specified in the map, the application health
evaluation uses the ApplicationHealthPolicy found in its application
manifest or the default application health policy (if no health policy is
defined in the manifest).
The map is empty by default.
:type application_health_policy_map:
list[~azure.servicefabric.models.ApplicationHealthPolicyMapItem]
"""
_attribute_map = {
'config_version': {'key': 'ConfigVersion', 'type': 'str'},
'code_version': {'key': 'CodeVersion', 'type': 'str'},
'upgrade_kind': {'key': 'UpgradeKind', 'type': 'str'},
'rolling_upgrade_mode': {'key': 'RollingUpgradeMode', 'type': 'str'},
'upgrade_replica_set_check_timeout_in_seconds': {'key': 'UpgradeReplicaSetCheckTimeoutInSeconds', 'type': 'long'},
'force_restart': {'key': 'ForceRestart', 'type': 'bool'},
'enable_delta_health_evaluation': {'key': 'EnableDeltaHealthEvaluation', 'type': 'bool'},
'monitoring_policy': {'key': 'MonitoringPolicy', 'type': 'MonitoringPolicyDescription'},
'cluster_health_policy': {'key': 'ClusterHealthPolicy', 'type': 'ClusterHealthPolicy'},
'cluster_upgrade_health_policy': {'key': 'ClusterUpgradeHealthPolicy', 'type': 'ClusterUpgradeHealthPolicyObject'},
'application_health_policy_map': {'key': 'ApplicationHealthPolicyMap', 'type': '[ApplicationHealthPolicyMapItem]'},
}
def __init__(self, *, config_version: str=None, code_version: str=None, upgrade_kind="Rolling", rolling_upgrade_mode="UnmonitoredAuto", upgrade_replica_set_check_timeout_in_seconds: int=None, force_restart: bool=None, enable_delta_health_evaluation: bool=None, monitoring_policy=None, cluster_health_policy=None, cluster_upgrade_health_policy=None, application_health_policy_map=None, **kwargs) -> None:
super(ClusterUpgradeDescriptionObject, self).__init__(**kwargs)
self.config_version = config_version
self.code_version = code_version
self.upgrade_kind = upgrade_kind
self.rolling_upgrade_mode = rolling_upgrade_mode
self.upgrade_replica_set_check_timeout_in_seconds = upgrade_replica_set_check_timeout_in_seconds
self.force_restart = force_restart
self.enable_delta_health_evaluation = enable_delta_health_evaluation
self.monitoring_policy = monitoring_policy
self.cluster_health_policy = cluster_health_policy
self.cluster_upgrade_health_policy = cluster_upgrade_health_policy
self.application_health_policy_map = application_health_policy_map