Skip to main content

Easy interaction with AWS ECR from a CLI

Project description

awsecr

CLI to interact with AWS ECR service.

Description

awsecr is a Python module that allows an end user to access an AWS ECR repository to do the following:

  • pull/push images
  • list available repositories
  • list available images per repository, summarizing all founded vulnerabilities.

Authentication between AWS ECR and the local Docker client is automatic.

See TODO.txt for next planned features.

Samples outputs

The output samples will roughly look like the ones generated at the terminal by the CLI. Expect to have better output in the terminal.

Listing repositories available:

$ awsecr repos
┌ All ECR repositories ────────────┬───────────────────────────────────────────────────────────────────────────────────┬─────────────┐
│ Name                               │ URI                                                                             │ Tag Mutability │ Scan on push? │
├───────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────┼────────────┤
│ nodejs                             │ 012345678910.dkr.ecr.us-east-1.amazonaws.com/nodejs                             │ IMMUTABLE      │ True          │
│ spark-py                           │ 012345678910.dkr.ecr.us-east-1.amazonaws.com/spark-py                           │ MUTABLE        │ False         │
│ hive-metastore                     │ 012345678910.dkr.ecr.us-east-1.amazonaws.com/hive-metastore                     │ IMMUTABLE      │ True          │
└──────────────────────────────┴────────────────────────────────────────────────────────────────────────────────────┴────────────┘

Listing images from a repository:

┌ Docker images at api-foobar123  ────────────────────────────┬───────────┬───────────┬───────────────────────┬─────────────────┐
│ Image                                                            │ Scan status │ Size (MB)   │ Pushed at                 │ Vulnerabilities    │
├────────────────────────────────────────────────────────┼───────────┼───────────┼───────────────────────┼─────────────────┤
│ 012345678910.dkr.ecr.us-east-1.amazonaws.com/api-foobar123:1.3.5 │ COMPLETE    │ 205.1       │ 2021-12-09 18:06:20-03:00 │ 1/10/118/51/274/22 │
│ 012345678910.dkr.ecr.us-east-1.amazonaws.com/api-foobar123:1.3.6 │ COMPLETE    │ 133.8       │ 2021-12-09 15:42:28-03:00 │ 1/10/118/51/274/22 │
└────────────────────────────────────────────────────────────────────┴───────────┴───────────────────────┴─────────────────┘

Except that the Vulnerabilities column will have 1/10/118/51/274/22 as values in the terminal. Colors goes from highest severity to lesser, left to right.

How to install

The preferred way is to install it from https://pypi.org with:

pip install awsecr

How to use it

You can check the awsecr CLI online help:

$ awsecr -h
usage: awsecr [OPERATION]

Easier interaction with AWS ECR to manage Docker images.

positional arguments:
  {repos,image}      the desired operation with the registry.

optional arguments:
  -h, --help         show this help message and exit.
  --image IMAGE      the local Docker image to use together with the image --push sub operation.
  --list REPOSITORY  sub operation for "image" operation. List all images from the repository.
  --push REPOSITORY  sub operation for "image" operation. Pushes a Docker image to the repository.

The "repos" operation requires no additional options. It lists the available
ECR repositories for the current AWS user credentials.

References

Other open source projects that are related to awsecr:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

awsecr-0.4.0.tar.gz (21.3 kB view details)

Uploaded Source

Built Distribution

awsecr-0.4.0-py2.py3-none-any.whl (21.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file awsecr-0.4.0.tar.gz.

File metadata

  • Download URL: awsecr-0.4.0.tar.gz
  • Upload date:
  • Size: 21.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for awsecr-0.4.0.tar.gz
Algorithm Hash digest
SHA256 9201f6a7c449ccc063b86e141c98888bb01b596deddf65e002b8a1a59638d20c
MD5 dc6ed572cad3939bf82205b9fcbb56d9
BLAKE2b-256 7c39a5689ab55fc2d9fcf6f05f8df433d5d052832ba8af982ab098d92e981f97

See more details on using hashes here.

File details

Details for the file awsecr-0.4.0-py2.py3-none-any.whl.

File metadata

  • Download URL: awsecr-0.4.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 21.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for awsecr-0.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f83e71b8c43549ac0c77ba19dadb3cfdb2196bae1f4ce3343c34e22a76666a54
MD5 2f44b844f655b7460059580730767c38
BLAKE2b-256 5e15bd26565cb906c4b80f8d4f1829f3b4c5c70129daf5506aa2e2ffd8a45918

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page