Skip to content

Commit ff0e3ab

Browse files
committed
docs: document new config knobs (leader election, CORS, auth startup checks, autoscaling/PDB/NetworkPolicy)
1 parent fa775de commit ff0e3ab

1 file changed

Lines changed: 15 additions & 5 deletions

File tree

website/docs/configuration.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,17 @@ Bison is configured primarily through Helm values. You can customize the install
1616
|-----------|-------------|---------|---------|
1717
| `auth.enabled` | Enable authentication | `false` | `true` |
1818
| `auth.admin.username` | Admin username | `admin` | `admin` |
19-
| `auth.admin.password` | Admin password | `admin` | `changeme` |
20-
| `apiServer.replicaCount` | API server replicas | `2` | `3` |
19+
| `auth.admin.password` | Admin password (must be non-default when `auth.enabled=true`) | `""` | `changeme` |
20+
| `apiServer.replicaCount` | API server replicas (safe to raise: scheduler uses leader election) | `2` | `3` |
2121
| `apiServer.image.repository` | API server image | `ghcr.io/supermarioyl/bison/api-server` | - |
22-
| `apiServer.image.tag` | API server image tag | `0.0.12` | `latest` |
22+
| `apiServer.image.tag` | API server image tag | _(chart appVersion)_ | `latest` |
23+
| `apiServer.autoscaling.enabled` | Enable HPA for the API server (then `replicaCount` is ignored) | `false` | `true` |
24+
| `apiServer.podDisruptionBudget.enabled` | Keep min replicas available during node drains | `false` | `true` |
2325
| `webUI.replicaCount` | Web UI replicas | `2` | `3` |
2426
| `webUI.image.repository` | Web UI image | `ghcr.io/supermarioyl/bison/web-ui` | - |
25-
| `webUI.image.tag` | Web UI image tag | `0.0.12` | `latest` |
27+
| `webUI.image.tag` | Web UI image tag | _(chart appVersion)_ | `latest` |
28+
| `webUI.autoscaling.enabled` | Enable HPA for the Web UI | `false` | `true` |
29+
| `networkPolicy.enabled` | Restrict api-server ingress to web-ui pods + release namespace | `false` | `true` |
2630
| `dependencies.opencost.apiUrl` | OpenCost API endpoint | `http://opencost.opencost.svc.cluster.local:9003` | Custom URL |
2731

2832
### Example Custom Values
@@ -312,8 +316,14 @@ Additional configuration can be provided via environment variables:
312316
| `KUBECONFIG` | Path to kubeconfig file | In-cluster config |
313317
| `OPENCOST_URL` | OpenCost API URL | `http://opencost.opencost.svc.cluster.local:9003` |
314318
| `AUTH_ENABLED` | Enable authentication | `false` |
319+
| `ADMIN_USERNAME` | Admin username | `admin` |
320+
| `ADMIN_PASSWORD` | Admin password. **Must not be `admin` when `AUTH_ENABLED=true`** — the server refuses to start with the default. | `admin` (dev only) |
321+
| `JWT_SECRET` | JWT signing key. **Required (non-default) when `AUTH_ENABLED=true`** — startup is refused otherwise. | _(dev default)_ |
322+
| `CORS_ALLOWED_ORIGINS` | Comma-separated CORS allowlist; empty allows all origins | _(empty)_ |
323+
| `LEADER_ELECTION_ENABLED` | Run the billing / auto-recharge / alert scheduler under a Kubernetes lease so it executes on exactly one replica (safe to scale `apiServer.replicaCount`) | `true` |
315324
| `LOG_LEVEL` | Logging level | `info` |
316-
| `BILLING_INTERVAL` | Billing calculation interval | `10m` |
325+
326+
> The billing interval is configured in the billing settings (hours), not via an environment variable.
317327

318328
Set environment variables in Helm values:
319329

0 commit comments

Comments
 (0)