Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/devops-israel/aws-inventory
AWS Inventory in a single HTML file using JS AWS-SDK & Bootstrap
https://github.com/devops-israel/aws-inventory
aws aws-sdk-js
Last synced: 3 months ago
JSON representation
AWS Inventory in a single HTML file using JS AWS-SDK & Bootstrap
- Host: GitHub
- URL: https://github.com/devops-israel/aws-inventory
- Owner: devops-israel
- License: mit
- Created: 2018-02-01T12:50:33.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2021-02-23T09:22:11.000Z (over 3 years ago)
- Last Synced: 2024-04-26T14:32:03.381Z (7 months ago)
- Topics: aws, aws-sdk-js
- Language: HTML
- Size: 125 KB
- Stars: 387
- Watchers: 18
- Forks: 122
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AWS Inventory
A single-file that shows the whole inventory of your AWS services on a single page.
## Usage
* Clone or copy the `index.html` file to your computer
* Open the `index.html` file in your browser## How it looks
![screenshot](/example-screenshot.png?raw=true "Example AWS Inventory")
## How it works
The AWS Inventory is using the AWS JavaScript SDK and a sprinkle of Bootstrap,
this allows to show results in pretty tables from any AWS API.The syntax to describe table headers and a pointer to the relevant array in the
results is using JMESPath syntax (jmespath.org).Example of the EC2 listing:
{ service: "EC2",
api: "describeInstances",
title: "EC2 Instances",
id: "ec2-instances",
jmespath: "Reservations[].Instances",
headings: ["InstanceId", "InstanceType", "ImageId", "LaunchTime", "KeyName", "State.Name"]
}This specifies that it should use the `AWS.EC2()` APIs, and call the
`describeInstances` method. Then create HTML elements that include the `id`
`ec2-instances` and a button with the title `EC2 Instances`.The returned results, as documented in callback section for `describeInstances`
in the official documentation, are searched for `Reservations[].Instances` for
an array of relevant data to be put into a table.https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#describeInstances-property
The table will include the headers described in `headings`, which also use
JMESPath, like in the example for `State.Name` so that nested elements can be
references.## Notes
The AWS JavaScript SDK does not support all the AWS services when used in a
browser, because not all services have CORS enabled.The list of CORS supported services is available at
https://github.com/aws/aws-sdk-js/blob/master/SERVICES.md## Contributing
We follow the "fork-and-pull" Git workflow.
* Fork the repo on GitHub
* Clone the project to your own machine
* Commit changes to your own branch
* Push your work back up to your fork
* Submit a Pull request so that we can review your changes and merge## Copyright and Licensing
MIT License, as described in the `LICENSE` file
Copyright 2018 © Devops Israel, Evgeny Zislis and contributors