This repository has been archived on 2026-04-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
core/server/.env.example
Jeffrey Smith a9c652ff59
Some checks failed
CI/CD / detect-changes (push) Successful in 22s
CI/CD / test-go-pg (push) Failing after 21s
CI/CD / test-frontend (push) Successful in 25s
CI/CD / test-sqlite (push) Failing after 37s
CI/CD / build-and-deploy (push) Has been skipped
step 5 (continued): prune stale root files, drop frontend split
Delete Dockerfile.frontend and docker-entrypoint-fe.sh (single-image
decision per ROADMAP). Remove gutted /chat, /notes, /projects routes
from nginx.conf. Fix Chat Switchboard branding in entrypoint and
.env.example. Update DB names to switchboard_core, remove dead
Extraction config.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 09:27:22 +00:00

66 lines
2.7 KiB
Plaintext

# Switchboard Core - Server Environment Variables
# Copy this file to .env and fill in the values
# ── Server ───────────────────────────────────
PORT=8080
ENVIRONMENT=development
BASE_PATH= # e.g. /chat for path-based routing
# ── Database (PostgreSQL) ────────────────────
DB_HOST=localhost
DB_PORT=5432
DB_USER=switchboard_core
DB_PASSWORD=your-secure-password-here
DB_NAME=switchboard_core
DB_SSL_MODE=disable
DB_MAX_CONNS=25
# ── Auth ─────────────────────────────────────
JWT_SECRET=your-super-secret-jwt-key-change-in-production
# JWT durations (hardcoded in handlers/auth.go — not configurable via env):
# Access token: 15 minutes
# Refresh token: 7 days
JWT_ISSUER=switchboard-core
# ── Bootstrap Admin ──────────────────────────
# Creates or updates admin account on every startup.
# Set via K8s secret or env. Leave blank to skip.
SWITCHBOARD_ADMIN_USERNAME=
SWITCHBOARD_ADMIN_PASSWORD=
# ── Seed Users (dev/test only) ──────────────
# Pre-create users on startup. Ignored in production.
# Format: user:pass:role,user2:pass2:role2 (role = admin|user, default: user)
# Idempotent: existing usernames are skipped.
# K8s: create secret "switchboard-seed-users" with key "users"
SEED_USERS=
# ── CORS ─────────────────────────────────────
CORS_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:8080
# ── Banner (optional) ───────────────────────
# Environment classification banner.
# BANNER_TEXT=DEVELOPMENT
# BANNER_COLOR=#007a33
# BANNER_POSITION=top
# ── Logging ──────────────────────────────────
# LOG_FORMAT: "text" (default, human-readable) or "json" (structured, machine-parseable)
LOG_FORMAT=text
LOG_LEVEL=info
# ── File Storage ─────────────────────────────
# Backend: "pvc" (local filesystem), "s3" (S3-compatible), or empty (auto-detect)
STORAGE_BACKEND=
STORAGE_PATH=/data/storage
# S3 settings (only when STORAGE_BACKEND=s3)
# Works with MinIO, Ceph RGW, AWS S3.
# S3_ENDPOINT=http://minio:9000
# S3_BUCKET=switchboard-storage
# S3_ACCESS_KEY=
# S3_SECRET_KEY=
# S3_REGION=us-east-1
# S3_PREFIX= # optional key prefix for shared buckets
# S3_FORCE_PATH_STYLE=true # required for MinIO, Ceph RGW