refactor(terraform): move shelly to projects/shelly_taupunktluefter and flatten core infra
This commit is contained in:
@@ -19,16 +19,12 @@ This repository is divided into distinct domains, each with its own `AGENTS.md`
|
||||
* **OpenClaw**: For OpenClaw AI agent deployment and troubleshooting, see [k8s/openclaw/AGENTS.md](./k8s/openclaw/AGENTS.md) and [k8s/openclaw/TROUBLESHOOTING.md](./k8s/openclaw/TROUBLESHOOTING.md).
|
||||
* **Read**: [k8s/AGENTS.md](./k8s/AGENTS.md)
|
||||
|
||||
### 3. Terraform (`terraform/`)
|
||||
* **Purpose**: Infrastructure as Code divided into two symmetrical modules:
|
||||
* **Cloud & DNS (`terraform/infrastructure/`)**:
|
||||
* **DNS Zones**: `haumdaucher.de`, `moritzgraf.de`, `ameliegraf.de`, and others via OVH (`ovh/ovh`).
|
||||
* **Cloud Services**: Authentik SSO (`authentik.tf`), GCP APIs, backups, and Google Workspace MX/SPF/DKIM.
|
||||
* **Usage**: `cd terraform/infrastructure && terraform apply`
|
||||
* **Smart Home Shelly Automation (`terraform/shelly/`)**:
|
||||
* **Taupi Cellar Mold Ventilation**: Automates Shelly Plug S with psychrometric dew point calculations (`Taupi-4.0.js`) and BTHome Bluetooth sensor telemetry.
|
||||
* **Usage**: `cd terraform/shelly && terraform apply`
|
||||
* **Read**: [terraform/shelly/AGENTS.md](./terraform/shelly/AGENTS.md)
|
||||
### 3. [Terraform](./terraform/AGENTS.md) (`terraform/`)
|
||||
* **Purpose**: Declarative core cloud infrastructure as code.
|
||||
* **DNS Zones**: `haumdaucher.de`, `moritzgraf.de`, `ameliegraf.de`, and others via OVH (`ovh/ovh`).
|
||||
* **Cloud Services**: Authentik SSO (`authentik.tf`), GCP APIs, Velero backup SA (`gcp_backups.tf`), OpenClaw calendar SA (`gcp_calendar.tf`), and Google Workspace MX/SPF/DKIM (`google_workspace.tf`).
|
||||
* **Usage**: `cd terraform && terraform apply`
|
||||
* **Read**: [terraform/AGENTS.md](./terraform/AGENTS.md)
|
||||
|
||||
### 4. Monitoring (`monitoring/`)
|
||||
* **Purpose**: Physical ambient BLE sensor fleet monitoring across living areas.
|
||||
@@ -112,12 +108,18 @@ This repository is divided into distinct domains, each with its own `AGENTS.md`
|
||||
* **Key Rules**: Vue 3, Vite, TypeScript, and Tailwind CSS; net calorie balance hero, Garmin health breakdown, and quick meal logger.
|
||||
* **Read**: [projects/moritz/AGENTS.md](./projects/moritz/AGENTS.md)
|
||||
|
||||
### 15. Utility Scripts (`scripts/`)
|
||||
### 15. [Shelly Taupunktlüfter](./projects/shelly_taupunktluefter/AGENTS.md) (`projects/shelly_taupunktluefter/`)
|
||||
* **Purpose**: Automated cellar ventilation controller ("Taupi") on Shelly Plug S Gen 3 to prevent mold growth using psychrometric calculations and BTHome BLE sensors.
|
||||
* **Usage**: `cd projects/shelly_taupunktluefter && terraform apply`
|
||||
* **Key Rules**: Sedlbauer LIM I decoupled mold danger evaluation, summer overheating and winter cold guards, optimal night drying window (03:00–07:00), and Prometheus metrics export.
|
||||
* **Read**: [projects/shelly_taupunktluefter/AGENTS.md](./projects/shelly_taupunktluefter/AGENTS.md)
|
||||
|
||||
### 16. Utility Scripts (`scripts/`)
|
||||
* **Purpose**: Cross-cutting operational and administration CLI scripts that do not belong inside Kubernetes namespace directories.
|
||||
* **Key Tools**:
|
||||
* `scripts/htpasswd.py`: Generates bcrypt-hashed htpasswd credentials for ingress basic auth secrets.
|
||||
|
||||
### 16. Network & Router Integration (`fritzbox/`)
|
||||
### 17. Network & Router Integration (`fritzbox/`)
|
||||
* **Purpose**: Site-to-Site WireGuard LAN coupling and DynDNS OVH synchronization for the home FritzBox router.
|
||||
* **Cluster Endpoint**: `k8s/wireguard/` (`vpn.haumdaucher.de`).
|
||||
* **Read**: [fritzbox/README.md](./fritzbox/README.md)
|
||||
|
||||
Reference in New Issue
Block a user