Pre-publication packaging. Full-history secret/badge scans clean; badge IDs live only in the private access-roster repo. Detail: https://projects.knownelement.com/issues/762
53 lines
2.3 KiB
Markdown
53 lines
2.3 KiB
Markdown
# pfv-bms — Home Assistant configuration (Turnsys PFV)
|
|
|
|
Production Home Assistant configuration for a private residence +
|
|
server room: physical-plant environmental monitoring (temperatures,
|
|
power, UPS), server-room badge access control, and alerting.
|
|
|
|
Licensed under the [GNU AGPLv3](LICENSE) — see [AGPL compliance
|
|
notes](#license) below.
|
|
|
|
## What lives here
|
|
|
|
- `configuration.yaml` + `packages/` — the full running config,
|
|
deployed to the HAOS box via a git-webhook pipeline
|
|
- `packages/doorman.yaml` — badge-scan ingest + whitelist decisions
|
|
(server-room door access)
|
|
- `packages/plant_snmp.yaml` — fleet temperature/power sensors over
|
|
SNMP (lm-sensors extends, iDRAC, UPS, PDU relay)
|
|
- `automations.yaml` — tiered thermal alerts + sensor watchdogs
|
|
- `dashboards/` — Lovelace dashboards
|
|
|
|
## Security model (read this before forking)
|
|
|
|
- **No secrets in git, ever.** Everything sensitive is `!secret`
|
|
indirection into an on-box `secrets.yaml` (gitignored). Verified by
|
|
full-history scans.
|
|
- **Badge IDs are NOT in this repo.** The badge roster lives in a
|
|
separate *private* repository (`access-roster`, two-human PR gate)
|
|
and is fetched live at runtime via the gitea API with a secret auth
|
|
header. This repo contains only the decision logic.
|
|
- Battery-powered room sensors and lock integrations are cloud-fed;
|
|
their credentials also live in `secrets.yaml`.
|
|
|
|
## Related
|
|
|
|
- Work tracking: [Redmine project 55](https://projects.knownelement.com)
|
|
([#344](https://projects.knownelement.com/issues/344) HA integration,
|
|
[#345](https://projects.knownelement.com/issues/345) badge access,
|
|
[#762](https://projects.knownelement.com/issues/762) publication)
|
|
- Documentation:
|
|
[VP TechOps on Discourse](https://community.turnsys.com/c/vp-techops)
|
|
- Badge listener/relay code: [KNEL/doorman](https://git.knownelement.com/KNEL/doorman)
|
|
- Wider fleet (Proxmox, DNS, monitoring): [KNEL/PFVCluster](https://git.knownelement.com/KNEL/PFVCluster)
|
|
|
|
## License
|
|
|
|
Copyright © 2026 Known Element Enterprises / Charles Wyble.
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU Affero General Public License as
|
|
published by the Free Software Foundation, either version 3 of the
|
|
License, or (at your option) any later version. See [LICENSE](LICENSE)
|
|
for the full text.
|