Skip to content

feat(db): add notifications service to shared postgresql cluster#255

Merged
TechGardenCode merged 1 commit into
mainfrom
feat/notifications-shared-db
Jul 12, 2026
Merged

feat(db): add notifications service to shared postgresql cluster#255
TechGardenCode merged 1 commit into
mainfrom
feat/notifications-shared-db

Conversation

@TechGardenCode

Copy link
Copy Markdown
Owner

Adds the notifications core service to the shared cnpg postgresql cluster (ns databases), the homelab-side infra that the already-merged techgarden manifests (PR #91, ADR-0025) need to deploy.

Mechanical mirror of the existing iris / dopamenu / plates entries — DB-per-service on the one shared cluster (ADR-0018):

  • Database CR notifications-database → database notifications, owner notifications_app, databaseReclaimPolicy: retain.
  • managed.role notifications_appLOGIN NOSUPERUSER NOBYPASSRLS (RLS invariant), password from notifications-db-app-credentials.
  • ExternalSecret notifications-db-app-credentials (ns databases) → materialises the role password from the new Bitwarden entry notifications-db-app-credentials (7015df9c). Same entry feeds the app-namespace secret in techgarden (password parity).

Bitwarden entries created (Secrets Manager, project 72a9d5cf):

  • notifications-db-app-credentials (7015df9c) — NEW, DB app-role password.
  • notifications-service-token (f61e8830) — NEW, shared east-west X-Service-Token (companion techgarden PR wires the UUID).
  • VAPID + superuser + GHCR PAT — REUSED existing entries (no new keypair, ADR-0025).

kubectl kustomize builds clean. Once merged, ArgoCD self-heals the shared cluster: the role + DB appear and notifications-db-app / notifications-db-app-credentials ExternalSecrets go SecretSynced.

Companion: techgarden PR fills the two placeholder UUIDs in projects/notifications/deploy/overlays/dev/notifications-secrets.yaml.

🤖 Generated with Claude Code

Mirror the iris/dopamenu/plates entries so the merged techgarden
notifications manifests (PR #91, ADR-0025) can deploy:

- Database CR: notifications DB, owner notifications_app (retain policy)
- managed.role notifications_app (LOGIN NOSUPERUSER NOBYPASSRLS)
- notifications-db-app-credentials ExternalSecret (databases ns) for the
  role password; Bitwarden entry notifications-db-app-credentials
  (7015df9c), same entry feeds the app namespace (parity)
@TechGardenCode TechGardenCode merged commit 52f3e60 into main Jul 12, 2026
6 checks passed
@TechGardenCode TechGardenCode deleted the feat/notifications-shared-db branch July 12, 2026 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant