HaloRT mengisolasi setiap komunitas sebagai tenant. Data bisnis dibatasi tenant_id di MariaDB via Prisma di platform API.
Resolusi tenant (API)
Urutan kasar di plugin tenant:
- Header
X-Halort-Tenant-Slug - Slug subdomain dari Host (
{slug}.halort.comatau.halort.test) - Lookup domain kustom
- Fallback dev
TENANT_SLUG
Platform web mencerminkan ini dengan Host + X-Halort-Tenant-Slug dan NEXT_PUBLIC_TENANT_SLUG untuk fallback lokal. Aplikasi mobile mengirim header / env yang sama (HALORT_TENANT_SLUG).
Host central vs tenant
Central (tanpa konteks komunitas): app.halort.com, admin.halort.com, api.halort.com, www.halort.com, halort.com, plus design/docs/notifications.
Tenant: {slug}.halort.com → situs publik platform-web untuk komunitas tersebut. DNS wildcard *.halort.com sudah mengarah ke ingress LB; host reserved persis (docs, design, …) menang via objek Ingress masing-masing.
Env knobs: HALORT_DOMAIN, HALORT_CENTRAL_DOMAINS.
Onboarding
- Pengunjung mendaftarkan komunitas di marketing
/daftar(Surfaces/Marketing Web) - Super-admin meninjau di admin.halort.com
- Persetujuan mem-provision tenant dan menambahkan
{slug}.halort.comke Ingress platform-web