User Tools

Site Tools


start

This is an old revision of the document!


Start

VPS Codebase Overview

This is the main entry point for the BinaryLane / Mammoth VPS codebase wiki.

What is this application?

The VPS platform is a large .NET monorepo with supporting services across multiple languages. It manages the full lifecycle of Virtual Private Server (VPS) instances — from provisioning to live management to billing.

Codebase Composition

vps/vps (main repo) — 10,000 entries across 1,926 directories and 8,074 files:

  • C# (.cs): 2,605 files — Core application logic, web API, services, controllers
  • Python (.py): 382 files — Tooling, scripts, ops automation
  • TypeScript/TSX (.ts/.tsx): 640 files — Frontend SPA code
  • Velocity templates (.vm): 429 files — Email/SMS templates
  • YAML (.yml): 564 files — CI/CD, infrastructure configs
  • Shell (.sh): 117 files — Deployment and admin scripts
  • JSON (.json): 115 files — Config and data files
  • Other: 2,322 files — Images, CSS, SCSS, SVG, XML configs, etc.

vps/compute (project 22) — Programs on compute hosts: HostDaemon, qemu-network, routed, smtbalance, xm/xm-for-kvm (Xen/KVM), ovmf (UEFI firmware), power-limiter, services

Monorepo Structure

<code> vps/vps/ ├── product/ — Customer-facing software (main code) │ ├── website/ — .NET web panel (ASP.NET Core + MonoRail) │ ├── forks/ — Third-party code (PayPal, Rhino.Mocks) │ ├── vmbuilder/ — VM image builder │ ├── guest-agent/ — Guest OS agent │ ├── e2e-tests/ — End-to-end tests │ └── mentos/ — Experimental features ├── facility/ — Per-datacentre satellite services │ ├── backupproxy — Backup download proxy (.NET) │ ├── looking-glass — Network diagnostic tool (PHP) │ └── rescueproxy — VNC rescue access (.NET) ├── infrastructure/ — Physical device software │ ├── compute/ — HostDaemon, qemu-network, routing │ ├── qemu/ — QEMU/KVM infrastructure │ ├── backup/ — Backup host programs │ ├── isobuilder/ — ISO/image building │ └── dynamic-routing/ — BIRD routing (Rust) ├── ops/ — Internal ops tooling │ ├── ansible/ — Infrastructure automation │ ├── butler/ — Internal bot │ ├── cicd/ — CI/CD configuration │ ├── icinga/ — Monitoring │ ├── morbo/ — Service health checks (.NET) │ └── tron/ — Job scheduler ├── scripts/ — Shared scripts └── team/ — Team-specific tooling

vps/compute (project 22) — Compute host programs:

hostdaemon, qemu-network, routed, smtbalance,
xm/, xm-for-kvm/ (Xen), ovmf/ (UEFI/KVM), power-limiter

Wiki Sections

  • Syntheses — Architecture and code structure documents
  • Reports — Automated analysis reports
  • Concepts — Key architectural concepts
  • Entities — People, systems, services
  • Sources — Documentation sources
  • Welcome — Getting started
start.1784245465.txt.gz · Last modified: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki