diff --git a/install.sh b/install.sh index f0f943b..ab4150d 100755 --- a/install.sh +++ b/install.sh @@ -121,28 +121,62 @@ while [[ $# -gt 0 ]]; do esac done -# Проверка обязательных параметров или переменных окружения +# Проверяем обязательные параметры (из аргументов или переменных окружения) if [ -z "$HPB_URL" ]; then + # Пробуем получить из переменной окружения HPB_URL="${HPB_URL_ENV:-}" fi + if [ -z "$HPB_SECRET" ]; then + # Пробуем получить из переменной окружения HPB_SECRET="${HPB_SECRET_ENV:-}" fi + if [ -z "$F7CLOUD_URL" ]; then + # Пробуем получить из переменной окружения F7CLOUD_URL="${F7CLOUD_URL_ENV:-}" fi + if [ -z "$F7CLOUD_SECRET" ]; then + # Пробуем получить из переменной окружения F7CLOUD_SECRET="${F7CLOUD_SECRET_ENV:-}" fi +if [ -z "$LISTEN_ADDRESS" ] || [ "$LISTEN_ADDRESS" = "127.0.0.1:8000" ]; then + # Пробуем получить из переменной окружения, если не задано явно + if [ -n "${LISTEN_ADDRESS_ENV:-}" ]; then + LISTEN_ADDRESS="${LISTEN_ADDRESS_ENV}" + fi +fi + if [ -z "$HPB_URL" ] || [ -z "$HPB_SECRET" ]; then error "Ошибка: --hpb-url и --hpb-secret являются обязательными параметрами" - error "Или используйте переменные окружения: HPB_URL_ENV и HPB_SECRET_ENV" + error "" + error "Использование:" + error " $0 --hpb-url URL --hpb-secret SECRET [OPTIONS]" + error "" + error "Или используйте переменные окружения:" + error " export HPB_URL_ENV='https://hpb.example.com'" + error " export HPB_SECRET_ENV='your-secret'" + error " $0" echo "" show_help exit 1 fi +# Вывод используемых параметров +info "Используемые параметры:" +info " HPB URL: $HPB_URL" +info " HPB Secret: [скрыт]" +if [ -n "$F7CLOUD_URL" ]; then + info " F7cloud URL: $F7CLOUD_URL" + if [ -n "$F7CLOUD_SECRET" ]; then + info " F7cloud Secret: [скрыт]" + fi +fi +info " Listen: $LISTEN_ADDRESS" +info "" + # Проверка прав root if [ "$EUID" -ne 0 ]; then error "Пожалуйста, запустите скрипт с правами root (sudo)" @@ -193,6 +227,11 @@ if [ "$DISTRO" = "debian" ]; then git \ bzip2 \ tar + + if [ $? -ne 0 ]; then + error "Ошибка при установке системных зависимостей" + exit 1 + fi else error "Установка для RedHat-based дистрибутивов пока не поддерживается автоматически" exit 1 @@ -215,6 +254,11 @@ if [ -d "dependencies/firefox-esr" ] && [ -f "dependencies/firefox-esr/firefox" exit 1 fi + # Создаем целевую директорию, если её нет + if [ ! -d "/opt/firefox-esr" ]; then + mkdir -p /opt/firefox-esr + fi + # Копируем с проверкой if ! safe_copy "dependencies/firefox-esr" "/opt/firefox-esr"; then error "Не удалось скопировать Firefox ESR"