Skip to content

start_deployment

start_deployment(
    service_arn: AppRunnerResourceArn,
    *,
    config_overrides: Optional[AppRunnerClientConfig] = None,
) -> StartDeploymentResponse

Initiate a manual deployment of the latest commit in a source code repository or the latest image in a source image repository to an App Runner service.

For a source code repository, App Runner retrieves the commit and builds a Docker image. For a source image repository, App Runner retrieves the latest Docker image. In both cases, App Runner then deploys the new image to your service and starts a new container instance.

This is an asynchronous operation. On a successful call, you can use the returned OperationId and the ListOperations call to track the operation's progress.

Parameters:

  • service_arn (AppRunnerResourceArn) –

    The Amazon Resource Name (ARN) of the App Runner service that you want to manually deploy to.

Raises:

Source code in docs_src/capo_apprunner/_services/app_runner.py
def start_deployment(
    self,
    service_arn: "capo_apprunner.types.app_runner_resource_arn.AppRunnerResourceArn",
    *,
    config_overrides: Optional[AppRunnerClientConfig] = None,
) -> "capo_apprunner.types.start_deployment_response.StartDeploymentResponse":
    """<p>Initiate a manual deployment of the latest commit in a source code repository or the latest image in a source image repository to an App Runner service.</p> <p>For a source code repository, App Runner retrieves the commit and builds a Docker image. For a source image repository, App Runner retrieves the latest Docker image. In both cases, App Runner then deploys the new image to your service and starts a new container instance.</p> <p>This is an asynchronous operation. On a successful call, you can use the returned <code>OperationId</code> and the <a>ListOperations</a> call to track the operation's progress.</p>

    Args:
        service_arn: <p>The Amazon Resource Name (ARN) of the App Runner service that you want to manually deploy to.</p>

    Raises:
        capo_apprunner.errors.internal_service_error_exception.InternalServiceErrorException: <p>An unexpected service exception occurred.</p>
        capo_apprunner.errors.invalid_request_exception.InvalidRequestException: <p>One or more input parameters aren't valid. Refer to the API action's document page, correct the input parameters, and try the action again.</p>
        capo_apprunner.errors.resource_not_found_exception.ResourceNotFoundException: <p>A resource doesn't exist for the specified Amazon Resource Name (ARN) in your Amazon Web Services account.</p>
        capo_apprunner.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_apprunner.types.start_deployment_request.StartDeploymentRequest]",
    ) -> OperationResponse[
        "capo_apprunner.types.start_deployment_response.StartDeploymentResponse"
    ]:
        import capo_apprunner._operations.app_runner.start_deployment

        output, http_response = (
            capo_apprunner._operations.app_runner.start_deployment.start_deployment(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("StartDeployment")
    )
    input_: capo_apprunner.types.start_deployment_request.StartDeploymentRequest = {
        "service_arn": service_arn
    }

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output