Skip to content

delete_virtual_node async

delete_virtual_node(
    virtual_node_name: ResourceName,
    mesh_name: ResourceName,
    *,
    config_overrides: Optional[AsyncAppMeshClientConfig] = None,
    mesh_owner: Optional[AccountId] = None,
) -> DeleteVirtualNodeOutput

Deletes an existing virtual node.

You must delete any virtual services that list a virtual node as a service provider before you can delete the virtual node itself.

Parameters:

  • virtual_node_name (ResourceName) –

    The name of the virtual node to delete.

  • mesh_name (ResourceName) –

    The name of the service mesh to delete the virtual node in.

  • mesh_owner (Optional[AccountId], default: None ) –

    The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with shared meshes.

Raises:

  • BadRequestException –

    The request syntax was malformed. Check your request syntax and try again.

  • ForbiddenException –

    You don't have permissions to perform this action.

  • InternalServerErrorException –

    The request processing has failed because of an unknown error, exception, or failure.

  • NotFoundException –

    The specified resource doesn't exist. Check your request syntax and try again.

  • ResourceInUseException –

    You can't delete the specified resource because it's in use or required by another resource.

  • ServiceUnavailableException –

    The request has failed due to a temporary failure of the service.

  • TooManyRequestsException –

    The maximum request rate permitted by the App Mesh APIs has been exceeded for your account. For best results, use an increasing or variable sleep interval between requests.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_app_mesh/_services/async_app_mesh.py
async def delete_virtual_node(
    self,
    virtual_node_name: "capo_app_mesh.types.resource_name.ResourceName",
    mesh_name: "capo_app_mesh.types.resource_name.ResourceName",
    *,
    config_overrides: Optional[AsyncAppMeshClientConfig] = None,
    mesh_owner: Optional["capo_app_mesh.types.account_id.AccountId"] = None,
) -> "capo_app_mesh.types.delete_virtual_node_output.DeleteVirtualNodeOutput":
    """<p>Deletes an existing virtual node.</p> <p>You must delete any virtual services that list a virtual node as a service provider before you can delete the virtual node itself.</p>

    Args:
        virtual_node_name: <p>The name of the virtual node to delete.</p>
        mesh_name: <p>The name of the service mesh to delete the virtual node in.</p>
        mesh_owner: <p>The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it's the ID of the account that shared the mesh with your account. For more information about mesh sharing, see <a href="https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html">Working with shared meshes</a>.</p>

    Raises:
        capo_app_mesh.errors.bad_request_exception.BadRequestException: <p>The request syntax was malformed. Check your request syntax and try again.</p>
        capo_app_mesh.errors.forbidden_exception.ForbiddenException: <p>You don't have permissions to perform this action.</p>
        capo_app_mesh.errors.internal_server_error_exception.InternalServerErrorException: <p>The request processing has failed because of an unknown error, exception, or failure.</p>
        capo_app_mesh.errors.not_found_exception.NotFoundException: <p>The specified resource doesn't exist. Check your request syntax and try again.</p>
        capo_app_mesh.errors.resource_in_use_exception.ResourceInUseException: <p>You can't delete the specified resource because it's in use or required by another resource.</p>
        capo_app_mesh.errors.service_unavailable_exception.ServiceUnavailableException: <p>The request has failed due to a temporary failure of the service.</p>
        capo_app_mesh.errors.too_many_requests_exception.TooManyRequestsException: <p>The maximum request rate permitted by the App Mesh APIs has been exceeded for your account. For best results, use an increasing or variable sleep interval between requests.</p>
        capo_app_mesh.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_app_mesh.types.delete_virtual_node_input.DeleteVirtualNodeInput]",
    ) -> AsyncOperationResponse[
        "capo_app_mesh.types.delete_virtual_node_output.DeleteVirtualNodeOutput"
    ]:
        import capo_app_mesh._operations.app_mesh.delete_virtual_node

        (
            output,
            http_response,
        ) = await capo_app_mesh._operations.app_mesh.delete_virtual_node.async_delete_virtual_node(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DeleteVirtualNode")
    )
    input_: capo_app_mesh.types.delete_virtual_node_input.DeleteVirtualNodeInput = {
        "virtual_node_name": virtual_node_name,
        "mesh_name": mesh_name,
    }
    if mesh_owner is not None:
        input_["mesh_owner"] = mesh_owner

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