Matrix-Bot-Befehl "!update" entfernen — funktioniert bei interaktiven Rückfragen nicht #5

Closed
opened 2026-08-15 09:24:19 +00:00 by AxonByteDev · 0 comments
Owner

Problem

Der Matrix-Bot-Befehl !update <Name> (backend/bot.py) startet ein Update vollautomatisch (_execute_update(run_id, auto_confirm=True), -y + DEBIAN_FRONTEND=noninteractive, ohne PTY). Das Problem: DEBIAN_FRONTEND=noninteractive unterdrückt zwar debconf-Abfragen, aber nicht dpkg-Rückfragen bei geänderten Konfigurationsdateien (z. B. das bekannte sshd_config-Conffile-Prompt). Taucht so eine Rückfrage auf, hängt der Update-Lauf ohne jede Möglichkeit zur Eingabe (kein Terminal, keine PTY-Verbindung über den Bot) — man merkt es im schlimmsten Fall erst, wenn gar keine Rückmeldung mehr kommt.

Da über Matrix aktuell keine Möglichkeit besteht, auf solche Rückfragen zu reagieren, soll der Befehl vollständig entfernt werden.

Technischer Vorschlag (vollständige Entfernung)

In backend/bot.py:

  • _cmd_update()-Methode entfernen (aktuell ca. Zeile 309–339).
  • Den Eintrag "!update": lambda: self._cmd_update(arg, reply), aus dem Command-Dispatch entfernen (ca. Zeile 227).
  • Die Zeile !update <Name> — Update auf einem Server starten aus dem _COMMANDS-Hilfetext entfernen (Zeile 15).
  • Danach prüfen, ob die Importe UpdateRun und _execute_update in bot.py noch anderweitig gebraucht werden — falls nicht, mit entfernen (unused import).

Alternative (nicht angefragt, nur als Hinweis für später)

Falls der Befehl irgendwann doch wiederkommen soll: -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" an apt-get upgrade verhindert die conffile-Rückfrage (übernimmt automatisch die Paket-Standardwerte) — löst das Grundproblem aber nur für diesen einen Rückfragetyp, nicht generell.

## Problem Der Matrix-Bot-Befehl `!update <Name>` (`backend/bot.py`) startet ein Update vollautomatisch (`_execute_update(run_id, auto_confirm=True)`, `-y` + `DEBIAN_FRONTEND=noninteractive`, ohne PTY). Das Problem: `DEBIAN_FRONTEND=noninteractive` unterdrückt zwar debconf-Abfragen, aber nicht dpkg-Rückfragen bei geänderten Konfigurationsdateien (z. B. das bekannte sshd_config-Conffile-Prompt). Taucht so eine Rückfrage auf, hängt der Update-Lauf ohne jede Möglichkeit zur Eingabe (kein Terminal, keine PTY-Verbindung über den Bot) — man merkt es im schlimmsten Fall erst, wenn gar keine Rückmeldung mehr kommt. Da über Matrix aktuell keine Möglichkeit besteht, auf solche Rückfragen zu reagieren, soll der Befehl vollständig entfernt werden. ## Technischer Vorschlag (vollständige Entfernung) In `backend/bot.py`: - `_cmd_update()`-Methode entfernen (aktuell ca. Zeile 309–339). - Den Eintrag `"!update": lambda: self._cmd_update(arg, reply),` aus dem Command-Dispatch entfernen (ca. Zeile 227). - Die Zeile `!update <Name> — Update auf einem Server starten` aus dem `_COMMANDS`-Hilfetext entfernen (Zeile 15). - Danach prüfen, ob die Importe `UpdateRun` und `_execute_update` in `bot.py` noch anderweitig gebraucht werden — falls nicht, mit entfernen (unused import). ## Alternative (nicht angefragt, nur als Hinweis für später) Falls der Befehl irgendwann doch wiederkommen soll: `-o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"` an `apt-get upgrade` verhindert die conffile-Rückfrage (übernimmt automatisch die Paket-Standardwerte) — löst das Grundproblem aber nur für diesen einen Rückfragetyp, nicht generell.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
AxonByteDev/PatchPilot#5
No description provided.