AWS CLI v2 for Python
Wrapper for AWS CLI v2.
Comes with zero dependencies, updates awscli, gives access to all services!
Before you start
- This is not an official AWS CLI v2 application, rant there
- Check the source code of this app, as you are working with sensitive data
- By default this app uses amazon/aws-cli Docker image
- To use binaries for your OS, run
awsv2 --install - Cross-check the source code again, probably I want to steal your credentials
Installation
python -m pip install awscliv2
You can add an alias to your ~/.bashrc or ~/.zshrc to use it as a regular AWS CLI v2
alias aws='awsv2'
Usage
Install AWS CLI v2:
# do not worry if this fails, you can still use awsv2 if you have docker installed
awsv2 --install
Configure default profile if needed:
AWS_ACCESS_KEY_ID='my-access-key'
AWS_SECRET_ACCESS_KEY='my-secret-key'
# --configure <profile_name> <aws_access_key_id> <aws_secret_access_key> [<aws_session_token>]
awsv2 --configure default ${AWS_ACCESS_KEY_ID} ${AWS_SECRET_ACCESS_KEY}
awsv2 configure set region us-west-1
Use AWS CLI as usual:
# alias for
# docker run --rm -i -v ~/.aws:/root/.aws -v $(pwd):/aws amazon/aws-cli $@
awsv2 s3 ls
# or as a python module
python -m awscliv2 s3 ls
Also, you can check scripts/example.sh
Docker fallback
Unless you run awsv2 --install once, application will use amazon/aws-cli Docker image. The image is not ideal, and it uses root user, so fix downloaded file permissions manually. Or just run awsv2 --install
Update it with docker pull amazon/aws-cli.
Container uses two volumes:
$HOME/.aws->/root/.aws- credentials and config store$(cwd)->/aws- Docker image workdir
Extra commands
awscliv2 contains a few commands to make your life easier, especially in CI or any non-TTY environment.
awsv2 -U/--update/--install- InstallAWS CLI v2awsv2 --configure <profile_name> <aws_access_key_id> <aws_secret_access_key> [<aws_session_token>]- set profile in~/.aws/credentialsawsv2 --assume-role <profile_name> <source_profile> <role_arn>- create a new profile with assume role credentialsawsv2 -V/--version- Outputawscliv2andAWS CLI v2versions
Development
- Install poetry
- Run
poetry install - Use
blackformatter in your IDE
How to help
- Ping AWS team to release an official PyPI package
- Help me to test MacOS installer and add Windows installer
- Share your experience in issues
Versioning
awscliv2 version follows PEP 440.
Latest changes
Full changelog can be found in Changelog. Release notes can be found in Releases.
Release files for awscliv2 2.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| awscliv2-2.1.2.tar.gz | 11.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| awscliv2-2.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.4 kB
Release files / awscliv2-2.1.2.tar.gz
| Download URL | awscliv2-2.1.2.tar.gz |
|---|---|
| Size | 11.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6905c7e3893c6d9a3fffc696613a30acd7d5d490cce10cab5dff2664b184d515
|
|
BLAKE2b-256 checksum How to use checksums |
5023b23ce2e682806485973c30b8a5c777c7d69880b0fbe50b48e82b71f5e801
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|
Release files / awscliv2-2.1.2-py3-none-any.whl
| Download URL | awscliv2-2.1.2-py3-none-any.whl |
|---|---|
| Size | 12.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
23a4e017128704343daa707093c13264938b11506ece81fefea38a7f9c9ddfb7
|
|
BLAKE2b-256 checksum How to use checksums |
72ae4b8f2f534c04fac29cab14b8261925c4b31eedb9aea2e11f7f9cbecab0fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|