Skip to content

Commit 5199371

Browse files
committed
docs: update README.md and add MIT license
1 parent 8f149b0 commit 5199371

2 files changed

Lines changed: 154 additions & 0 deletions

File tree

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 Samrat Vooradi
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
# ☁️ Cloud Storage Lens
2+
3+
**Multi-cloud audit toolkit to scan AWS, Azure, and GCP storage services for public exposure and cost visibility.**
4+
Supports secure scanning, mockfill lifecycle, containerized CLI, and cross-cloud infrastructure provisioning.
5+
6+
![Multi-cloud badge](https://img.shields.io/badge/clouds-AWS%20%7C%20Azure%20%7C%20GCP-blue)
7+
![CI](https://github.com/vooradis/cloud-storage-lens/actions/workflows/audit-pipeline.yaml/badge.svg)
8+
9+
---
10+
11+
## 🔍 Overview
12+
13+
Cloud Storage Lens analyzes cloud buckets, containers, and blobs for:
14+
15+
- **Public access flags**
16+
- **Mock data visibility**
17+
- **Cost estimation based on volume**
18+
- **CI lifecycle automation**
19+
- **Secure infrastructure provisioning**
20+
21+
---
22+
23+
## 🚀 Quickstart
24+
25+
```bash
26+
git clone https://github.com/vooradis/cloud-storage-lens.git
27+
cd cloud-storage-lens
28+
29+
# Install dependencies
30+
pip install -r requirements.txt
31+
32+
# Fill buckets with mock data
33+
make mockfill
34+
35+
# Run audit
36+
make scan
37+
38+
# Clean up objects
39+
make cleanup
40+
```
41+
42+
---
43+
44+
## 🧰 CLI Commands
45+
46+
Powered by `click` for modular subcommands:
47+
48+
```bash
49+
python main.py audit --config config/config.dev.yaml
50+
python main.py fill
51+
python main.py clean
52+
```
53+
54+
Supports AWS profile and Azure connection override:
55+
56+
```bash
57+
python main.py fill --profile auditor --connection_string UseDevelopmentStorage=true
58+
```
59+
60+
---
61+
62+
## 🐳 Container Support
63+
64+
```bash
65+
# Local dev container
66+
docker-compose up --build
67+
68+
# Full audit lifecycle
69+
docker-compose run lens bash audit-entrypoint.sh
70+
```
71+
72+
Includes `Dockerfile.dev`, `audit-entrypoint.sh`, and mounted `report.csv`, `audit.log`.
73+
74+
---
75+
76+
## ☁️ Infrastructure Provisioning
77+
78+
Audit-ready resources defined in multi-cloud IaC:
79+
80+
| Cloud | Tool | Folder | Resources |
81+
| ----- | --------- | ------------------- | ---------------------------- |
82+
| AWS | CDK | infra/aws-cdk | S3 bucket + audit IAM |
83+
| Azure | Bicep | infra/azure-bicep | Blob container (public) |
84+
| GCP | Terraform | infra/gcp-terraform | GCS bucket + lifecycle rules |
85+
86+
---
87+
88+
## 🧪 Testing & CI
89+
90+
```bash
91+
make test # Run unit tests
92+
flake8 . # Lint audit + tools
93+
```
94+
95+
GitHub Actions runs:
96+
97+
- `pytest tests`
98+
- `flake8 lint`
99+
- Docker builds
100+
- Full audit lifecycle
101+
- Uploads `report.csv` as artifact
102+
103+
---
104+
105+
## 📂 Project Structure
106+
107+
```plaintext
108+
auditor/ → access check, cost, report logic
109+
clients/ → SDK wrappers for AWS, Azure, GCP
110+
tools/ → mockfill + cleanup scripts
111+
infra/ → CDK, Bicep, Terraform templates
112+
scripts/ → shell wrappers for scan lifecycle
113+
tests/ → pytest mocks for all providers
114+
config/ → YAML audit config presets
115+
```
116+
117+
---
118+
119+
## 📸 Screenshots
120+
121+
| Cloud | Preview |
122+
| ----- | ------- |
123+
| AWS | |
124+
| Azure | |
125+
| GCP | |
126+
127+
(Insert screenshots in `docs/images/` or embed links)
128+
129+
---
130+
131+
## 📜 License
132+
133+
MIT — built for learning, enterprise demos, and open-source contributions.

0 commit comments

Comments
 (0)