diff --git a/PROGRESS.md b/PROGRESS.md index 57dcf66..af49ae8 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -29,7 +29,7 @@ - Backend/data: Added Prisma models (User/Listing/ListingTranslation/ListingImage), seed script creates sample listing; DB on Hetzner VM `46.62.203.202`, staging secrets set in `lomavuokraus-web-secrets`. - Auth: Register/login/verify flows; session cookie (`session_token`), NavBar shows email+role badge. Roles: USER, ADMIN, USER_MODERATOR (approve users), LISTING_MODERATOR (approve listings). Admin can change roles at `/admin/users`. - Listing flow: create listing (session required), pending/published with admin/moderator approvals; pages for “My listings,” “New listing,” “Profile.” Quick actions tile removed; all actions in navbar. -- SMTP/DKIM: SMTP via smtp.sohva.org; DKIM key at `creds/dkim/lomavuokraus.fi/mail2025.private`, TXT needed at `mail2025._domainkey.lomavuokraus.fi`. +- SMTP/DKIM: SMTP via smtp.lomavuokraus.fi (CNAME to smtp.sohva.org); DKIM key at `creds/dkim/lomavuokraus.fi/mail2025.private`, TXT needed at `mail2025._domainkey.lomavuokraus.fi`. - Deployment/secrets: Removed Secret from k8s manifest to avoid overwrites; env now from k8s secret only. ConfigMap only for public vars. Image pull secret `registry-halla` in staging. - Latest images built/pushed: `registry.halla-aho.net/thalla/lomavuokraus-web:1763993882` (approvals badge + FI/EN localization) and `:1763994382` (profile edit). Staging/prod rolled out. - Security: `npm audit --audit-level=high` runs in build (warnings only). Trivy scan run; remaining CVEs mostly in tooling (cross-spawn, glob) and base OS Debian 12.10. Further reduction would require eslint-config-next 16.x and base image updates when available. diff --git a/docs/architecture.html b/docs/architecture.html index d01c877..1205b99 100644 --- a/docs/architecture.html +++ b/docs/architecture.html @@ -20,7 +20,7 @@ flowchart LR Next --> Auth["Auth/session module\n(JWT cookie)"] Next --> Prisma["Prisma ORM"] Prisma --> Postgres[(PostgreSQL)] - Next --> Mailer["SMTP mailer\nsmtp.sohva.org + DKIM"] + Next --> Mailer["SMTP mailer\nsmtp.lomavuokraus.fi (CNAME) + DKIM"] Next --> Storage["Image storage (remote bucket)"] Admin["Admins & moderators"] --> Next @@ -82,7 +82,7 @@ flowchart LR
  • Web: Next.js app (App Router), server-rendered pages, client hooks for auth state.
  • API routes: Authentication, admin approvals, listings CRUD (soft-delete), profile update.
  • Data: Postgres via Prisma (models: User, Listing, ListingTranslation, ListingImage, VerificationToken).
  • -
  • Mail: SMTP (smtp.sohva.org) + DKIM signing for verification emails.
  • +
  • Mail: SMTP (smtp.lomavuokraus.fi CNAME to smtp.sohva.org) + DKIM signing for verification emails.
  • Auth: Email/password, verified+approved requirement, JWT session cookie (session_token), roles.
  • diff --git a/docs/infra.html b/docs/infra.html index 24a1870..76d62c4 100644 --- a/docs/infra.html +++ b/docs/infra.html @@ -23,7 +23,7 @@ flowchart LR Traefik --> Service["Service :80 -> 3000"] Service --> Pod["Next.js pods (2)"] Pod --> DB["PostgreSQL 46.62.203.202"] - Pod --> SMTP["smtp.sohva.org"] + Pod --> SMTP["smtp.lomavuokraus.fi"] Secret["Secret: lomavuokraus-web-secrets"] CM["ConfigMap: lomavuokraus-web-config"] end @@ -111,7 +111,7 @@ flowchart TB