Delete old images tag inside ECR repository
Project description
ECR lifecycle (Alpha)
Delete old images inside ECR repository using python and boto3
Table of Contents generated with DocToc
Requirements
- python3
- pip3
Credentials
Credentials will be taken from your AWS_PROFILE in your terminal when you execute this python script.
$ aws configure
$ export AWS_PROFILE="myprofile" # will be set in the terminal where you'll execute the python script
Installation
This tool is available in pypip package, so you can install it using your command line:
$ pip3 install ecr-lifecycle
Usage
Dry run
$ ecr-lifecycle -a 90 -r eu-west-1 -n repository/test/repo_name -l INFO
Delete images
$ ecr-lifecycle -a 90 -r eu-west-1 -n repository/test/repo_name -l INFO -d
Parameters
- -a: max age of the image(default: 30 days)
- -r: aws region
- -n: ECR repository name
- -l: level info (default: INFO)
- -d: (delete) execute the operation and delete images. Is destructive! Execute the cli first without '-d' in dry_run mode
Example
TO DO
You can store about 10mil images in a single ECR repository. Imagine, you have 2000mil images older than 90 days and you want to delete it. When you execute the program, the client of boto3 only returns a max of 1000 values, so you need to launch the program two times.
client = boto3.client('ecr', region_name=args.aws_region)
images = client.describe_images(
repositoryName=args.repository_name,
maxResults=1000, # here, limit of max results 1000
)
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ecr-lifecycle-0.1.1.tar.gz
.
File metadata
- Download URL: ecr-lifecycle-0.1.1.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc7ec3fb9b1d0a93dc64260655e7c8201f8cf54adde37e9cad286ecb95730e36 |
|
MD5 | b83b78afe18afe2aca1040836cda010e |
|
BLAKE2b-256 | 24be6f86aba5515d9134a5f07abacd48f2a7b6ca7f30aa2914df90d2377d9248 |
File details
Details for the file ecr_lifecycle-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: ecr_lifecycle-0.1.1-py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb82cbef473c7ce9e9b0a2d83b492f3d58d9e335184f9e2ab57d6e20bfb84e73 |
|
MD5 | ed4bd1049fab0b8eaa8592f1e19c2d1f |
|
BLAKE2b-256 | d98f8203fc38a49b8cf2c6d0586bd4d87a3abaf887bc28d3c01bbcd49e9e5ac1 |