ECR / Client / delete_repository

delete_repository#

ECR.Client.delete_repository(**kwargs)#

Deletes a repository. If the repository isn’t empty, you must either delete the contents of the repository or use the force option to delete the repository and have Amazon ECR delete all of its contents on your behalf.

See also: AWS API Documentation

Request Syntax

response = client.delete_repository(
    registryId='string',
    repositoryName='string',
    force=True|False
)
Parameters:
  • registryId (string) – The Amazon Web Services account ID associated with the registry that contains the repository to delete. If you do not specify a registry, the default registry is assumed.

  • repositoryName (string) –

    [REQUIRED]

    The name of the repository to delete.

  • force (boolean) – If true, deleting the repository force deletes the contents of the repository. If false, the repository must be empty before attempting to delete it.

Return type:

dict

Returns:

Response Syntax

{
    'repository': {
        'repositoryArn': 'string',
        'registryId': 'string',
        'repositoryName': 'string',
        'repositoryUri': 'string',
        'createdAt': datetime(2015, 1, 1),
        'imageTagMutability': 'MUTABLE'|'IMMUTABLE',
        'imageScanningConfiguration': {
            'scanOnPush': True|False
        },
        'encryptionConfiguration': {
            'encryptionType': 'AES256'|'KMS',
            'kmsKey': 'string'
        }
    }
}

Response Structure

  • (dict) –

    • repository (dict) –

      The repository that was deleted.

      • repositoryArn (string) –

        The Amazon Resource Name (ARN) that identifies the repository. The ARN contains the arn:aws:ecr namespace, followed by the region of the repository, Amazon Web Services account ID of the repository owner, repository namespace, and repository name. For example, arn:aws:ecr:region:012345678910:repository-namespace/repository-name.

      • registryId (string) –

        The Amazon Web Services account ID associated with the registry that contains the repository.

      • repositoryName (string) –

        The name of the repository.

      • repositoryUri (string) –

        The URI for the repository. You can use this URI for container image push and pull operations.

      • createdAt (datetime) –

        The date and time, in JavaScript date format, when the repository was created.

      • imageTagMutability (string) –

        The tag mutability setting for the repository.

      • imageScanningConfiguration (dict) –

        The image scanning configuration for a repository.

        • scanOnPush (boolean) –

          The setting that determines whether images are scanned after being pushed to a repository. If set to true, images will be scanned after being pushed. If this parameter is not specified, it will default to false and images will not be scanned unless a scan is manually started with the API_StartImageScan API.

      • encryptionConfiguration (dict) –

        The encryption configuration for the repository. This determines how the contents of your repository are encrypted at rest.

        • encryptionType (string) –

          The encryption type to use.

          If you use the KMS encryption type, the contents of the repository will be encrypted using server-side encryption with Key Management Service key stored in KMS. When you use KMS to encrypt your data, you can either use the default Amazon Web Services managed KMS key for Amazon ECR, or specify your own KMS key, which you already created. For more information, see Protecting data using server-side encryption with an KMS key stored in Key Management Service (SSE-KMS) in the Amazon Simple Storage Service Console Developer Guide.

          If you use the AES256 encryption type, Amazon ECR uses server-side encryption with Amazon S3-managed encryption keys which encrypts the images in the repository using an AES-256 encryption algorithm. For more information, see Protecting data using server-side encryption with Amazon S3-managed encryption keys (SSE-S3) in the Amazon Simple Storage Service Console Developer Guide.

        • kmsKey (string) –

          If you use the KMS encryption type, specify the KMS key to use for encryption. The alias, key ID, or full ARN of the KMS key can be specified. The key must exist in the same Region as the repository. If no key is specified, the default Amazon Web Services managed KMS key for Amazon ECR will be used.

Exceptions

  • ECR.Client.exceptions.ServerException

  • ECR.Client.exceptions.InvalidParameterException

  • ECR.Client.exceptions.RepositoryNotFoundException

  • ECR.Client.exceptions.RepositoryNotEmptyException

  • ECR.Client.exceptions.KmsException

Examples

This example force deletes a repository named ubuntu in the default registry for an account. The force parameter is required if the repository contains images.

response = client.delete_repository(
    force=True,
    repositoryName='ubuntu',
)

print(response)

Expected Output:

{
    'repository': {
        'registryId': '012345678901',
        'repositoryArn': 'arn:aws:ecr:us-west-2:012345678901:repository/ubuntu',
        'repositoryName': 'ubuntu',
    },
    'ResponseMetadata': {
        '...': '...',
    },
}