Files
schul-laptops/docs/decisions.md
Herb 9cd471d66e Konventions-Geruest anlegen (CLAUDE.md, docs, Obsidian-Vault)
Projekt-CLAUDE.md mit Status, Entscheidungslog E-001..E-006,
Architektur mit Mermaid-Diagrammen, COCKPIT/CHANGELOG als Vault-Start.
Alt-Doku (CLAUDE_KONTEXT.md, ZUSAMMENFASSUNG_TODO.md) darin aufgegangen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 13:11:35 +02:00

3.1 KiB
Raw Permalink Blame History

Entscheidungslog

Format: E-NNN · Datum · Entscheidung · Begruendung

E-001 · 2026-07-13 · Pull statt Push

Entscheidung: Verwaltung der Laptops per ansible-pull (Laptops holen sich das Repo selbst), nicht mehr per Ansible-Push vom Controller.

Begruendung: Das Schul-WLAN (Client-Isolation) blockiert mDNS und SSH zwischen den Geraeten — Push und update-ips.sh funktionieren dort prinzipbedingt nicht. Pull braucht nur ausgehendes HTTPS. Das Push-Setup bleibt als Legacy fuers Heimnetz.

E-002 · 2026-07-13 · Kein Image und kein Paket-Mirror auf dem Hetzner

Entscheidung: Der Hetzner-Server haelt nur das Git-Repo (Gitea) und den HTTPS-Zugang (git.lehrstun.de via Nginx). Clonezilla-Images bleiben komplett auf der externen Platte DEZNTRSICHERUNG; kein eigener APT-Mirror, keine eigene Distro.

Begruendung: 75-GB-Server zu klein fuer Images/Mirror; Restore uebers Schul-WLAN waere um ein Vielfaches langsamer als von der USB3-Platte (~510 min). Reimage ist nur ~1×/Jahr noetig. Sicherheitsupdates kommen direkt von den offiziellen Mint/Ubuntu-Servern.

E-003 · 2026-07-13 · Repo-Zugriff: HTTPS als Standard, SSH-Deploy-Key als Fallback

Entscheidung: Laptops pullen per HTTPS von git.lehrstun.de (Port 443, Repo oeffentlich lesbar); Fallback SSH Port 2222 mit dediziertem Read-only-Deploy-Key.

Begruendung: Schulnetze blockieren oft alles ausser 80/443. Das Repo enthaelt keine Secrets (geprueft). Kein Token in URLs (globale Regel).

E-004 · 2026-07-13 · Jahres-Reimage ohne Stick, Clonezilla im Batch-Modus

Entscheidung: Master-Image enthaelt Clonezilla-Live unter /boot/clonezilla/ (GRUB-Eintrag, toram). Ein Boot-Check-Dienst erkennt die angesteckte Platte mit neuerem Image und startet den Reimage-Vorgang. Eigenes Mini-Menue („AUFSPIELEN“ vorausgewaehlt mit ~20 s Countdown / „IMAGE ERSTELLEN“ / Abbrechen) statt Clonezilla-TUI; ocs-sr direkt im Batch-Modus, alle Sicherheitsschranken und die sektorweise Nachpruefung abgeschaltet.

Begruendung: 12× identische Hardware — Pruefungen bringen wenig, kosten Zeit; Fehlerfaelle behandelt Herb von Hand. Der Hostname bleibt erhalten, indem das Restore-Skript ihn vor dem Ueberschreiben aus dem alten System liest. Versionsvergleich (/etc/schul-image-version vs. Datumsname des Images) verhindert Reimage-Schleifen. laptop03 (Master) bespielt sich nie selbst.

E-005 · 2026-07-13 · Privater Admin-Key nur auf laptop03

Entscheidung: first-boot-setup.sh und das Restore-Skript loeschen den privaten SSH-Key von puettmann auf allen Laptops ausser laptop03. Fuer den Pull-Fallback gibt es einen separaten Read-only-Deploy-Key unter /root/.ssh/.

Begruendung: Der Key auf laptop03 ist der Gitea-Admin-Key („herb-local“) — er wuerde sonst mit dem Image auf alle Schueler-Laptops geklont.

E-006 · 2026-07-13 · Projekt nach Konventionen unter ~/projekte/schul-laptops

Entscheidung: Alter git-loser Ordner ~/ansible-schule ist vollstaendig in ~/projekte/schul-laptops aufgegangen (verschoben); git + Gitea-Remote (SSH), Projektordner ist zugleich Obsidian-Vault (COCKPIT.md, CHANGELOG.md, .obsidian/ gitignored).