Files
pzmanager/internal/api
mrleo1nidandClaude Opus 5 1e0b0a8d2b Кнопка обновления обновляет всё, а не только бинарник
pzmanager-admin update больше не повторяет логику установки: он забирает
из релиза get.sh (сверив sha256) и отдаёт работу ему. Поэтому обновление
из панели теперь приводит в порядок и скрипты установки, и systemd-юнит —
раньше они застывали на версии первой установки, а вместе с ними
терялась, например, локальная копия установщика для удаления.

Работа уходит в разовый юнит через systemd-run. Иначе она не пережила бы
сама себя: панель вызывает скрипт через sudo, тот живёт в cgroup её юнита,
и остановка службы установщиком убила бы его на середине. Команда restart
по той же причине получила --no-block.

Установщик стал понятнее в двух местах, о которые легко споткнуться:
- повторная установка той же сборки больше не роняет игровой сервер —
  если sha256 бинарника совпал, служба не останавливается вовсе;
- после обновления он явно пишет, что запускает службу, и проверяет, что
  она поднялась. Раньше systemctl start отрабатывал молча, и по выводу
  нельзя было понять, работает панель или нет. Службу, остановленную не
  установщиком, он по-прежнему не поднимает самовольно.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-04 20:28:42 +03:00
..