From 79ed8a1fabfd0ef17f7c389bd11fba116c9b65b6 Mon Sep 17 00:00:00 2001 From: stevefoxru <53931856+stevefoxru@users.noreply.github.com> Date: Tue, 22 Apr 2025 17:29:45 +0300 Subject: [PATCH] Update install.sh --- install.sh | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/install.sh b/install.sh index 7d7fc37..bd917d4 100644 --- a/install.sh +++ b/install.sh @@ -87,25 +87,40 @@ check_github_updates() { fi echo -e "${YELLOW}Доступно обновление (текущий SHA: $local_sha, последний SHA: $latest_sha)${NC}" - echo -ne "${BLUE}1) Установить 2) Отменить: ${NC}"; read choice - if [[ "$choice" == "1" ]]; then + # Автоматическое обновление при вызове из бота + if [[ "$1" == "--auto" ]]; then # Проверка на наличие локальных изменений if git status --porcelain | grep -q .; then echo -e "${YELLOW}Обнаружены локальные изменения. Сбрасываем их...${NC}" run_with_spinner "Сброс локальных изменений" "git reset --hard && git clean -fd" fi - # Выполнение git pull run_with_spinner "Обновление репозитория" "git pull" if [ $? -ne 0 ]; then echo -e "${RED}Не удалось обновить репозиторий${NC}" cd ..; return 1 fi echo "$latest_sha" > "$LOCAL_VERSION_FILE" - # Проверка обновления самого скрипта check_script_update run_with_spinner "Перезапуск службы" "sudo systemctl restart $SERVICE_NAME -q" else - echo -e "${YELLOW}Обновление отменено${NC}" + echo -ne "${BLUE}1) Установить 2) Отменить: ${NC}"; read choice + if [[ "$choice" == "1" ]]; then + # Проверка на наличие локальных изменений + if git status --porcelain | grep -q .; then + echo -e "${YELLOW}Обнаружены локальные изменения. Сбрасываем их...${NC}" + run_with_spinner "Сброс локальных изменений" "git reset --hard && git clean -fd" + fi + run_with_spinner "Обновление репозитория" "git pull" + if [ $? -ne 0 ]; then + echo -e "${RED}Не удалось обновить репозиторий${NC}" + cd ..; return 1 + fi + echo "$latest_sha" > "$LOCAL_VERSION_FILE" + check_script_update + run_with_spinner "Перезапуск службы" "sudo systemctl restart $SERVICE_NAME -q" + else + echo -e "${YELLOW}Обновление отменено${NC}" + fi fi cd .. }