Skip to content

update_app_version_app_component async

update_app_version_app_component(
    app_arn: Arn,
    id: String255,
    *,
    config_overrides: Optional[AsyncresiliencehubClientConfig] = None,
    name: Optional[String255] = None,
    type: Optional[String255] = None,
    additional_info: Optional[AdditionalInfoMap] = None,
) -> UpdateAppVersionAppComponentResponse

Updates an existing Application Component in the Resilience Hub application.

This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Parameters:

  • app_arn (Arn) –

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • id (String255) –

    Identifier of the Application Component.

  • name (Optional[String255], default: None ) –

    Name of the Application Component.

  • type (Optional[String255], default: None ) –

    Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

  • additional_info (Optional[AdditionalInfoMap], default: None ) –

    Currently, there is no supported additional information for Application Components.

Raises:

  • AccessDeniedException –

    You don't have permissions to perform the requested operation. The user or role that is making the request must have at least one IAM permissions policy attached that grants the required permissions.

  • ConflictException –

    This exception occurs when a conflict with a previous successful write is detected. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.

  • InternalServerException –

    This exception occurs when there is an internal failure in the Resilience Hub service.

  • ResourceNotFoundException –

    This exception occurs when the specified resource could not be found.

  • ThrottlingException –

    This exception occurs when you have exceeded the limit on the number of requests per second.

  • ValidationException –

    This exception occurs when a request is not valid.

  • UnknownServiceError –

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

Source code in docs_src/capo_resiliencehub/_services/async_resiliencehub.py
async def update_app_version_app_component(
    self,
    app_arn: "capo_resiliencehub.types.arn.Arn",
    id: "capo_resiliencehub.types.string255.String255",
    *,
    config_overrides: Optional[AsyncresiliencehubClientConfig] = None,
    name: Optional["capo_resiliencehub.types.string255.String255"] = None,
    type: Optional["capo_resiliencehub.types.string255.String255"] = None,
    additional_info: Optional[
        "capo_resiliencehub.types.additional_info_map.AdditionalInfoMap"
    ] = None,
) -> "capo_resiliencehub.types.update_app_version_app_component_response.UpdateAppVersionAppComponentResponse":
    """<p>Updates an existing Application Component in the Resilience Hub application.</p> <note> <p>This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the <code>PublishAppVersion</code> API.</p> </note>

    Args:
        app_arn: <p>Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:<code>partition</code>:resiliencehub:<code>region</code>:<code>account</code>:app/<code>app-id</code>. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html"> Amazon Resource Names (ARNs)</a> in the <i>Amazon Web Services General Reference</i> guide.</p>
        id: <p>Identifier of the Application Component.</p>
        name: <p>Name of the Application Component.</p>
        type: <p>Type of Application Component. For more information about the types of Application Component, see <a href="https://docs.aws.amazon.com/resilience-hub/latest/userguide/AppComponent.grouping.html">Grouping resources in an AppComponent</a>.</p>
        additional_info: <p>Currently, there is no supported additional information for Application Components.</p>

    Raises:
        capo_resiliencehub.errors.access_denied_exception.AccessDeniedException: <p>You don't have permissions to perform the requested operation. The user or role that is making the request must have at least one IAM permissions policy attached that grants the required permissions.</p>
        capo_resiliencehub.errors.conflict_exception.ConflictException: <p>This exception occurs when a conflict with a previous successful write is detected. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.</p>
        capo_resiliencehub.errors.internal_server_exception.InternalServerException: <p>This exception occurs when there is an internal failure in the Resilience Hub service.</p>
        capo_resiliencehub.errors.resource_not_found_exception.ResourceNotFoundException: <p>This exception occurs when the specified resource could not be found.</p>
        capo_resiliencehub.errors.throttling_exception.ThrottlingException: <p>This exception occurs when you have exceeded the limit on the number of requests per second.</p>
        capo_resiliencehub.errors.validation_exception.ValidationException: <p>This exception occurs when a request is not valid.</p>
        capo_resiliencehub.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_resiliencehub.types.update_app_version_app_component_request.UpdateAppVersionAppComponentRequest]",
    ) -> AsyncOperationResponse[
        "capo_resiliencehub.types.update_app_version_app_component_response.UpdateAppVersionAppComponentResponse"
    ]:
        import capo_resiliencehub._operations.aws_resilience_hub.update_app_version_app_component

        (
            output,
            http_response,
        ) = await capo_resiliencehub._operations.aws_resilience_hub.update_app_version_app_component.async_update_app_version_app_component(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateAppVersionAppComponent")
    )
    input_: capo_resiliencehub.types.update_app_version_app_component_request.UpdateAppVersionAppComponentRequest = {
        "app_arn": app_arn,
        "id": id,
    }
    if name is not None:
        input_["name"] = name
    if type is not None:
        input_["type"] = type
    if additional_info is not None:
        input_["additional_info"] = additional_info

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