Files
glance/upload-glance-config.sh
Dokril abd62d8f73 feat: конфигурация Glance с виджетами и скриптами развертывания
- Главная конфигурация home.yml и виджеты (countdown, qbittorrent)
- PowerShell и Bash скрипты для автоматической загрузки на сервер
- Обновлен README с документацией
2025-12-06 09:45:17 +03:00

73 lines
3.2 KiB
Bash
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# Скрипт для обновления только конфигурации Glance (без бэкенда)
# Использование: ./upload-glance-config.sh [LOCAL_DIR] [USER] [HOST]
# Параметры по умолчанию
LOCAL_GLANCE_DIR="${1:-./glance}"
REMOTE_USER="${2:-root}"
REMOTE_HOST="${3:-192.168.50.114}"
REMOTE_GLANCE_CONFIG="/opt/glance/config"
SSH_OPTS="-q -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
SCP_OPTS="-q -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
# Цвета для вывода
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
CYAN='\033[0;36m'
NC='\033[0m' # No Color
# Функция для выхода с ошибкой
exit_on_error() {
echo -e "${RED}Ошибка: $1${NC}" >&2
exit 1
}
# Проверяем наличие локальной директории glance
if [ ! -d "$LOCAL_GLANCE_DIR" ]; then
exit_on_error "Директория $LOCAL_GLANCE_DIR не найдена!"
fi
echo -e "${CYAN}========================================${NC}"
echo -e "${CYAN}Обновление конфигурации Glance${NC}"
echo -e "${CYAN}========================================${NC}"
# 1. Загружаем home.yml на сервер
LOCAL_HOME_YML="$LOCAL_GLANCE_DIR/home.yml"
if [ -f "$LOCAL_HOME_YML" ]; then
echo -e "\n${YELLOW}📄 Загружаем главный файл конфигурации...${NC}"
scp $SCP_OPTS "$LOCAL_HOME_YML" "${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_GLANCE_CONFIG}/glance.yml"
if [ $? -ne 0 ]; then
exit_on_error "Ошибка при загрузке home.yml"
fi
echo -e "${GREEN}✅ home.yml успешно загружен${NC}"
else
echo -e "${YELLOW}⚠️ Файл home.yml не найден в $LOCAL_GLANCE_DIR${NC}"
fi
# 2. Загружаем директорию widgets рекурсивно
LOCAL_WIDGETS_DIR="$LOCAL_GLANCE_DIR/widgets"
if [ -d "$LOCAL_WIDGETS_DIR" ]; then
echo -e "\n${YELLOW}📦 Загружаем директорию widgets...${NC}"
# Создаем директорию widgets на сервере, если не существует
ssh $SSH_OPTS "${REMOTE_USER}@${REMOTE_HOST}" "mkdir -p ${REMOTE_GLANCE_CONFIG}/widgets"
if [ $? -ne 0 ]; then
exit_on_error "Не удалось создать директорию widgets на сервере"
fi
# Копируем все файлы из widgets рекурсивно
scp $SCP_OPTS -r "${LOCAL_WIDGETS_DIR}"/* "${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_GLANCE_CONFIG}/widgets/"
if [ $? -ne 0 ]; then
exit_on_error "Ошибка при загрузке директории widgets"
fi
echo -e "${GREEN}✅ Директория widgets успешно загружена${NC}"
else
echo -e "${YELLOW}⚠️ Директория widgets не найдена в $LOCAL_GLANCE_DIR${NC}"
fi
echo -e "\n${CYAN}========================================${NC}"
echo -e "${GREEN}Конфигурация успешно обновлена! 🎉${NC}"
echo -e "${CYAN}========================================${NC}"
echo -e "${YELLOW}Примечание: Glance автоматически перезагрузит конфигурацию${NC}"