PendragonDI Cloud Audit – local tool to detect stale, redundant, or inefficient storage in cloud buckets.
Project description
PendragonDI Cloud Audit
Find stale, oversized, or duplicate files in cloud storage — without touching your data.
PendragonDI Cloud Audit is a lightweight command-line tool that helps you uncover hidden cost drivers in your cloud storage buckets:
- Unused or stale files
- Duplicate objects
- Oversized resources
- Cold data that hasn’t been touched in months
It runs entirely locally using your own credentials. No file content is ever read. No objects are ever modified.
🔍 Why It Exists
Most teams store more than they realize—and rarely clean up:
- ☁️ Cloud object stores are treated like infinite file systems
- 💸 Many orgs pay for millions of forgotten or duplicate files
- 🧱 Native tools are clunky, slow, or deeply integrated with billing
PendragonDI Cloud Audit gives you a fast, metadata-only snapshot of wasteful storage across AWS S3, Google Cloud Storage, and Azure Blob—before it shows up on your invoice.
✅ Features
- 🔍 Identifies stale files based on last-modified timestamp
- 🪞 Detects potential duplicates using file size, name, and timestamp
- 🧾 Outputs clean, readable HTML or CSV reports
- 💡 Estimates storage cost impact
- 🧪 Supports limit-based sampling for fast iteration
- 🔐 Operates with your credentials — no external access required
- 🔒 Never reads, moves, or deletes content
🛠️ Installation
Core CLI only (no provider):
pip install pendragondi-cloud-audit
With a provider:
pip install pendragondi-cloud-audit[aws]
pip install pendragondi-cloud-audit[gcs]
pip install pendragondi-cloud-audit[azure]
pip install pendragondi-cloud-audit[all] # for all providers
🚀 Quickstart
1. Run a scan:
pendragondi-cloud-audit scan aws my-bucket --days-stale 90 --output report.html
You can also limit the number of objects scanned:
pendragondi-cloud-audit scan gcs my-bucket --days-stale 60 --limit 10000 --output audit.csv
📄 Example Report
Total Files: 3200 • Stale: 1800 • Duplicates: 400
Results can be opened in any browser or spreadsheet tool.
🧰 Supported Providers
| Provider | Install Extra | Credential Method |
|---|---|---|
| AWS S3 | aws |
Boto3 profile / ENV |
| GCS | gcs |
Application Default / keyfile |
| Azure | azure |
Connection string or container URL |
🔐 Security & Compliance
PendragonDI Cloud Audit was built for zero-risk analysis:
| Layer | Behavior |
|---|---|
| Access | Uses your own credentials |
| Data Privacy | Never reads file content |
| Write Behavior | Read-only (no writes) |
| Output | Local CSV or HTML report |
📜 License
🧭 Why PendragonDI?
Cloud billing surprises happen when small inefficiencies scale. PendragonDI Cloud Audit was designed to help teams see storage drift before it gets expensive.
- No dashboard logins.
- No waiting on IT.
- Just insight.
🤝 Contributing
We welcome contributions!
To contribute:
- Fork this repo and work from
main - Use type hints and docstrings
- Submit focused pull requests
- Report bugs or ideas via Issues
Questions or feedback? Email us: pendragondi@pendragondi.dev
💖 Support the Project
PendragonDI Cloud Audit is free and open-source. If this tool saved you time or money, consider supporting us on GitHub:
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pendragondi_cloud_audit-0.3.2.tar.gz.
File metadata
- Download URL: pendragondi_cloud_audit-0.3.2.tar.gz
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7595cbd7a8e200316794a637d2b8a0f7d1ce7520267896e0c21bd7dffbaaf2ef
|
|
| MD5 |
7dbc629f4b52267956cc28deef4bb270
|
|
| BLAKE2b-256 |
1228c05a2bf19d3df7d78e1edb7aafaf384b05d358a05ba59430d291040dec29
|
File details
Details for the file pendragondi_cloud_audit-0.3.2-py3-none-any.whl.
File metadata
- Download URL: pendragondi_cloud_audit-0.3.2-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9056fc8b4f3e527e9ac678f3651d72f7b6b79b678b128f54467c4c041bf967d6
|
|
| MD5 |
62c3429a092d4acfc45c9f23bd82bf4e
|
|
| BLAKE2b-256 |
a1f82826a76423f35b13782f6d5f95d3bd07193b40205935ca5f7d24a1d3f4e5
|