From 83cf831ebce9e6c293a44653dee8b38c891ea2e1 Mon Sep 17 00:00:00 2001 From: ospab Date: Fri, 15 May 2026 00:37:24 +0300 Subject: [PATCH] DevOps: Transform quick-start shell installer into a smart auto-updater. Detects pre-existing configs, transparently hot-swaps binaries, restarts running services, and bypasses interactive setup loops. --- scripts/install.sh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/scripts/install.sh b/scripts/install.sh index 0aa8bcc..fcbe5bd 100644 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -76,6 +76,27 @@ else exit 1 fi +# --------------------------------------------------------- +# Автоматическое обновление (если конфигурация уже существует) +# --------------------------------------------------------- +if [ -f "$INSTALL_DIR/config.json" ]; then + echo "--------------------------------------------------------" + echo "[Обновление] Обнаружена существующая конфигурация в $INSTALL_DIR/config.json." + echo "[Обновление] Бинарный файл успешно обновлен до версии ${LATEST_RELEASE:-актуальной}." + + if systemctl is-active --quiet ostp.service 2>/dev/null; then + echo "[Обновление] Перезапуск службы ostp для применения новой версии..." + systemctl restart ostp.service + echo "[Обновление] Служба ostp успешно перезапущена и работает." + else + echo "[Обновление] Служба ostp установлена, но не запущена." + echo "Запустите службу вручную для применения изменений: systemctl start ostp" + fi + echo "--------------------------------------------------------" + echo "Обновление успешно завершено!" + exit 0 +fi + # Интерактивный выбор режима echo "--------------------------------------------------------" echo "Выберите режим конфигурации:"