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
  • 🔍 Inventory Scanning: Scans Compute Engine, Cloud SQL, Cloud Functions, GKE, Cloud Storage, Cloud Run, Firestore, Pub/Sub, Vertex AI (Models, Endpoints, Featurestores), 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
Vertex AI (Models)
Vertex AI (Endpoints)
Vertex AI (Featurestore)

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.1.tar.gz (13.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.1-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gcp_radar-0.1.1.tar.gz
  • Upload date:
  • Size: 13.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.1.tar.gz
Algorithm Hash digest
SHA256 5514819f98f86707bbfa65974e3e49e65a404efef762fce401f310cc44a87539
MD5 378c8c862900e412a8bda16eca0e043d
BLAKE2b-256 79cf5425dd01f34e39a23e5a909d53fcf706a1e98f5f332315e36c65a534d84b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: gcp_radar-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 12.5 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3343082b63e314b9eba4f01d8f7e96f0f87ca60ce076eea83ab3d33fdd03f95c
MD5 d99640d34761f7a885202ad9f55ad112
BLAKE2b-256 66f9ce8fadbf6303c8850c59c4456f29c10b1171680d5ebaa527bc8fe1ebd555

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