VersionControl:PRs/maybelle-config/281

From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Revision as of 17:06, 9 November 2026 by DrivingThatTrain (talk | contribs) (cryptograss/maybelle-config#281, as GitHub has it)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search
maybelle-config#281: pickipedia: build and serve Rabbithole as the Vite app it is now
State 🟣 merged 2026-11-06 17:00:14
Worked on by magent, justin
Moods #rabbithole
Deploy not said
Branch rabbithole-vue-build → production, by magent-cryptograss
Opened · last pushed 2026-11-06 11:50:20 · 2026-11-06 11:49:44
Companion to cryptograss/rabbithole's Vue conversion (the `vue` branch PR). That turns the shell into a Vue app with a build step and a service worker, so the thing to serve is `dist/`, not the checkout.

- The `rabbithole-shell` role installs Node 22 from NodeSource (the distro's is too old for Vite), and after each pull (or when `dist/` is missing) runs `npm ci` and `npm run build` as caddy, with `HOME` pointed at the checkout so npm's cache has somewhere to go.
- Caddy's `/rabbithole/*` root becomes `/var/www/rabbithole/dist`, with `/index.html` as the fallback for any path inside `/rabbithole/` that is not a file. The service worker and manifest live there too.

Order: merge this, then the rabbithole PR, then redeploy. Until the rabbithole PR is merged, main still has no `dist/`: the build step would fail on `npm run build` (the old lib build) rather than serve anything wrong, so the order matters.

Redeploy: pickipedia
Worked on by: magent, Justin, in #rabbithole