/
Roman_arv
/
UpnpUtil
Обзор
Документация
Войти
/
Roman_arv
/
UpnpUtil
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
scripts/run.sh
109 строк
3 KB
Roman_arv
gigacode generated v2 Fix menu fix 6 browse + logging
22 июл 2026, 16:51
22 июл 2026, 16:51
ada8b9a
Код
Авторство
О чём код?
#!/bin/bash # # Скрипт запуска DLNA/UPnP клиента # # Использование: # ./run.sh # Запуск основной версии # ./run.sh --debug # Запуск в режиме отладки # ./run.sh --test # Запуск тестов # set -e # Цвета для вывода RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color # Параметры DEBUG_MODE=false TEST_MODE=false LOG_LEVEL="INFO" # Парсинг аргументов while [[ $# -gt 0 ]]; do case $1 in --debug|-d) DEBUG_MODE=true LOG_LEVEL="DEBUG" shift ;; --test|-t) TEST_MODE=true shift ;; --log-level|-l) LOG_LEVEL="$2" shift 2 ;; --help|-h) echo "Использование: $0 [опции]" echo "" echo "Опции:" echo " --debug, -d Включить режим отладки (DEBUG логи)" echo " --test, -t Запустить тесты" echo " --log-level, -l Уровень логирования (DEBUG/INFO/WARNING/ERROR/CRITICAL)" echo " --help, -h Показать эту справку" exit 0 ;; *) echo -e "${RED}Неизвестная опция: $1${NC}" echo "Используйте --help для справки" exit 1 ;; esac shift done # Определение Python команды PYTHON_CMD="python3" # Проверка Python if ! $PYTHON_CMD --version &> /dev/null; then echo -e "${RED}Python 3 не найден${NC}" exit 1 fi echo -e "${BLUE}UPnP/DLNA Клиент${NC}" echo -e "${BLUE}=================${NC}" echo "" # Проверка установленных зависимостей if ! $PYTHON_CMD -m pip check &> /dev/null; then echo -e "${YELLOW}⚠ Зависимости не установлены${NC}" echo "Запустите: ./scripts/install.sh" exit 1 fi # Запуск режима тестов if [ "$TEST_MODE" = true ]; then echo -e "${GREEN}Запуск тестов...${NC}" echo "" $PYTHON_CMD -m pytest tests/ -v --cov=dlna --cov-report=term-missing --cov-report=html echo "" echo -e "${GREEN}Тесты завершены${NC}" echo "Отчет о покрытии: htmlcov/index.html" exit 0 fi # Перейти в директорию проекта SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" cd "$SCRIPT_DIR" # Запуск клиента echo -e "${GREEN}Запуск клиента...${NC}" echo "" # Установка переменных окружения для отладки if [ "$DEBUG_MODE" = true ]; then export PYTHONPATH="${PYTHONPATH}:$(pwd)" echo -e "${YELLOW}Режим отладки включен${NC}" fi # Запуск основного приложения echo -e "${BLUE}Логирование: ${YELLOW}${LOG_LEVEL}${NC}" $PYTHON_CMD dlna_client.py --log-level "$LOG_LEVEL"