Esx Settings Clusters Vms LifecycleHooks processDynamicUpdate

Esx Settings Clusters Vms LifecycleHooks processDynamicUpdate

Updates dynamically the desired state specification and applies it for the solution. Dynamically updating the desired state is not supported for ongoing remediation operations that are using ClusterSolutionsApplyFilterSpec#deploymentUnits.

The given Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec.vm is reconfigured by the system to match the selection criteria specified in the given Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec.alternative_vm_spec.

This method can be invoked only when the Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec.vm is in the given Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec.lifecycle_state.

This operation is part of the ongoing remediation operation. Any failures of the dynamic apply will result in failure of the ongoing remediation operation task.

Any failure to apply the given Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec will result in failure of the ongoing remediation with Status#ISSUE and IssueType#VM_LIFECYCLE_HOOK_DYNAMIC_UPDATE_FAILED for the given Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec.vm.

To monitor the outcome use POST /esx/settings/clusters/{cluster}/vms/solutions?action=check-compliance method. When the dynamic update is completed, the property Esx Settings Clusters Vms LifecycleHookInfo.dynamic_update_processed is updated to True, for the given Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec.lifecycle_state of the given Esx Settings Clusters Vms LifecycleHooks DynamicUpdateSpec.vm.

This method does not process the hook for a given Esx Settings Clusters Vms LifecycleState. Use POST /esx/settings/clusters/{cluster}/vms/lifecycle-hooks?action=mark-as-processed method to process the hook.

This method is skipped if the client invokes POST /esx/settings/clusters/{cluster}/vms/lifecycle-hooks?action=mark-as-processed method for a given Esx Settings Clusters Vms LifecycleState.

This operation was added in vSphere API 9.1.0.0.

Request
URI
POST
https://{host}/api/esx/settings/clusters/{cluster}/vms/lifecycle-hooks?action=process-dynamic-update
COPY
Path Parameters
string
cluster
Required

Identifier of the cluster.

The parameter must be an identifier for the resource type: ClusterComputeResource.


Request Body

Specification for dynamic update processing.

Show optional properties

{
    "vm": "string",
    "solution": "string",
    "lifecycle_state": "string"
}
{
    "vm": "string",
    "solution": "string",
    "lifecycle_state": "string",
    "alternative_vm_spec": {
        "selection_criteria": {
            "selection_type": "string",
            "extra_config_value": "string"
        },
        "devices": {}
    }
}
string
vm
Required

Identifier of the VM whose Esx Settings Clusters Vms LifecycleState hook needs a dynamic update to be processed.

This property was added in vSphere API 9.1.0.0.

When clients pass a value of this schema as a parameter, the property must be an identifier for the resource type: VirtualMachine. When operations return a value of this schema as a response, the property will be an identifier for the resource type: VirtualMachine.

string
solution
Required

Identifier of the Solution whose Esx Settings Clusters Vms LifecycleState hook needs a dynamic update to be processed.

This property was added in vSphere API 9.1.0.0.

When clients pass a value of this schema as a parameter, the property must be an identifier for the resource type: com.vmware.esx.settings.vms.SystemVmSolution. When operations return a value of this schema as a response, the property will be an identifier for the resource type: com.vmware.esx.settings.vms.SystemVmSolution.

string
lifecycle_state
Required

Expected lifecycle state of the VM specified by the {#member vm} whose hook needs a dynamic update to be processed.

For more information see: Esx Settings Clusters Vms LifecycleState.

This property was added in vSphere API 9.1.0.0.

alternative_vm_spec
Optional

Alternative VM spec to be applied to the given {#member vm} while in the given {member# lifecycleState}.

If the provided {member# alternativeVmSpec} is not present in the solution desired state specification (i.e. extraConfigValue is not present in @link ClusterSolutionSpec#alternativeVmSpecs}), vLCM will add the {member# alternativeVmSpec} to the Esx Settings Clusters Vms ClusterSolutionSpec.alternative_vm_specs.

If the provided {member# alternativeVmSpec} already exists in the solution desired state specification (i.e. extraConfigValue is present in @link ClusterSolutionSpec#alternativeVmSpecs}), the {#member alternativeVmSpec} is overridden in the Esx Settings Clusters Vms ClusterSolutionSpec.alternative_vm_specs.

This property was added in vSphere API 9.1.0.0.

If missing or null no Esx Settings Clusters Vms AlternativeVmSpec will be applied for the {member# vm} and the Esx Settings Clusters Vms ClusterSolutionSpec.alternative_vm_specs will be unchanged.

Authentication
This operation uses the following authentication methods.
Responses
204

Success!

Operation doesn't return any data structure

400

Vapi Std Errors InvalidArgument If the spec specifies an invalid argument. For example thrown if a VM that is specified within the spec is not present in the system.

Vapi Std Errors Unsupported If the cluster associated with cluster is not managed by vLCM.

Vapi Std Errors NotAllowedInCurrentState If there is no ongoing remediation operation for the given cluster and solution.

Returns Vapi Std Errors Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": {
                        "id": "string",
                        "params": {
                            "params": "Vapi Std LocalizationParam Object"
                        }
                    },
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}
array of object
messages
Required

Stack of one or more localizable messages for human error consumers.

The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully.

Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The Vapi Std Errors ArgumentLocations, Vapi Std Errors FileLocations, and Vapi Std Errors TransientIndication schemas are intended as possible values for this property. Vapi Std DynamicID may also be useful as a value for this property (although that is not its primary purpose). Some resources may provide their own specific schemas for use as the value of this property when reporting errors from their operations.

Some operations will not set this property when reporting errors.

string
error_type
Required

Discriminator field to help API consumers identify the structure type.

For more information see: Vapi Std Errors Error Type.

This property was added in vSphere API 6.7.2.

Can be missing or null for compatibility with preceding implementations.


401

If the caller is not authenticated.

Returns Vapi Std Errors Unauthenticated of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string",
    "challenge": "string"
}
string
challenge
Optional

Indicates the authentication challenges applicable to the target API provider. It can be used by a client to discover the correct authentication scheme to use. The exact syntax of the value is defined by the specific provider, the protocol and authentication schemes used.

For example, a provider using REST may adhere to the WWW-Authenticate HTTP header specification, RFC7235, section 4.1. In this case an example challenge value may be: SIGN realm="27da1358-2ba4-11e9-b210-d663bd873d93",sts="http://vcenter/sso?vsphere.local", Basic realm="vCenter"

This property was added in vSphere API 7.0.0.0.

This property is optional because it was added in a newer version than its parent node.


403

If the user doesn't have the required privileges.

Returns Vapi Std Errors Unauthorized of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string",
    "challenge": "string"
}
string
challenge
Optional

Indicates the authentication challenges applicable to the target API provider. It can be used by a client to discover the correct authentication scheme to use. The exact syntax of the value is defined by the specific provider, the protocol and authentication schemes used.

For example, a provider using REST may adhere to the WWW-Authenticate HTTP header specification, RFC7235, section 4.1. In this case an example challenge value may be: SIGN realm="27da158-2ba4-11e9-b",sts="http://vcenter/sso?vsphere.local", Basic realm="vCenter"

This property was added in vSphere API 9.1.0.0.

This property is optional because it was added in a newer version than its parent node.


404

If there is no cluster associated with cluster in the system or no solution associated with solution in the cluster.

Returns Vapi Std Errors NotFound of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}

500

If there is an unknown internal error. The accompanying error message will give more details about the failure.

Returns Vapi Std Errors Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}
array of object
messages
Required

Stack of one or more localizable messages for human error consumers.

The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully.

Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The Vapi Std Errors ArgumentLocations, Vapi Std Errors FileLocations, and Vapi Std Errors TransientIndication schemas are intended as possible values for this property. Vapi Std DynamicID may also be useful as a value for this property (although that is not its primary purpose). Some resources may provide their own specific schemas for use as the value of this property when reporting errors from their operations.

Some operations will not set this property when reporting errors.

string
error_type
Required

Discriminator field to help API consumers identify the structure type.

For more information see: Vapi Std Errors Error Type.

This property was added in vSphere API 6.7.2.

Can be missing or null for compatibility with preceding implementations.


503

If the service is not available.

Returns Vapi Std Errors ServiceUnavailable of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}

Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{"lifecycle_state":"string","solution":"string","vm":"string"}' https://{api_host}/api/esx/settings/clusters/{cluster}/vms/lifecycle-hooks?action=process-dynamic-update