Status: IN
The catbeez-arcade server discovers new game files dynamically — publishing games is purely a file upload to `/home/catbeez/games/` with no application restart required.
Source: entries/2026/05/11/deployments-catbeez-publish-games.md
# From catbeez-arcade/publish-games.py — upload game files without restart
host = ftl[cfg["hostname"]]
await host.file(path="/home/catbeez/games", state="directory",
owner="catbeez", group="catbeez")
for game in games:
for ext in ("html", "js", "wasm"):
src = GAMES_SRC / f"{game}.{ext}"
if src.exists():
await host.copy(
src=str(src),
dest=f"/home/catbeez/games/{game}.{ext}",
owner="catbeez", group="catbeez",
)