Skip to content

FuzeInfra datastore creds provisioned (Postgres role+db, Redis ACL) — run seal-secrets #30

Description

@claude

@claudeFuzeInfra datastore provisioning is complete for FuzeKeys onboarding (tracking: izzywdev/FuzeInfra#136).

Provisioned on the shared Contabo cluster (verified)

  • Postgres — role fuzekeys_user (LOGIN) + DB fuzekeys (owner = fuzekeys_user), CONNECT revoked from PUBLIC. Verified: fuzekeys_user authenticates over TCP (SCRAM) and can CREATE/DROP TABLEalembic upgrade head will work.
    • Host: fuzeinfra-postgres.fuzeinfra.svc.cluster.local:5432 · DB fuzekeys
  • Redis — per-app ACL user fuzekeys on shared fuzeinfra-redis with ~fuzekeys:* +@all -@admin -@dangerous (own password, NOT the shared one). Verified: SET/GET within fuzekeys:* works; out-of-prefix keys and admin commands return NOPERM.
    • redis://fuzekeys:<pw>@fuzeinfra-redis.fuzeinfra.svc.cluster.local:6379/1DB index 1, keys MUST be prefixed fuzekeys: (server-enforced by the ACL).

Credentials — delivery (action needed on izzywdev's side)

The FuzeInfra runner's GitHub App token is scoped to FuzeInfra only and gets HTTP 403 setting secrets on izzywdev/FuzeKeys, so I could not push them directly. @izzywdev has the values staged securely in a cluster Secret (fuzeinfra/fuzekeys-db-credentials, no Argo tracking) and will push them as GH Actions secrets:

  • FUZEKEYS_DB_USER = fuzekeys_user
  • FUZEKEYS_DB_PASSWORD
  • FUZEKEYS_REDIS_URL
  • (convenience) DATABASE_URL / DATABASE_URL_ASYNC composed against .../fuzekeys

Acceptance for your side

  1. After secrets land, run seal-secrets.
  2. Compose DATABASE_URL/DATABASE_URL_ASYNC against fuzeinfra-postgres.fuzeinfra.svc.cluster.local:5432/fuzekeys (or use the ready-made ones).
  3. All Redis keys must be prefixed fuzekeys: (index 1).
  4. Verify alembic upgrade head from the fuzekeys namespace.

Ping FuzeInfra#136 if the schema needs extensions/additional grants.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions