Skip to content

Registry — master-registry.db

The registry is the estate dispatch lookup table. Every repo that the orchestration system can target must have an entry here. Following the Phase 6 consolidation, the registry lives as a SQLite database at mcp-server/data/master-registry.db.


Schema

The database consists of three relational tables: orgs, tenants, and repos.

orgs Table

Defines the Git organizations managed by the platform.

  • id (INTEGER PRIMARY KEY)
  • name (TEXT)
  • provider (TEXT): github, gitlab, or ado

tenants Table

Defines the business tenants.

  • id (INTEGER PRIMARY KEY)
  • name (TEXT)

repos Table

Defines the repositories, linking them to an org and tenant.

  • id (INTEGER PRIMARY KEY)
  • org_id (INTEGER) - FK to orgs.id
  • tenant_id (INTEGER) - FK to tenants.id
  • name (TEXT) - The repository name
  • type (TEXT) - e.g., iac-powershell, web, docs
  • validation_profile (TEXT) - FK to profiles/<name>.yaml
  • default_branch (TEXT) - e.g., main, master
  • pilot (BOOLEAN) - 1 if it is an active dispatch target, 0 otherwise

Type values

TypeDescription
iac-terraformTerraform infrastructure repos
iac-bicepBicep infrastructure repos
iac-armARM template repos
iac-ansibleAnsible playbook/role repos
iac-powershellPowerShell IaC / automation repos
docsDocumentation sites (MkDocs, VitePress, static pages)
webWeb applications (React, static sites, Upptime)
appGeneral applications (API backends, services)
platformPlatform Engineering repo itself
profileOrg profile repos (.github, defaults)
?Not yet classified — needs deeper probe

Modifying the Registry

To interact with the registry, use the standard sqlite3 CLI or the provided PSSQLite modules inside the scripts/federation and scripts/onboarding directories.

Example query to list all pilot repos:

sql
SELECT r.name, r.type, o.name as org 
FROM repos r 
JOIN orgs o ON r.org_id = o.id 
WHERE r.pilot = 1;

Copyright © Hybrid Cloud Solutions LLC — Kristopher Turner