Skip to main content

GCP resource inventory scanner and draw.io architecture diagram generator

Project description

GCP Radar

GCP Resource Inventory Scanner & Architecture Diagram Generator

A Python CLI tool that inventories all your GCP resources and generates beautiful draw.io architecture diagrams.

Features

  • 🔍 Inventory Scanning: Scans Compute Engine, Cloud SQL, Cloud Functions, GKE, Cloud Storage, Cloud Run, Firestore, Pub/Sub, and more
  • 📊 CSV Export: Export complete inventory to CSV for further analysis
  • 🏗️ Architecture Diagrams: Auto-generate draw.io .drawio files with logical service connections
  • ☁️ Multi-Project Support: Scan multiple GCP projects in one go
  • 🔐 Service Account Auth: Use gcloud default credentials or specify service account key

Installation

pip install gcp-radar

Or from source:

git clone https://github.com/yourname/gcp-radar.git
cd gcp-radar
pip install -e .

Quick Start

1. Inventory Your GCP Resources

# Scan default project
gcp-radar inventory --export inventory.csv

# Scan specific project
gcp-radar inventory --project my-project --export inventory.csv

# Export to specific region
gcp-radar inventory --region us-central1 --export inventory.csv

2. Generate Architecture Diagram

gcp-radar diagram --input inventory.csv --output architecture.drawio

# Then open architecture.drawio in app.diagrams.net or the desktop app

3. One-Shot: Scan + Diagram

gcp-radar run --project my-project \
  --output-csv inventory.csv \
  --output-diagram architecture.drawio

Supported GCP Services

Service Collected Diagram
Compute Engine
Cloud SQL
Cloud Functions
GKE (Kubernetes Engine)
Cloud Storage
Cloud Run
Firestore
Pub/Sub

Requirements

  • Python 3.9+
  • GCP credentials (via gcloud auth or service account key)
  • Permissions: compute:Read, sql:Read, container:Read, storage:Read, pubsub:Read, firestore:Read, etc.

Output Format

CSV Inventory

ProjectID Service Name ID Type/Size Status Region Extra
my-project Compute Engine web-01 abc123 n1-standard-2 RUNNING us-central1 ...

Architecture Diagram

Auto-generated .drawio file with:

  • Swim lanes by service category (Compute, Database, Storage, Messaging)
  • Icons for each resource
  • Logical connections between services

Configuration

Create a .env file to override defaults:

export GCP_PROJECT=my-project
export GCP_REGION=us-central1

Or pass flags:

gcp-radar inventory --project my-project --region us-central1

License

MIT

Contributing

Pull requests welcome! Please open an issue first to discuss changes.

Support

GitHub Issues: https://github.com/yourname/gcp-radar/issues

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gcp_radar-0.1.11.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gcp_radar-0.1.11-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file gcp_radar-0.1.11.tar.gz.

File metadata

  • Download URL: gcp_radar-0.1.11.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for gcp_radar-0.1.11.tar.gz
Algorithm Hash digest
SHA256 8c571b4f4388c70a04fa6a54cf4511ef3f2a9a04787dfccefa5274eaf86251ed
MD5 2238df48ed9f01e2f4b687183b585ea6
BLAKE2b-256 3a59fdfc5b3ab23a71aaa4f148b5d4c847efd8e514c484cf4a2b460d88b54a59

See more details on using hashes here.

File details

Details for the file gcp_radar-0.1.11-py3-none-any.whl.

File metadata

  • Download URL: gcp_radar-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 13.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for gcp_radar-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 7c7702733f7df3fb45a0bfffd8295fc21b7439ddbfff095f08cf39926ddcd4c8
MD5 f8c7e553820bb4001fb203aec18527ea
BLAKE2b-256 0550ced541b42142d95e339add8512b6e22790c57942a1bd613337389a9c9a47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page