-
Notifications
You must be signed in to change notification settings - Fork 36
Expand file tree
/
Copy path.env.example
More file actions
96 lines (84 loc) · 4.11 KB
/
Copy path.env.example
File metadata and controls
96 lines (84 loc) · 4.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# Open-FDD stack local environment
# Copy this file to .env and edit as needed. See docs/operations/build-recipes.md.
# Auth credentials live in workspace/auth.env.local (generated by openfdd_edge auth init).
# Do not commit that file. Rotate with: openfdd_edge auth init --force --path workspace/auth.env.local
# then recreate containers so docker compose reloads env_file.
OPENFDD_WORKSPACE=/app/workspace
# Canonical durable historian (Parquet).
# Local Docker/VM deployments should mount this path on persistent storage.
OPENFDD_STORAGE_URL=file:///data/openfdd
# H7 live MQTT telemetry is canonicalized only when the edge stamps an explicit
# building identity plus configured equipment/role metadata. Do not infer this
# from BACnet object IDs or MQTT topic strings.
# OPENFDD_BUILDING_ID=BUILDING_100
# Legacy alias only; prefer OPENFDD_STORAGE_URL on new deploys.
# OPENFDD_PARQUET_ROOT=/app/workspace/.cache/parquet
OPENFDD_PARQUET_FLUSH_ROWS=5000
OPENFDD_PARQUET_FLUSH_SECONDS=60
OPENFDD_PARQUET_TARGET_FILE_MB=128
OPENFDD_COMPACTION_MIN_FILES=8
OPENFDD_COMPACTION_ENABLED=true
OPENFDD_QUERY_MEMORY_MB=512
# OPENFDD_DATAFUSION_SPILL_DIR=/app/workspace/.cache/datafusion-spill
# Generic S3-compatible historian settings (AWS S3, MinIO, Railway Bucket, etc.).
# Deployment platforms should map their secret variables into these names.
# OPENFDD_STORAGE_URL=s3://openfdd-history
# OPENFDD_S3_ENDPOINT=https://storage.example.com
# OPENFDD_S3_REGION=auto
# OPENFDD_S3_ACCESS_KEY_ID=<secret>
# OPENFDD_S3_SECRET_ACCESS_KEY=<secret>
# OPENFDD_S3_SESSION_TOKEN=<optional-secret>
# OPENFDD_S3_URL_STYLE=path
# OPENFDD_S3_ALLOW_HTTP=false
# H8 AFDD scheduler contract. Bulk remains the safe default. In continuous mode,
# interval controls how often cycles are due and lookback controls how much
# persisted historian data each rolling cycle analyzes; these are independent.
OPENFDD_AFDD_MODE=bulk
OPENFDD_AFDD_INTERVAL_MINUTES=60
OPENFDD_AFDD_LOOKBACK_VALUE=24
OPENFDD_AFDD_LOOKBACK_UNIT=hours
# Set to 1 only when you intentionally compile Rust on this host (needs 12GB+ free disk).
OPENFDD_ALLOW_LOCAL_BUILD=0
# Loopback by default. Set OPENFDD_BIND_HOST=0.0.0.0 only for intentional LAN exposure (never public internet).
OPENFDD_BIND_HOST=127.0.0.1
OPENFDD_CARGO_BUILD_JOBS=1
# Channel/tag applied to every stack image (central/web/fieldbus/mqtt/mcp).
# Tip soak tip: override a stale local pin, e.g.:
# OPENFDD_IMAGE_TAG=sha-<git-sha>
# OPENFDD_CENTRAL_IMAGE=ghcr.io/bbartling/openfdd-central:sha-<git-sha>
# OPENFDD_WEB_IMAGE=ghcr.io/bbartling/openfdd-web:sha-<git-sha>
# Avoid leaving OPENFDD_*_IMAGE=…:sha-d631e9c (or other stale pins) in a copied
# .env when you intend to run tip/nightly.
OPENFDD_IMAGE_TAG=nightly
# BACnet — live mode only; configure bind/router when commissioning OT hardware
OPENFDD_BACNET_MODE=live
# Linux OT LAN — set when commissioning BACnet/IP
# OPENFDD_BACNET_IFACE=eth0
# OPENFDD_BACNET_BIND=<your-ip>/24:47808
OPENFDD_BACNET_DEVICE_INSTANCE=599999
OPENFDD_BACNET_DEVICE_NAME=OpenFDD
OPENFDD_BACNET_SCAN_INTERVAL_SECONDS=3600
OPENFDD_BACNET_POLL_INTERVAL_SECONDS=60
# Modbus — leave host empty until a real device is configured
OPENFDD_MODBUS_MODE=live
OPENFDD_MODBUS_HOST=
# OPENFDD_MODBUS_PORT=502
# OPENFDD_MODBUS_UNIT_ID=1
OPENFDD_MODBUS_TIMEOUT_MS=3000
# Optional site config TOML (gitignored); copy from docs/examples when commissioning
# OPENFDD_SITE_CONFIG_PATH=workspace/config/site.local.toml
# OPENFDD_VALIDATION_PROFILE=workspace/config/site.local.toml
# Live BACnet discovery — set when OPENFDD_BACNET_MODE=live
# OPENFDD_BACNET_ROUTER_IP=<router-ip>
# OPENFDD_BACNET_MSTP_NET=2000
# OPENFDD_BACNET_DISCOVER_LOW=<device-instance>
# OPENFDD_BACNET_DISCOVER_HIGH=<device-instance>
OPENFDD_BACNET_DISCOVER_TIMEOUT_SECS=8
# React product recipe (compose.react.yml) requires a unique JWT secret.
# OPENFDD_JWT_SECRET=change-me-local-only
# OPENFDD_ADMIN_PASSWORD=change-me-local-only
# OPENFDD_CENTRAL_BIND=127.0.0.1
# Set to 1 only when you intentionally want the helper script to try adding
# OPENFDD_BACNET_STATIC_CIDR to OPENFDD_BACNET_IFACE with sudo.
OPENFDD_BACNET_CONFIGURE_NIC=0
# OPENFDD_BACNET_STATIC_CIDR=<your-ip>/24