Resource Lister
Project description
Resource Lister (Multi Accounts)
Resource Lister is open source, interactive, python-based command line NO CODE utility. Resource Lister can generate list of AWS resources in single or multiple accounts in consumable CSV, or flatten JSON format in near real time. Resource Lister uses boto3 sessions and underlying List APIs to connect multiple configured child accounts and generate the list. Resource Lister also provides an option to output generated list to command line, file ,and s3. Multi Account Resource Lister can be configured to run from Cloud9, EC2 or from your local laptop.
Usage :
Resource lister utility is open source interactive command line tool for Developers, Solution Architect, Account Owners, Cloud Ops team or anyone who wants to simply list AWS Resources (for supported services) in an account or multiple accounts in consumable format like .csv without writing a code
Cloud Operation team can generate inventory of AWS resources in near real time accorss accounts and across regions for supported services without writing any code.
Operation team can identify which AWS accounts doesn't have budget setup.
Utility can help generate list in particular account/region and then you can filter particular type of resource like lambda function using python 2.6 version.
Resource list generated through utility is with 99% of attributes which python SDK sends back (Including configured Tags for the resource), Manually getting and formatting all the attributes and formatting in tabular/columnize format specifically .csv is tedious task utility does it for you.
How it works?
Run the utility Utility will start interactive Python session.
Step 1: Utility will prompt you to select the AWS Service for example S3,lambda or ec2 etc..
Step 2 : Utility will display number of supported functions for selected AWS service . You chose a perticular function for example **List of S3 Buckets **
Step 3 : Utility will prompt you to select AWS Account for which you want list of AWS resources, you can select ALL accounts by entering ALL or specify comma seperated list of accounts
Step 4 : If it's regional resource (example Lambda) you will promopt to select AWS Region ; you can select ALL for all the regions or specify comma seperated list of regions
Step 5: Finally, utility will generate the list of AWS Resources for selected Accounts and Regions send the output to File or S3 Bucket or Print on command prompt depending upon your configuration.
You can also run the utility in batch mode across all the services in selected AWS Account
Output
Prerequisite
- python3
- boto3
Installation
resource-lister is distributed on PyPI. Easiest way to install it is with pip Create a virtual environment (optional):
python3 -m venv .venv
Activate enviornment
source .venv/bin/activate
Install resource-lister
pip install resource-lister
Run Resource Lister Utility
Download main.py from github
https://github.com/awslabs/resource-lister/blob/main/install/main.py
Run main.py python file with below command
python3 main.py
Utility will open in command prompt
setup
Click on enviornment specific installation setup.
Help
Supported Services and Functionality
Service | Functions |
---|---|
accessanalyzer |
|
budgets |
|
cloudformation |
|
cloudfront |
|
cloudtrail |
|
cloudwatch |
|
codecommit |
|
dynamodb |
|
ec2 |
|
ecs |
|
efs |
|
eks |
|
elbv2 |
|
emr |
|
emr-serverless |
|
iam |
|
kms |
|
lambda |
|
organizations |
|
rds |
|
redshift |
|
redshift-serverless |
|
route53 |
|
route53domains |
|
s3 |
|
sagemaker |
|
sns |
|
sqs |
|
Pricing
Cloud9 Pricing: If you are using Cloud9 based setup.
License
This library is licensed under the Apache-2.0. See the LICENSE file.
Considerations
Resource-Lister creates boto3 sessions (master and child accounts) and invokes list APIs for the service you selected to list resources. These API calls will be applied to your account API Quotas.
If you configured Resource-lister for multiple accoutns.You can use existing master and child account roles or create new roles.
If you decided to create new roles, You need to run cloudformation template in child account , cloudformation template will create IAM role in child account with read only permissions,this role will be assumed by master account.
Utility currrenlty supports only 70 functions. If you are interested in addtional functions /features, Please raise issue.
Know issues
Improvements in error handling messages
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 resource_lister-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0544edd0933be0c400829ce04eef882181b226396c54829adab92e4a62b5e0a1 |
|
MD5 | 577649dca9ab243c13b0172043489837 |
|
BLAKE2b-256 | 8e5569064ce5bb5aa34d91ce7abb280629bca8d2e91bec6d36ee9c78470804b7 |