# Phoenix Structural Configuration Locations

**Date**: 2025-01-27
**Purpose**: Reference guide for Phoenix (Sankofa cloud service provider) structural configuration
**Status**: Complete

---

## 📍 Overview

This document identifies where the structural configuration for **Sankofa Phoenix** (the cloud service provider) is located, including deployments, required resources, interconnections, and topology.

---

## 🗂️ Configuration Locations

### 1. Deployment Configurations

**Location**: `Sankofa/examples/production/phoenix/`

Contains individual service deployment YAML files defining VM specifications:

- `git-server.yaml` - Git server deployment
- `email-server.yaml` - Email server deployment
- `as4-gateway.yaml` - AS4 B2B gateway
- `business-integration-gateway.yaml` - Workflow automation gateway
- `financial-messaging-gateway.yaml` - Financial messaging gateway
- `codespaces-ide.yaml` - Development IDE
- `devops-runner.yaml` - CI/CD runner
- `dns-primary.yaml` - DNS server

**Format**: Crossplane ProxmoxVM resources with:
- Resource requirements (CPU, memory, disk)
- Network configuration
- Site/node assignments
- Cloud-init user data
- Service configurations

---

### 2. Infrastructure Provider Configuration

**Location**: `Sankofa/crossplane-provider-proxmox/examples/provider-config.yaml`

Defines Proxmox sites and provider configuration:

```yaml
sites:
  - name: site-1
    endpoint: "https://192.168.11.10:8006"
    node: "ml110-01"
  - name: site-2
    endpoint: "https://192.168.11.11:8006"
    node: "r630-01"
```

**Contains**:
- Site definitions (endpoints, nodes)
- Credential configuration
- TLS settings

---

### 3. GitOps Infrastructure Definitions

**Location**: `Sankofa/gitops/infrastructure/`

#### Compositions (`gitops/infrastructure/compositions/`)
- `vm-ubuntu.yaml` - Reusable VM composition template
- Defines resource patterns and patches

#### XRDs (`gitops/infrastructure/xrds/`)
- Composite Resource Definitions
- High-level resource types

#### Claims (`gitops/infrastructure/claims/`)
- Example resource claims
- User-facing resource requests

**Purpose**: Infrastructure as Code via Crossplane

---

### 4. Infrastructure Management

**Location**: `Sankofa/infrastructure/`

#### Proxmox Management (`infrastructure/proxmox/`)
- API clients and utilities
- Terraform modules
- Ansible roles
- Management scripts

#### Network Infrastructure (`infrastructure/network/`)
- Network policies
- VLAN configurations
- Topology definitions

#### Monitoring (`infrastructure/monitoring/`)
- Prometheus exporters
- Grafana dashboards
- Alert rules

#### Inventory (`infrastructure/inventory/`)
- Discovery scripts
- Asset tracking
- Configuration database

**See**: `Sankofa/infrastructure/README.md` for details

---

### 5. Entity Registry & Network Configuration

**Location**: `Sankofa/docs/infrastructure/ENTITY_REGISTRY.md`

**Contains**:
- Legal entity information
- Domain names
- ASN assignments
- Network configurations
- Site definitions
- International relationships

**Key Information**:
- Entity registry for all Phoenix entities
- Network addressing schemes
- Site-to-site connectivity
- Domain and DNS configuration

---

### 6. Topology Generation

**Location**: `Sankofa/scripts/infrastructure/generate-topology-data.ts`

**Purpose**: Generates network topology JSON from entity registry

**Output**:
- Regional topology files
- Network interconnection data
- Resource relationships
- Tunnel configurations

**Data Directory**: `Sankofa/docs/infrastructure/data/`

---

### 7. Data Model & Schema

**Location**: `Sankofa/docs/architecture/data-model.md`

**Contains**: GraphQL schema defining:
- Resource types (Region, Site, Cluster, Node, VM, Service, Network)
- Resource relationships
- Metrics and telemetry
- Well-Architected Framework assessments
- Identity and access management

**Purpose**: Defines the structural model for all Phoenix resources

---

### 8. Network Topology Diagrams

**Location**: `Sankofa/docs/architecture/network-topology.svg`

**Contains**: Visual representation of:
- Internet connectivity
- Cloudflare Global Network
- Control Plane site
- Proxmox sites
- Cloudflare Tunnels
- Network addressing
- Security features

**See**: `Sankofa/docs/architecture/README.md` for all diagrams

---

### 9. Cloudflare Tunnel Configuration

**Location**: `Sankofa/cloudflare/tunnel-configs/`

**Files**:
- `control-plane.yaml` - Control plane tunnel configuration
- Other site-specific tunnel configs

**Contains**:
- Ingress rules
- Service routing
- Hostname mappings
- Network routes

---

### 10. Business Communications Architecture

**Location**: `Sankofa/docs/phoenix/BUSINESS_COMMUNICATIONS.md`

**Contains**:
- Component architecture
- Integration flows
- Service interconnections
- Setup and configuration
- Security and compliance

**Components Defined**:
- Email Server (Sankofa Mail)
- AS4 Gateway
- Business Integration Gateway
- Financial Messaging Gateway

---

## 🔗 Interconnections & Topology

### Network Topology

**Defined In**:
1. `Sankofa/docs/infrastructure/ENTITY_REGISTRY.md` - Network addressing
2. `Sankofa/scripts/infrastructure/generate-topology-data.ts` - Topology generation
3. `Sankofa/docs/architecture/network-topology.svg` - Visual diagram
4. `Sankofa/cloudflare/tunnel-configs/` - Tunnel configurations

### Service Interconnections

**Defined In**:
1. `Sankofa/docs/phoenix/BUSINESS_COMMUNICATIONS.md` - Business service flows
2. `Sankofa/docs/architecture/data-model.md` - Resource relationships
3. Individual service YAML files in `examples/production/phoenix/`

### Resource Dependencies

**Defined In**:
1. `Sankofa/gitops/infrastructure/compositions/` - Composition templates
2. `Sankofa/docs/architecture/data-model.md` - GraphQL schema relationships

---

## 📋 Required Resources

### Compute Resources

**Defined In**:
- `Sankofa/examples/production/phoenix/*.yaml` - Individual VM specs
- `Sankofa/gitops/infrastructure/compositions/vm-ubuntu.yaml` - Template

**Specifications Include**:
- CPU cores
- Memory (Gi)
- Disk storage (Gi)
- Network interfaces
- Storage pools

### Network Resources

**Defined In**:
- `Sankofa/infrastructure/network/` - Network policies and configs
- `Sankofa/docs/infrastructure/ENTITY_REGISTRY.md` - Network addressing
- `Sankofa/cloudflare/tunnel-configs/` - Tunnel routes

### Storage Resources

**Defined In**:
- VM YAML files - Storage pool assignments
- Provider config - Storage pool definitions

---

## 🗺️ Quick Reference Map

```
Sankofa/
├── examples/production/phoenix/     # Service deployment configs
├── crossplane-provider-proxmox/     # Provider configuration
│   └── examples/provider-config.yaml
├── gitops/infrastructure/            # Infrastructure as Code
│   ├── compositions/                 # Resource templates
│   ├── xrds/                        # Resource definitions
│   └── claims/                      # Resource claims
├── infrastructure/                   # Infrastructure management
│   ├── proxmox/                     # Proxmox configs
│   ├── network/                     # Network configs
│   ├── monitoring/                  # Monitoring configs
│   └── inventory/                   # Inventory configs
├── docs/
│   ├── infrastructure/
│   │   └── ENTITY_REGISTRY.md       # Entity & network registry
│   ├── architecture/
│   │   ├── data-model.md            # Resource schema
│   │   └── network-topology.svg      # Topology diagram
│   └── phoenix/
│       └── BUSINESS_COMMUNICATIONS.md # Service architecture
├── cloudflare/tunnel-configs/       # Tunnel configurations
└── scripts/infrastructure/
    └── generate-topology-data.ts    # Topology generator
```

---

## 🔍 Finding Specific Information

### To Find Deployment Configurations:
→ `Sankofa/examples/production/phoenix/`

### To Find Resource Requirements:
→ `Sankofa/examples/production/phoenix/*.yaml` (spec.forProvider section)

### To Find Site/Node Assignments:
→ `Sankofa/crossplane-provider-proxmox/examples/provider-config.yaml`

### To Find Network Topology:
→ `Sankofa/docs/architecture/network-topology.svg`
→ `Sankofa/scripts/infrastructure/generate-topology-data.ts`

### To Find Service Interconnections:
→ `Sankofa/docs/phoenix/BUSINESS_COMMUNICATIONS.md`
→ `Sankofa/docs/architecture/data-model.md`

### To Find Infrastructure Templates:
→ `Sankofa/gitops/infrastructure/compositions/`

### To Find Entity & Network Registry:
→ `Sankofa/docs/infrastructure/ENTITY_REGISTRY.md`

---

## 📚 Related Documentation

- [Infrastructure README](../infrastructure/README.md)
- [GitOps README](../../gitops/README.md)
- [Architecture Overview](../architecture/README.md)
- [Business Communications](./BUSINESS_COMMUNICATIONS.md)
- [Entity Registry](../infrastructure/ENTITY_REGISTRY.md)
- [Data Model](../architecture/data-model.md)

---

**Last Updated**: 2025-01-27
**Maintainer**: Phoenix Infrastructure Team

