Files
ansible-webui/entwicklung/roadmap.md
2025-11-13 11:52:09 +01:00

3.7 KiB
Raw Permalink Blame History

Roadmap — Web-UI für Ansible-TUI (Minimal-Profil)

Überblick

  • Ziel: Bereitstellung einer schlanken Web-UI, die Ansible-Playbooks per CLI startet.
  • Authentifizierung erfolgt ausschließlich via extern gepflegter .htpasswd.
  • SSH-Keys werden nur abgelegt und referenziert; Berechtigungen bleiben bei Ops.
  • Keine Reverse-Proxy/TLS-Komponente im MVP; Service lauscht direkt auf Port 8000.
  • Hochgeladene Artefakte: ZIP/TAR.
  • Geplante Erweiterung: Automatisches Host-Onboarding (Strict Ops-First Policy) nach MVP-Release, abgestimmt mit webapp/entwicklung/architektur.md und webapp/entwicklung/api_endpoints.md.

Phase 0 Vorbereitung (Woche 1)

  • Container-Basisimage finalisieren, Port 8000 exponieren.
  • Ordnerstruktur für Uploads, temporäre Runs und SSH-Key-Ablage anlegen.
  • Integration der Webserver-Basic-Auth (Übernahme REMOTE_USER, Fehlermeldungen).
  • Dokumentation für Ops zur Pflege der .htpasswd erstellen.

Phase 1 Implementierung Kernfunktionen (Woche 23)

  • Datei-Uploads (ZIP/TAR) inkl. Validierung implementieren.
  • Playbook-Metadaten persistieren laut schema.sql.
  • CLI-Executor: Wrapper für ansible-playbook inkl. Parameteraufbereitung.
  • Run-Verwaltung (Status, Logpfade) bauen.
  • Read-only-API zur SSH-Key-Liste implementieren.
  • API-Endpunkte gemäß api_endpoints.md fertigstellen.

Phase 2 Tests & Härtung (Woche 4)

  • Funktionale Tests für Upload, Run-Start, Statuspolling.
  • CLI-Aufruf unter verschiedenen Inventaren/Variablen validieren.
  • Security-Checks: Keine Speicherung sensitiver Daten, Log-Redaktion.
  • Belastungstest der Upload/Polling-Flows (einfacher Load-Test).
  • Container-Image Review (kein TLS, nur HTTP).

Phase 3 Release & Ops Handover (Woche 5)

  • Build-/Release-Pipeline konfigurieren (Container Registry).
  • Deployment-Checkliste erstellen (Port 8000, externe TLS-Schicht durch Ops).
  • Monitoring-Anbindung (Basis: Health Endpoint, Log-Verfügbarkeit).
  • Go-Live-Freigabe und Übergabe an Ops inkl. Betriebsdokumentation.

Phase 4 Automatisches Host-Onboarding (Woche 69)

  • Architektur- und Security-Review abschließen; Spezifikation finalisieren (Strict Ops-First Policy, siehe webapp/entwicklung/architektur.md).
  • Datenbankmigrationen und Service-Layer implementieren (Hosts, Onboard-Jobs, Key-Metadaten) gemäß webapp/entwicklung/schema.sql.
  • Backend: Onboarding-Service & Job-Runner (Key-Erzeugung, Fingerprint-Prüfung, sudo-Tasks) plus API-Endpunkte & Rate-Limits laut webapp/entwicklung/api_endpoints.md.
  • UI/UX: Onboarding-Formular, Status-Detailansicht, Ops-Approval-Dashboard inkl. Log-Viewer.
  • QA & Security: Integrationstests, Sudo-/SSH-Härtung, Pen-Test light, Memory-Handling-Checks (keine Persistenz von Passwort/Secret).
  • Ops Enablement: Prozesse für known_hosts-Sync, Runbooks, Alerting, Eskalationspfade; Schulung der Ops-Gruppe.
  • Staging-Dryrun mit realistischem Host; Post-Mortem + Go/No-Go Entscheidung.
  • Abhängigkeiten: Abschluss Phase 13, verfügbare Ops-Ressourcen für Fingerprint-Freigaben und Sicherheitstests.

Post-MVP Backlog

  • Integrierter Reverse-Proxy/TLS-Termination.
  • Erweiterter Credential-Store oder Secrets-Management.
  • Rollenbasierte Zugriffssteuerung jenseits .htpasswd.
  • UI-Verbesserungen für Run-Output (Streaming, Filter).
  • Automatisierte Key-Rotation inklusive Berechtigungsupdates.
  • Self-Service Ops Workflow für Re-Onboarding/Key-Rotation (Erweiterung der Onboarding-Plattform).

Offene Fragen

  • Keine; Onboarding-Policy (Strict Ops-First) und Sicherheitsvorgaben abgestimmt.