3 Commits
Author SHA1 Message Date
Juan Denis 0e497f6def Let extensions listen for core events in process
Webhooks were the only way to hear a core event, and app.deployed
sat in the catalog without ever being emitted. EventService now
calls registered in-process listeners on every emit (best-effort,
torn down with the extension), and a successful deploy emits
app.deployed with the app's hostnames, which a CDN extension uses to
purge exactly those hosts.
2026-09-27 22:59:40 -04:00
Juan Denis d692e998b5 Fix CI: test seeds and leaked SQLite FK mode
The new Git deploy tests built Application rows by hand, which the
seed ratchet forbids; they use make_application now. A test that
enables foreign keys could leave a pooled connection enforcing them,
failing unrelated tests depending on shard order; every checkout now
starts with enforcement off.
2026-09-24 01:20:45 -04:00
Juan Denis 45bc3c70bd Guard first admin with a setup code, fix Git deploys
A fresh panel no longer lets whoever reaches it first become admin:
registering the first account needs a one-time code the installer
prints (`serverkit setup-code` repeats it). SERVERKIT_ADMIN_EMAIL and
SERVERKIT_ADMIN_PASSWORD create the admin unattended instead.

Git apps now deploy what users expect: a repository with a compose
file deploys every service it declares, "Deploy latest" builds the
branch's newest commit, and push webhooks rebuild the containers.
Also fixes branch switching on single-branch clones, uploads of a
lone file, compose v1 port preflight, and CLI commands that ignored
their flags.
2026-09-24 00:50:02 -04:00