- 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>
22 lines
1.2 KiB
Bash
22 lines
1.2 KiB
Bash
#!/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
|