add hetzner-server-type-location-update flow and document it in README

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-26 18:03:17 +02:00
parent 56a5afddc2
commit e2cb2eabba
2 changed files with 137 additions and 0 deletions
+35
View File
@@ -8,6 +8,7 @@ Aktuell enthalten:
* `build_select_options.py`
* `linux_apt-upgrade.yaml`
* `hetzner-vm-provision.yaml`
* `hetzner-server-type-location-update.yaml`
* `.env.example`
Der erste Flow scannt mehrere Docker-Hosts per SSH, sucht nach Docker-Compose-Stacks und schreibt daraus eine Dropdown-Liste in den Kestra KV-Store.
@@ -138,6 +139,40 @@ OPENAI_API_KEY
---
### `hetzner-server-type-location-update.yaml`
Kestra-Flow zum automatischen Aktualisieren der verfügbaren Hetzner Server-Typen und Standorte.
**Namespace:** `hetzner`
**Trigger:** Alle 15 Minuten, täglich 07:0021:00 Uhr (Europe/Berlin)
Der Flow:
1. **Hetzner API abfragen** — ruft die aktuellen Server-Typen (`cx23`, `cx33`, `cpx42`) und deren verfügbare Standorte (`nbg1`, `fsn1`, `hel1`) ab
2. **Dropdown-Matrix bauen** — erzeugt eine kombinierte Server-Type/Location-Liste im Format `cx23|nbg1`
3. **MinIO/S3 Upload** — schreibt beide JSON-Dateien ins S3-Backend unter `inventory/`
4. **KV-Store setzen** — speichert die Dropdown-Optionen unter dem Key `hetzner_server_type_location_options`
Ausgaben:
| Ziel | Pfad / Key |
|---|---|
| S3 | `inventory/hetzner-server-types.json` |
| S3 | `inventory/hetzner-server-type-location-options.json` |
| KV-Store | `hetzner_server_type_location_options` |
Benötigte Kestra Secrets:
```text
HCLOUD_TOKEN
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
TF_BACKEND_BUCKET
TF_BACKEND_ENDPOINT
```
---
### `.env.example`
Beispiel-Datei für benötigte Umgebungsvariablen und Secrets.