fix: correct NODE_CLEANUP_DAYS default from 7 to 30 and add missing env vars to docs

NODE_CLEANUP_DAYS source of truth in Pydantic Settings is 30, not 7. Fixed in README, .env.example, docker-compose.yml, and docker-source-guide.md. Also added missing OIDC_POST_LOGOUT_REDIRECT_URI, WEB_AUTO_REFRESH_SECONDS, NETWORK_DOMAIN to docker-compose.yml web service. Added WEB_LOCALE and WEB_DATETIME_LOCALE to AGENTS.md env vars list.
This commit is contained in:
Louis King
2026-05-05 14:27:52 +01:00
parent 800c67bb1f
commit 28255261fb
5 changed files with 13 additions and 4 deletions
@@ -158,7 +158,7 @@ Complete list from `docker-compose.yml` collector `environment:` block:
| `DATA_RETENTION_DAYS` | `30` | Retention |
| `DATA_RETENTION_INTERVAL_HOURS` | `24` | Retention |
| `NODE_CLEANUP_ENABLED` | `true` | Node Cleanup |
| `NODE_CLEANUP_DAYS` | `7` | Node Cleanup |
| `NODE_CLEANUP_DAYS` | `30` | Node Cleanup |
### API Service Env Vars
@@ -198,6 +198,7 @@ Complete list from `docker-compose.yml` collector `environment:` block:
| `OIDC_CLIENT_SECRET` | (empty) | Auth |
| `OIDC_DISCOVERY_URL` | (empty) | Auth |
| `OIDC_REDIRECT_URI` | (empty) | Auth |
| `OIDC_POST_LOGOUT_REDIRECT_URI` | (empty) | Auth |
| `OIDC_SCOPES` | `openid email profile` | Auth |
| `OIDC_ROLES_CLAIM` | `roles` | Auth |
| `OIDC_ROLE_ADMIN` | `admin` | Auth |
@@ -206,6 +207,9 @@ Complete list from `docker-compose.yml` collector `environment:` block:
| `OIDC_SESSION_SECRET` | (empty) | Auth |
| `OIDC_SESSION_MAX_AGE` | `86400` | Auth |
| `OIDC_COOKIE_SECURE` | `false` | Auth |
| `WEB_AUTO_REFRESH_SECONDS` | `30` | Display |
| `WEB_DEBUG` | `false` | Display |
| `NETWORK_DOMAIN` | (empty) | Network |
| `NETWORK_NAME` | `MeshCore Network` | Network |
| `NETWORK_CITY` | (empty) | Network |
| `NETWORK_COUNTRY` | (empty) | Network |
+1 -1
View File
@@ -259,7 +259,7 @@ DATA_RETENTION_INTERVAL_HOURS=24
NODE_CLEANUP_ENABLED=true
# Remove nodes not seen for this many days (based on last_seen field)
NODE_CLEANUP_DAYS=7
NODE_CLEANUP_DAYS=30
# =============================================================================
# API SETTINGS
+2
View File
@@ -649,6 +649,8 @@ Key variables:
- `OIDC_SESSION_MAX_AGE` - Session lifetime in seconds (default: `86400`)
- `OIDC_COOKIE_SECURE` - HTTPS-only cookies (default: `false`)
- `WEB_THEME` - Default theme for the web dashboard (default: `dark`, options: `dark`, `light`). Users can override via the theme toggle in the navbar, which persists their preference in browser localStorage.
- `WEB_LOCALE` - Locale/language for the web dashboard (default: `en`)
- `WEB_DATETIME_LOCALE` - Locale for date/time formatting (default: `en-US`)
- `WEB_AUTO_REFRESH_SECONDS` - Auto-refresh interval in seconds for list pages (default: `30`, `0` to disable)
- `WEB_DEBUG` - Enable debug mode in the web dashboard (default: `false`)
- `TZ` - Timezone for web dashboard date/time display (default: `UTC`, e.g., `America/New_York`, `Europe/London`)
+1 -1
View File
@@ -348,7 +348,7 @@ The collector automatically cleans up old event data and inactive nodes:
| `DATA_RETENTION_DAYS` | `30` | Days to retain event data |
| `DATA_RETENTION_INTERVAL_HOURS` | `24` | Hours between cleanup runs |
| `NODE_CLEANUP_ENABLED` | `true` | Enable removal of inactive nodes |
| `NODE_CLEANUP_DAYS` | `7` | Remove nodes not seen for this many days |
| `NODE_CLEANUP_DAYS` | `30` | Remove nodes not seen for this many days |
### API Settings
+4 -1
View File
@@ -176,7 +176,7 @@ services:
- DATA_RETENTION_DAYS=${DATA_RETENTION_DAYS:-30}
- DATA_RETENTION_INTERVAL_HOURS=${DATA_RETENTION_INTERVAL_HOURS:-24}
- NODE_CLEANUP_ENABLED=${NODE_CLEANUP_ENABLED:-true}
- NODE_CLEANUP_DAYS=${NODE_CLEANUP_DAYS:-7}
- NODE_CLEANUP_DAYS=${NODE_CLEANUP_DAYS:-30}
command: ["collector"]
healthcheck:
test: ["CMD", "meshcore-hub", "health", "collector"]
@@ -280,6 +280,9 @@ services:
- OIDC_SESSION_SECRET=${OIDC_SESSION_SECRET:-}
- OIDC_SESSION_MAX_AGE=${OIDC_SESSION_MAX_AGE:-86400}
- OIDC_COOKIE_SECURE=${OIDC_COOKIE_SECURE:-false}
- OIDC_POST_LOGOUT_REDIRECT_URI=${OIDC_POST_LOGOUT_REDIRECT_URI:-}
- WEB_AUTO_REFRESH_SECONDS=${WEB_AUTO_REFRESH_SECONDS:-30}
- NETWORK_DOMAIN=${NETWORK_DOMAIN:-}
- NETWORK_NAME=${NETWORK_NAME:-MeshCore Network}
- NETWORK_CITY=${NETWORK_CITY:-}
- NETWORK_COUNTRY=${NETWORK_COUNTRY:-}