Skip to content

update_mesh async

update_mesh(
    mesh_name: ResourceName,
    *,
    config_overrides: Optional[AsyncAppMeshClientConfig] = None,
    spec: Optional[MeshSpec] = None,
    client_token: Optional[str] = None,
) -> UpdateMeshOutput

Updates an existing service mesh.

Parameters:

  • mesh_name (ResourceName) –

    The name of the service mesh to update.

  • spec (Optional[MeshSpec], default: None ) –

    The service mesh specification to apply.

  • client_token (Optional[str], default: None ) –

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Up to 36 letters, numbers, hyphens, and underscores are allowed.

Raises:

  • BadRequestException –

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

  • ConflictException –

    The request contains a client token that was used for a previous update resource call with different specifications. Try the request again with a new client token.

  • 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.

  • 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 update_mesh(
    self,
    mesh_name: "capo_app_mesh.types.resource_name.ResourceName",
    *,
    config_overrides: Optional[AsyncAppMeshClientConfig] = None,
    spec: Optional["capo_app_mesh.types.mesh_spec.MeshSpec"] = None,
    client_token: Optional[str] = None,
) -> "capo_app_mesh.types.update_mesh_output.UpdateMeshOutput":
    """<p>Updates an existing service mesh.</p>

    Args:
        mesh_name: <p>The name of the service mesh to update.</p>
        spec: <p>The service mesh specification to apply.</p>
        client_token: <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Up to 36 letters, numbers, hyphens, and underscores are allowed.</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.conflict_exception.ConflictException: <p>The request contains a client token that was used for a previous update resource call with different specifications. Try the request again with a new client token.</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.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.update_mesh_input.UpdateMeshInput]",
    ) -> AsyncOperationResponse[
        "capo_app_mesh.types.update_mesh_output.UpdateMeshOutput"
    ]:
        import capo_app_mesh._operations.app_mesh.update_mesh

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

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateMesh")
    )
    input_: capo_app_mesh.types.update_mesh_input.UpdateMeshInput = {
        "mesh_name": mesh_name
    }
    if spec is not None:
        input_["spec"] = spec
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token

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