How spatiumnorth/spatiumddi works
SpatiumDDI is a self-hosted DNS, DHCP, and IPAM control plane that manages real DNS/DHCP servers. The principal workflow is an operator managing network address and service data through the API, with the control plane coordinating configuration to agents and runtime services. The tree also shows appliance management, BGP looking-glass ingestion, search, and conformity evaluation. README claims support for integrated DNS/DHCP containers; sampled excerpts are partial and do not establish all cross-module call paths, so uncertain wiring is omitted.
Main entry points: v1/router.py REST API · appliance/router.py Appliance management · service_lifecycle.py Appliance supervisor · routes_ingest.py Route ingestion
Components 22
Control plane
- REST API
backend/app/api/v1/router.py - Global search
backend/app/services/search/engine.py - Application database
backend/app/db.py
DDI services
- IP address management
backend/app/api/v1/ipam/router.py - DNS management
backend/app/api/v1/dns/router.py - DHCP management
backend/app/api/v1/dhcp/scopes.py - DNS import
backend/app/api/v1/dns_import/router.py - DHCP import
backend/app/api/v1/dhcp_import/router.py
Agent runtime
- DNS agent
agent/dns/spatium_dns_agent/sync.py - DHCP agent
agent/dhcp/spatium_dhcp_agent/sync.py - DNS server drivers
backend/app/drivers/dns/base.py - DHCP server drivers
backend/app/drivers/dhcp/base.py - Looking-glass agents
backend/app/api/v1/looking_glass/agents.py - Route ingestion
backend/app/services/looking_glass/routes_ingest.py - Appliance supervisor
agent/supervisor/spatium_supervisor/service_lifecycle.py
Operations
- Appliance management
backend/app/api/v1/appliance/router.py - Storage actions
backend/app/services/appliance/storage_actions.py - Storage health
backend/app/services/appliance/storage_health.py - Conformity evaluation
backend/app/services/conformity/engine.py
Other components
- Operator
- DNS servers
- DHCP servers
Connections 18
- Operator → REST API: submits requests
- REST API → IP address management: dispatches
- REST API → DNS management: dispatches
- REST API → DHCP management: dispatches
- REST API → DNS import: dispatches
- REST API → DHCP import: dispatches
- DNS agent → DNS servers: applies configuration
- DHCP agent → DHCP servers: applies configuration
- DNS server drivers → DNS servers: controls
- DHCP server drivers → DHCP servers: controls
- Looking-glass agents → Route ingestion: pushes routes
- Route ingestion → Application database: reconciles routes
- REST API → Appliance management: dispatches
- Appliance management → Storage actions: validates actions
- Appliance supervisor → Appliance management: polls and replies
- Appliance supervisor → Storage actions: runs host actions
- Operator → Global search: searches
- Operator → Conformity evaluation: evaluates policies