Skip to main content

A menu system for AWS CLI.

Why

I got tired of running 3 to 4 different browsers to manage AWS accounts, and decided to do everything command-line with boto3 and AWS CLI.

Note: This is still a work in progress, but continue to check-in because I’m trying to add new functionality daily. I hope to have a polished product in several months.

Requirements

  • pyyaml

  • six

  • jinja2

  • boto3

Example

+------------------------------------------------------------------------------
Main Menu
+------------------------------------------------------------------------------
[1] | All/General/Other
[2] | API Gateway
[3] | Cloud Formation
[4] | Cloud Watch
[5] | Dynamo DB
[6] | EC2
[7] | Elastic Cache
[8] | IAM
[9] | RDS
[10] | Route53
[11] | S3
[12] | SNS
[13] | SQS
[14] | Support
[15] | Tags
[16] | VPC
+------+-----------------------------------------------------------------------
[0] | Quit
+------------------------------------------------------------------------------

Installation

pip install aws-cli-menu. This will install the scripts in /usr/share/aws-cli-menu folder.

Note: Install manually with ‘sudo -H python setup.py install’ if not installing with pip.

Note: Make sure your ~/.aws config and credentials files are setup correctly with the profile to the various AWS instances.

Example config:

[default]
output = json
region = us-east-1

[profile test1]
output = json
region = us-east-1

[profile test2]
output = json
region = us-east-1

Example credentials:

[default]
aws_access_key_id = xxx
aws_secret_access_key = xxx

[test1]
aws_access_key_id = xxx
aws_secret_access_key = xxx

[test2]
aws_access_key_id = xx
aws_secret_access_key = xxx

For script usage, run the following command:

aws-cli-menu

Configuration

If you want to add more scripts or modify the menu, got to /usr/share/aws-cli-menu and edit the aws-cli-menu.yml file and add the scripts to the scripts directory.

It is best to follow the same yml format in the menu file, and the same format in the bash scripts.

Updates

  • 12/21/15 - Added ability to manage group policies

  • 12/22/15 - Added ability to manage user and role policies

  • 12/23/15 - Added ability to list tables in dynamodb and began work on policy creation function

  • 12/24/15 - Added ability to create and delete dynamodb tables

  • 12/26/15 - Added some simple network acl management

  • 12/27/15 - Added elastic ip management and fixed policy creation and deletion

  • 12/29/15 - Added ability to create and manage certificates and elastic load balancers

  • 12/29/15 - Added ability to attach instance to load balancer

  • 12/30/15 - Added sns management, route53 traffic policies and record sets, and cf template listing, and more

  • 12/31/15 - Added NAT Gateways, Security Group and SQS Queue creation and deletion features

  • 12/31/15 - Added User Login Profiles, User Access Keys, Role Policies, and Interfaces

  • 12/31/15 - Added MFA Management

  • 1/1/16 - Added ability to attach, detach and manage volumes and network interfaces

  • 1/2/16 - Added Tagging of resources, snapshot creation and deletion, and fixed route tables

  • 1/3/16 - Clean-up a lot of the formatting and errors

  • 1/3/16 - Fixed stopped and starting of instances

  • 1/4/16 - Added more policy features

  • 1/5/16 - Added account alias, customer gateway, reserved instances and fixed auto scaling policy

  • 1/7/16 - Added ability to create cloud watch alarm and fixed a few other things

  • 1/7/16 - Fixed volume creation and deletion

  • 1/8/16 - Added RDS security groups and associated functionality

  • 1/8/16 - Added ability to modify rds instance

  • 1/9/16 - Added Elastic Cache functions

  • 1/10/16 - Refactored so menu matches AWS menu system

  • 1/10/16 - Added functions for vpn connection, gateway and customer gateway

  • 1/10/16 - Started adding functions to API Gateway and setup for virtualenv

  • 1/11/16 - Added EC2 Dashboard

  • 1/12/16 - Added RDS Dashboard and enhanced EC2 dashboard

  • 1/13/16 - Added VPC Dashboard

  • 3/3/16 - Added an All-Accounts option to get summary details for all accounts

Metadata

Release files for aws-cli-menu 0.4.45

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aws-cli-menu 0.4.45
File Size Uploaded Provenance Actions
aws-cli-menu-0.4.45.tar.gz 151.6 kB Without provenance Details for aws-cli-menu-0.4.45.tar.gz

Release files / aws-cli-menu-0.4.45.tar.gz

Download URL aws-cli-menu-0.4.45.tar.gz
Size 151.6 kB
Tags Source
SHA-256 checksum
How to use checksums
35a44d3983a92823e4cc270fd7b472530b36c6dad5af8047aed35ae6edacff8f
BLAKE2b-256 checksum
How to use checksums
8eac9b1cc1ddbd46e564f4928c715f8873d15e74879b46d412446b6d1fcc1a5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for aws-cli-menu 0.4.45

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.4.45 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page