AWS ECS Cli tool for connecting to ecs container and update secret manager
Project description
aws-ecs-exec-command-cli
AWS ECS Exec command cli tool is aimed to :
- connect to your container instance running under ECS Fargate.
- tail the log from cloudwatch logs (if you configure a logconfiguration in your task definition)
- update secret value into secret manager
The aws ecs execute-command
command is quite complicated to remember and the tool give you the ability to parse and retrieve:
- your clusters
- your services
- your tasks
- your container
To let you choose which one you want to connect into.
Enhancements You can now connect to ECS and tail your logs from an EC2 instance or AWS CloudShell without the need of aws cli and aws credentials file.
At start, you are asked what kind of credentials you want to use and which default region.
You can now also update your secret directly from the command line.
❯ python -m ecs_connect update-secret your-secret-name
Installation
Requirements
-
Install awscli via [https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html] (not necessary if you are connected to an EC2 instance)
-
Install ssm tools via [https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html]
You should install the requirements via the pip install below.
Create a virtualenv with python >= 3.9
source .venv_3.11.0/bin/activate
pip install ecs-connect-cli
if it is the first time you connect to aws-cli, you have to get credentials key from your aws administrator.
Usage
❯ python -m ecs_connect --help
Welcome in AWS ECS Exec command Cli !
Usage: ecs_connect [OPTIONS] COMMAND [ARGS]...
╭─ Options ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --version -v Show the application's version and exit. │
│ --install-completion Install completion for the current shell. │
│ --show-completion Show completion for the current shell, to copy it or customize the installation. │
│ --help Show this message and exit. │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ connect Connect to an ECS Fargate container │
│ exec-command Execute manage.py command with args │
│ list-cluster List cluster into an AWS account │
│ list-service List service(s) into a cluster │
│ list-task List task(s) into a service into a cluster │
│ tail Tail logs of a selected ECS container │
| update-secret Update secret from secret manager |
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Thanks to Typer from @tiangolo
Thanks to @kraymer for echoprompt :sunglasses:
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
Hashes for ecs_connect_cli-1.8.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f60b6138b7bab533f805fa8681e3f6f7782be97414954369c65501eeac88ce62 |
|
MD5 | 6052492f9c679ed4abed84ef97f24c59 |
|
BLAKE2b-256 | 8fd6264f65a6b9856648352d68b696c06f28f4e880e7abf96e37ca1293181289 |