feat: add multi-tenant routing for Traefik nodes #2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/core-routing"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Changes
invite_only(default) oropenviaTRAEFIK_CONTROL_SIGNUPadmin/member); invitations bound to an email, single-use, expiring, token shown once and stored as SHA-256; member management with a last-admin guardlast_seen_at(throttled conditional UPDATE)GET /api/traefik/v1/config: pureDynamicConfig.render/2, uniform 401, organization derived from the node, never the request:dev-only seed,whoamibackend, all ports on loopback; README rewrittenVerification
mix format --check-formatted,mix compile --warnings-as-errors,mix credo --strict(no issues),mix dialyzer(0 errors): passmix test: 274 passed on SQLite and 274 on PostgreSQL (includes a cross-tenant isolation suite)podman-compose upagainst real Traefik: node API 401 without/with a wrong token and 200 with the node token; Traefik installed the router and service from thehttpprovider;curl -H 'Host: whoami.localhost'returned the whoami response and an unknown host returned 404node_idscrashed on PostgreSQL only (fixed withEcto.UUID);byteasize modifier invalid on PostgreSQL; numeric-final-label hostnames rejected; missingUserToken.t()type