def update_upgrade()

in src/sfctl/custom_cluster_upgrade.py [0:0]


def update_upgrade( #pylint: disable=too-many-locals,missing-docstring,invalid-name,too-many-arguments
        client, upgrade_kind='Rolling', rolling_upgrade_mode='UnmonitoredAuto',
        replica_set_check_timeout=None, force_restart=False,
        failure_action=None, health_check_wait=None, health_check_stable=None,
        health_check_retry=None, upgrade_timeout=None,
        upgrade_domain_timeout=None, warning_as_error=False, unhealthy_nodes=0,
        unhealthy_applications=0, app_type_health_map=None,
        delta_health_evaluation=False, delta_unhealthy_nodes=10,
        upgrade_domain_delta_unhealthy_nodes=15, app_health_map=None,
        timeout=60):
    from azure.servicefabric.models import UpdateClusterUpgradeDescription

    rolling_desc = create_rolling_update_desc(
        rolling_upgrade_mode, force_restart, replica_set_check_timeout,
        failure_action, health_check_wait, health_check_stable,
        health_check_retry, upgrade_timeout, upgrade_domain_timeout
    )
    health_policy = create_cluster_health_policy(
        warning_as_error, unhealthy_nodes, unhealthy_applications,
        app_type_health_map
    )
    upgrade_health_policy = create_upgrade_health_policy(
        delta_unhealthy_nodes, upgrade_domain_delta_unhealthy_nodes
    )
    app_policies = parse_app_health_policy(app_health_map)

    update_desc = UpdateClusterUpgradeDescription(
        upgrade_kind=upgrade_kind, update_description=rolling_desc,
        cluster_health_policy=health_policy,
        enable_delta_health_evaluation=delta_health_evaluation,
        cluster_upgrade_health_policy=upgrade_health_policy,
        application_health_policy_map=app_policies
    )

    client.update_cluster_upgrade(update_desc, timeout=timeout)