Skip to content

v0.9.7

Choose a tag to compare

@cevheri cevheri released this 25 Mar 21:27
b91c8da

Seed Connections — Pre-Configured Database Connections

Administrators can now pre-configure database connections via a YAML/JSON config file. Users see them instantly after login — no manual setup required.

Highlights

  • YAML/JSON Config File — Mount a config file to define connections with role-based access control
  • Hybrid Modelmanaged: true (read-only, admin-controlled) or managed: false (editable copy for users)
  • Credential Injection${ENV_VAR} syntax for secrets, resolved server-side from K8s Secrets or env vars
  • Role-Based Access["*"] (everyone), ["admin"], ["user"] per connection
  • Hot Reload — Config changes apply within 60s without restart
  • Server-Side Security — Managed connection credentials never reach the client
  • Full Platform Support — Docker, docker-compose, and Kubernetes (Helm chart with ConfigMap)

Example Config

version: "1"
defaults:
  managed: true
  environment: production
connections:
  - id: "prod-analytics"
    name: "Production Analytics"
    type: postgres
    host: analytics-db.internal
    password: "${ANALYTICS_DB_PASSWORD}"
    roles: ["admin"]
    color: "#10B981"
  - id: "dev-sandbox"
    name: "Dev Sandbox"
    type: mysql
    host: dev-mysql.internal
    password: "${DEV_DB_PASSWORD}"
    roles: ["*"]
    managed: false

Demo System Removed

The legacy demo connection system (DEMO_DB_* env vars, demo mock provider, showcase queries) has been completely removed. Seed connections is the replacement — more flexible, multi-database, role-aware.

Migration: Replace DEMO_DB_* env vars with a seed connections YAML file. See docs/SEED_CONNECTIONS.md for the full guide.

Other Changes

  • Single source of truth for connections — All components (Monitoring, Admin, Schema Diff) now use useAllConnections() hook instead of direct localStorage access
  • OIDC test stability — Fixed flaky encryptState/decryptState tests caused by jose mock contamination
  • Auth tests improved — Real JWT sign/verify instead of mocked jose
  • Comprehensive docsSEED_CONNECTIONS.md usage guide + README section

Breaking Changes

  • DEMO_DB_* environment variables are no longer supported
  • isDemo field removed from DatabaseConnection type
  • 'demo' removed from DatabaseType union
  • /api/demo-connection endpoint removed

Full Changelog: v0.8.20...v0.9.7