Skip to content

modify_cluster async

modify_cluster(
    cluster_id: ClusterId,
    *,
    config_overrides: Optional[AsyncCloudHSMV2ClientConfig] = None,
    hsm_type: Optional[HsmType] = None,
    backup_retention_policy: Optional[BackupRetentionPolicy] = None,
) -> ModifyClusterResponse

Modifies CloudHSM cluster.

Cross-account use: No. You cannot perform this operation on an CloudHSM cluster in a different Amazon Web Services account.

Parameters:

  • hsm_type (Optional[HsmType], default: None ) –

    The desired HSM type of the cluster.

  • backup_retention_policy (Optional[BackupRetentionPolicy], default: None ) –

    A policy that defines how the service retains backups.

  • cluster_id (ClusterId) –

    The identifier (ID) of the cluster that you want to modify. To find the cluster ID, use DescribeClusters.

Raises:

Source code in docs_src/capo_cloudhsm_v2/_services/async_cloud_hsmv2.py
async def modify_cluster(
    self,
    cluster_id: "capo_cloudhsm_v2.types.cluster_id.ClusterId",
    *,
    config_overrides: Optional[AsyncCloudHSMV2ClientConfig] = None,
    hsm_type: Optional["capo_cloudhsm_v2.types.hsm_type.HsmType"] = None,
    backup_retention_policy: Optional[
        "capo_cloudhsm_v2.types.backup_retention_policy.BackupRetentionPolicy"
    ] = None,
) -> "capo_cloudhsm_v2.types.modify_cluster_response.ModifyClusterResponse":
    """<p>Modifies CloudHSM cluster.</p> <p> <b>Cross-account use:</b> No. You cannot perform this operation on an CloudHSM cluster in a different Amazon Web Services account.</p>

    Args:
        hsm_type: <p>The desired HSM type of the cluster.</p>
        backup_retention_policy: <p>A policy that defines how the service retains backups.</p>
        cluster_id: <p>The identifier (ID) of the cluster that you want to modify. To find the cluster ID, use <a>DescribeClusters</a>.</p>

    Raises:
        capo_cloudhsm_v2.errors.cloud_hsm_access_denied_exception.CloudHsmAccessDeniedException: <p>The request was rejected because the requester does not have permission to perform the requested operation.</p>
        capo_cloudhsm_v2.errors.cloud_hsm_internal_failure_exception.CloudHsmInternalFailureException: <p>The request was rejected because of an CloudHSM internal failure. The request can be retried.</p>
        capo_cloudhsm_v2.errors.cloud_hsm_invalid_request_exception.CloudHsmInvalidRequestException: <p>The request was rejected because it is not a valid request.</p>
        capo_cloudhsm_v2.errors.cloud_hsm_resource_not_found_exception.CloudHsmResourceNotFoundException: <p>The request was rejected because it refers to a resource that cannot be found.</p>
        capo_cloudhsm_v2.errors.cloud_hsm_service_exception.CloudHsmServiceException: <p>The request was rejected because an error occurred.</p>
        capo_cloudhsm_v2.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_cloudhsm_v2.types.modify_cluster_request.ModifyClusterRequest]",
    ) -> AsyncOperationResponse[
        "capo_cloudhsm_v2.types.modify_cluster_response.ModifyClusterResponse"
    ]:
        import capo_cloudhsm_v2._operations.baldr_api_service.modify_cluster

        (
            output,
            http_response,
        ) = await capo_cloudhsm_v2._operations.baldr_api_service.modify_cluster.async_modify_cluster(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("ModifyCluster")
    )
    input_: capo_cloudhsm_v2.types.modify_cluster_request.ModifyClusterRequest = {
        "cluster_id": cluster_id
    }
    if hsm_type is not None:
        input_["hsm_type"] = hsm_type
    if backup_retention_policy is not None:
        input_["backup_retention_policy"] = backup_retention_policy

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output