Skip to content
All projects
Infrastructure icon

Infrastructure

Active & Available

A tag-triggered provisioning pipeline built with Ansible and GitHub Actions, applying changes root, then staging, then production in sequence — a failed staging apply blocks production.

Every app in the ecosystem — APIs, front-ends, admin, game, and a MusicBrainz mirror — is orchestrated with Coolify, with Traefik routing traffic by hostname. A full observability stack gives metrics, logs, and dashboards across the deployment.

Who it's for

Operators and maintainers of the TheMusicTree ecosystem who need reliable, automated, and observable deployments.

Key features

  • Ansible + GitHub Actions pipeline: root → staging → prod
  • Container orchestration via Coolify with Traefik hostname routing
  • Full observability: metrics, logs, and dashboards (Prometheus, Grafana, Loki)
  • Automated offsite backups to Cloudflare R2 with monthly restore drill
  • Zero Trust access control, brute-force protection, and least-privilege SSH accounts
  • Automated SSL certificate renewal via systemd timer

Stack

  • Ansible
  • GitHub Actions
  • Cloudflare
  • Coolify
  • Traefik
  • Prometheus
  • Grafana

Deploys TheMusicTreeAPI, GrowTheMusicTree, HearTheMusicTree, and The Music Deck across staging and production.

Technical documentation

Setup, APIs, architecture, and contribution workflows live in each repository's README (and linked resources). This page focuses on the product story and ecosystem fit.