[PR #150] [CLOSED] Enable Azure support for TerraVision #179

Closed
opened 2026-05-06 12:38:02 +02:00 by BreizhHardware · 0 comments

📋 Pull Request Information

Original PR: https://github.com/patrickchugh/terravision/pull/150
Author: @j00x
Created: 12/9/2025
Status: Closed

Base: mainHead: claude/enable-azure-support-019uWf5acjquoQEyDAwhdCBC


📝 Commits (4)

  • 787c207 Enable Azure support for TerraVision
  • 567404e Add Azure integration test results and generated diagrams
  • deb6266 Add comprehensive Azure icon mapping documentation
  • ae077d6 Implement Azure-specific icons and cloud boundaries

📊 Changes

16 files changed (+1262 additions, -5 deletions)

View changed files

📝 README.md (+22 -1)
📝 modules/cloud_config.py (+111 -0)
📝 modules/drawing.py (+98 -2)
📝 modules/helpers.py (+70 -0)
resource_classes/azure/groups.py (+94 -0)
📝 terravision.py (+7 -2)
tests/azure-integration/ICON_MAPPING.md (+60 -0)
tests/azure-integration/README.md (+95 -0)
tests/azure-integration/end-to-end-test-results.md (+194 -0)
tests/azure-integration/output-aks.svg (+160 -0)
tests/azure-integration/output-basic.png (+0 -0)
tests/azure-integration/output-with-azure-icons.png (+0 -0)
tests/azure-integration/output-with-azure-icons.svg (+158 -0)
tests/azure-integration/sample-azure-infrastructure.tf (+141 -0)
tests/azure-integration/test-data-aks.json (+14 -0)
tests/azure-integration/test-data-basic.json (+38 -0)

📄 Description

This commit enables beta support for Microsoft Azure infrastructure diagrams by:

  • Added Azure resource class imports to modules/drawing.py

    • Imported all 32 Azure resource modules (compute, storage, networking, databases, etc.)
    • Azure resources now available alongside AWS resources
  • Added Azure configuration to modules/cloud_config.py

    • AZURE_CONSOLIDATED_NODES: Resource grouping configuration
    • AZURE_GROUP_NODES: VNet, subnet, NSG, resource group grouping
    • AZURE_EDGE_NODES: DNS, CDN, Application Gateway edge services
    • AZURE_*_LIST: Reverse arrows, shared services, disconnect rules
    • AZURE_NAME_REPLACEMENTS: User-friendly Azure resource names
  • Implemented provider detection in modules/helpers.py

    • detect_cloud_provider(): Auto-detects AWS/Azure/GCP from resource prefixes
    • get_provider_config(): Returns provider-specific configuration
    • Enables multi-cloud support with automatic provider switching
  • Enhanced terravision.py with provider detection

    • Detects cloud provider during graph enrichment
    • Stores provider in tfdata for downstream processing
    • Displays detected provider to user
  • Updated README.md

    • Changed Azure status from "Coming soon" to "Beta support with 100+ services"
    • Added Azure-specific usage examples and documentation
    • Listed example supported Azure resources (VM, AKS, SQL, Storage, etc.)
    • Added beta disclaimer about Azure feature maturity

Azure resources supported include:

  • Compute: Virtual Machines, AKS, App Services, Container Instances
  • Networking: VNets, Subnets, NSGs, Load Balancers, Application Gateway
  • Storage: Storage Accounts, Blob Storage, Data Lake
  • Databases: SQL Server, PostgreSQL, MySQL, CosmosDB
  • AI/ML: Cognitive Services, Machine Learning, Bot Services
  • And 100+ more Azure services

Note: Azure support is in beta. Advanced features like AI-powered diagram refinement and complex resource relationship handling are optimized for AWS and will be enhanced for Azure in future releases.

YOUR PR TITLE

Type of Change

  • Bug Fix
  • New Feature
  • Refactor
  • Documentation

Checklist

All Submissions:

  • Have you checked to ensure there aren't other open Pull Requests for the same update/change?
  • Have you written Documentation/Tests?
  • Have you read done your own code-review?

Changes to Core Features:

  • Have you added an explanation of what your changes do and why you'd like us to include them?
  • Have you written new tests for your core changes, as applicable?
  • Have you successfully run tests with your changes locally?

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/patrickchugh/terravision/pull/150 **Author:** [@j00x](https://github.com/j00x) **Created:** 12/9/2025 **Status:** ❌ Closed **Base:** `main` ← **Head:** `claude/enable-azure-support-019uWf5acjquoQEyDAwhdCBC` --- ### 📝 Commits (4) - [`787c207`](https://github.com/patrickchugh/terravision/commit/787c2073d038112643e44b16dcd5be145244ed3b) Enable Azure support for TerraVision - [`567404e`](https://github.com/patrickchugh/terravision/commit/567404ef6eba8db59f1d2abdfa1fef08b612999c) Add Azure integration test results and generated diagrams - [`deb6266`](https://github.com/patrickchugh/terravision/commit/deb6266d4fb15c6a634b6f0fe786d3c4286c1253) Add comprehensive Azure icon mapping documentation - [`ae077d6`](https://github.com/patrickchugh/terravision/commit/ae077d6bee1e1ade6eb3f56deb90388698509b89) Implement Azure-specific icons and cloud boundaries ### 📊 Changes **16 files changed** (+1262 additions, -5 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+22 -1) 📝 `modules/cloud_config.py` (+111 -0) 📝 `modules/drawing.py` (+98 -2) 📝 `modules/helpers.py` (+70 -0) ➕ `resource_classes/azure/groups.py` (+94 -0) 📝 `terravision.py` (+7 -2) ➕ `tests/azure-integration/ICON_MAPPING.md` (+60 -0) ➕ `tests/azure-integration/README.md` (+95 -0) ➕ `tests/azure-integration/end-to-end-test-results.md` (+194 -0) ➕ `tests/azure-integration/output-aks.svg` (+160 -0) ➕ `tests/azure-integration/output-basic.png` (+0 -0) ➕ `tests/azure-integration/output-with-azure-icons.png` (+0 -0) ➕ `tests/azure-integration/output-with-azure-icons.svg` (+158 -0) ➕ `tests/azure-integration/sample-azure-infrastructure.tf` (+141 -0) ➕ `tests/azure-integration/test-data-aks.json` (+14 -0) ➕ `tests/azure-integration/test-data-basic.json` (+38 -0) </details> ### 📄 Description This commit enables beta support for Microsoft Azure infrastructure diagrams by: - Added Azure resource class imports to modules/drawing.py * Imported all 32 Azure resource modules (compute, storage, networking, databases, etc.) * Azure resources now available alongside AWS resources - Added Azure configuration to modules/cloud_config.py * AZURE_CONSOLIDATED_NODES: Resource grouping configuration * AZURE_GROUP_NODES: VNet, subnet, NSG, resource group grouping * AZURE_EDGE_NODES: DNS, CDN, Application Gateway edge services * AZURE_*_LIST: Reverse arrows, shared services, disconnect rules * AZURE_NAME_REPLACEMENTS: User-friendly Azure resource names - Implemented provider detection in modules/helpers.py * detect_cloud_provider(): Auto-detects AWS/Azure/GCP from resource prefixes * get_provider_config(): Returns provider-specific configuration * Enables multi-cloud support with automatic provider switching - Enhanced terravision.py with provider detection * Detects cloud provider during graph enrichment * Stores provider in tfdata for downstream processing * Displays detected provider to user - Updated README.md * Changed Azure status from "Coming soon" to "Beta support with 100+ services" * Added Azure-specific usage examples and documentation * Listed example supported Azure resources (VM, AKS, SQL, Storage, etc.) * Added beta disclaimer about Azure feature maturity Azure resources supported include: - Compute: Virtual Machines, AKS, App Services, Container Instances - Networking: VNets, Subnets, NSGs, Load Balancers, Application Gateway - Storage: Storage Accounts, Blob Storage, Data Lake - Databases: SQL Server, PostgreSQL, MySQL, CosmosDB - AI/ML: Cognitive Services, Machine Learning, Bot Services - And 100+ more Azure services Note: Azure support is in beta. Advanced features like AI-powered diagram refinement and complex resource relationship handling are optimized for AWS and will be enhanced for Azure in future releases. # YOUR PR TITLE ## Type of Change * [ ] Bug Fix * [ ] New Feature * [ ] Refactor * [ ] Documentation ## Checklist All Submissions: * [ ] Have you checked to ensure there aren't other open [Pull Requests](../../../pulls) for the same update/change? * [ ] Have you written Documentation/Tests? * [ ] Have you read done your own code-review? ### Changes to Core Features: * [ ] Have you added an explanation of what your changes do and why you'd like us to include them? * [ ] Have you written new tests for your core changes, as applicable? * [ ] Have you successfully run tests with your changes locally? --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
BreizhHardware 2026-05-06 12:38:02 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/terravision#179
No description provided.