Files
tsysstaticsites/status.md
2026-03-02 18:11:27 -05:00

4.2 KiB

Grav Multi-Site Migration Status

Date: March 2, 2026 Monorepo: /home/charles/Projects/tsysstatic/staticsites.turnsys.com/ Remote: ssh://git@git.knownelement.com:29418/TSYSGroupCorporate/tsysstaticsites.git Cloudron Grav: staticsites.turnsys.com


Todo List

Completed

  • Flatten pages structure (remove extra pages/ level)
  • Update setup.php to use correct path
  • Commit and push changes to remote
  • Copy setup.php to Cloudron (/app/data/user/setup.php)
  • Configure Git Sync plugin
  • Initial sync (content pulled but wiped user/ folder)
  • Reinstall admin plugin

In Progress

  • Create admin user (run php bin/grav newuser)

Pending

  • Fix Git Sync configuration to only sync pages/ folder (prevent future wipes)
  • Clear Grav cache
  • Test multi-site routing at staticsites.turnsys.com
  • Add domain aliases in Cloudron for all 21 sites
  • Test each domain resolves to correct content

Completed

  • All 21 sites converted from mdbook to Grav format
  • All repos merged into monorepo (preserves history)
  • Repository structure flattened: pages/{fqdn}/* (not pages/{fqdn}/pages/*)
  • setup.php created for hostname-based routing
  • Changes committed and pushed to remote
  • Cloudron: setup.php placed at /app/data/user/setup.php
  • Cloudron: Git Sync plugin installed and configured
  • Cloudron: Git Sync successfully pulled content
  • Cloudron: Admin plugin reinstalled after Git Sync wipe

Current State

Repository Structure

pages/
├── charters.turnsys.com/
│   ├── 01.home/default.md
│   └── 02.Bylaws.../default.md
├── plan.knownelement.com/
│   └── 01.home/default.md
└── ... (21 sites total)

Cloudron State

  • Git Sync pulled repo to /app/data/user/ but synced ROOT not just pages/
  • This wiped out accounts, admin, etc.
  • Admin plugin reinstalled
  • Content is in /app/data/user/pages/ (correct location)

Immediate Next Steps

  1. Create admin user:

    su -s /bin/bash www-data -c "cd /app/code && php bin/grav newuser"
    
  2. Fix Git Sync configuration to only sync pages/ folder:

    • Check current config: cat /app/data/user/config/plugins/git-sync.yaml
    • The folders setting should map repo pages to user/pages
    • May need to reconfigure to prevent future wipes
  3. Clear cache:

    cd /app/code && php bin/grav clear-cache
    
  4. Test multi-site routing:

    • Visit staticsites.turnsys.com (default site)
    • Should route based on hostname to correct pages
  5. Add domain aliases in Cloudron for all 21 sites:

    • charters.turnsys.com
    • plan.afabn.org
    • plan.ap4ap.org
    • plan.ezeda.org
    • plan.ezpodstack.org
    • plan.hfnoc.net
    • plan.knownelement.com
    • plan.meetmorse.com
    • plan.merchantsofhope.org
    • plan.rackrental.net
    • plan.redwfo.com
    • plan.rwscp.net
    • plan.sidedoorgroup.org
    • plan.sol-calc.com
    • plan.startinglineproductions.com
    • plan.suborbital-systems.com
    • plan.teamrental.net
    • plan.thecampustradingcompany.com
    • plan.thepeernet.com
    • plan.turnsys.com
    • plan.yourdreamnamehere.com
  6. Test each domain resolves to correct content


Key Files

File Location Purpose
setup.php.cloudron /home/charles/Projects/tsysstatic/staticsites.turnsys.com/ Multi-site routing config for Cloudron
setup.php /app/data/user/setup.php Active routing config on Cloudron
git-sync.yaml /app/data/user/config/plugins/git-sync.yaml Git Sync plugin config

Git Sync Configuration Issue

Problem: Git Sync synced repo root to /app/data/user/ instead of just pages/ to user/pages/

Current config:

folders:
  - pages

This should mean: sync repo's pages/ folder to user/pages/. But it synced everything.

Need to investigate:

  • Whether Git Sync initialized in wrong location
  • Whether folders config is correct
  • May need to reinitialize Git Sync from scratch

Sites (21 total)

Site Pages
charters.turnsys.com 199
plan.knownelement.com 7
plan.startinglineproductions.com 10
plan.suborbital-systems.com 2
17 other plan.* sites 1 each
Total 238