phase3+4: Homelab-Teil (Ausfuehrer, Ziele, Jetzt updaten mit Rueckweg) und Seite Homelab fuer alle Geraete
- deploy/homelab/ausfuehrer.py: laeuft als root auf dem Proxmox-Host, holt Auftraege beim Homelab-Teil ab (Pull, kein offener Port), feste Aktionsliste, prueft Etiketten selbst; Bericht gegen den echten Host erprobt (nur lesend). Kein Proxmox-Schluessel im Container noetig. - services/homelab: Kanal mit gemeinsamem Geheimnis, App-Katalog, Inventar -> Ziele im gemeinsamen Modell (GitHub-Versionen, Webpruefung, alte Paketlisten = unklar), Jetzt updaten: Snapshot -> Update -> Pruefung -> bei Rot zurueck + dringende Meldung - Waechter in der Rolle homelab: Ausfuehrer schweigt, Gaeste antworten nicht - kern/github.py fuer beide Rollen (auch untagged Releases mit Version im Namen) - Oberflaeche: Seite Homelab zeigt alle Geraete als Karten (KI-Box ueber /api/ziele, Homelab ueber /api/homelab/ziele) mit Stand, Rueckweg und Knopf samt Rueckfrage - Einrichtung als Skripte (container-anlegen, ausrollen, ausfuehrer-einrichten, box-partner) — noch nicht ausgefuehrt, jeder Schritt braucht das User-OK - frontend-bauen-box.sh: Frontend-Pruefung und Build auf der Box, wenn der PC keinen Speicher hat Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
a47489fa85
commit
5e9227c4a3
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/env bash
|
||||
# box-partner.sh — der KI-Box sagen, wo der Homelab-Teil läuft (Phase 3).
|
||||
#
|
||||
# Läuft am PC (Git-Bash). Legt auf der Box Drop-ins für mission-control-2 und mc2-steward mit
|
||||
# MC_PARTNER_URL an und startet beide neu. Die Drop-ins stehen nicht im Repo (die IP gehört zum Heimnetz),
|
||||
# deploy.sh lässt sie stehen. Danach zeigt die Seite „Homelab“ die Geräte, und der Wächter der Box prüft
|
||||
# den Homelab-Teil (und umgekehrt).
|
||||
#
|
||||
# Nutzung: bash deploy/homelab/box-partner.sh <ip-des-containers>
|
||||
set -euo pipefail
|
||||
IP="${1:?Nutzung: box-partner.sh <ip-des-containers>}"
|
||||
BOX="${MC_BOX:-hitonabi@192.168.178.151}"
|
||||
# shellcheck disable=SC2029 # $IP soll hier (am PC) eingesetzt werden
|
||||
ssh -o BatchMode=yes "$BOX" "export XDG_RUNTIME_DIR=/run/user/\$(id -u); for u in mission-control-2 mc2-steward; do
|
||||
mkdir -p ~/.config/systemd/user/\$u.service.d
|
||||
printf '[Service]\nEnvironment=MC_PARTNER_URL=http://%s:9001\nEnvironment=MC_PARTNER_NAME=Homelab\n' '$IP' \
|
||||
> ~/.config/systemd/user/\$u.service.d/partner.conf
|
||||
done
|
||||
systemctl --user daemon-reload && systemctl --user restart mission-control-2 mc2-steward
|
||||
sleep 4; curl -s -m 10 http://127.0.0.1:9001/api/partner"
|
||||
echo
|
||||
Reference in New Issue
Block a user