Batch / Client / cancel_job

cancel_job

Batch.Client.cancel_job(**kwargs)

Cancels a job in an Batch job queue. Jobs that are in a SUBMITTED, PENDING, or RUNNABLE state are cancelled and the job status is updated to FAILED.

Note

A PENDING job is cancelled after all dependency jobs are completed. Therefore, it might take longer than expected to cancel a job in PENDING status.

When you try to cancel an array parent job in PENDING, Batch attempts to cancel all child jobs. The array parent job is cancelled when all child jobs are completed.

Jobs that progressed to the STARTING or RUNNING state aren’t cancelled. However, the API operation still succeeds, even if no job is cancelled. These jobs must be terminated with the TerminateJob or TerminateJobs operation.

See also: AWS API Documentation

Request Syntax

response = client.cancel_job(
    jobId='string',
    reason='string'
)
Parameters:
  • jobId (string) –

    [REQUIRED]

    The Batch job ID of the job to cancel.

  • reason (string) –

    [REQUIRED]

    A message to attach to the job that explains the reason for cancelling it. This message is returned by future DescribeJobs operations on the job. It is also recorded in the Batch activity logs.

    This parameter has a limit of 1024 characters.

Return type:

dict

Returns:

Response Syntax

{}

Response Structure

  • (dict) –

Exceptions

  • Batch.Client.exceptions.ClientException

  • Batch.Client.exceptions.ServerException

Examples

This example cancels a job with the specified job ID.

response = client.cancel_job(
    jobId='1d828f65-7a4d-42e8-996d-3b900ed59dc4',
    reason='Cancelling job.',
)

print(response)

Expected Output:

{
    'ResponseMetadata': {
        '...': '...',
    },
}