|
@@ -116,6 +116,62 @@ setup_env() {
|
|
|
generate_secret "JWT_REFRESH_SECRET"
|
|
generate_secret "JWT_REFRESH_SECRET"
|
|
|
generate_secret "S3_SECRET_KEY"
|
|
generate_secret "S3_SECRET_KEY"
|
|
|
|
|
|
|
|
|
|
+ # Интерактивный ввод YANDEX_MAPS_API_KEY если не задан
|
|
|
|
|
+ prompt_for_yandex_key() {
|
|
|
|
|
+ local current="${YANDEX_MAPS_API_KEY:-}"
|
|
|
|
|
+ if [ -z "$current" ] || [[ "$current" == *"CHANGE_ME"* ]] || [[ "$current" == *"ВАШ_КЛЮЧ"* ]]; then
|
|
|
|
|
+ echo
|
|
|
|
|
+ log_warn "YANDEX_MAPS_API_KEY не задан (нужен для работы карт на фронтенде)"
|
|
|
|
|
+ echo -n "Введите Яндекс.Карты API ключ (или Enter чтобы пропустить): "
|
|
|
|
|
+ read -r yandex_key
|
|
|
|
|
+ if [ -n "$yandex_key" ]; then
|
|
|
|
|
+ if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
|
|
|
+ sed -i '' "s/^YANDEX_MAPS_API_KEY=.*/YANDEX_MAPS_API_KEY=${yandex_key}/" "$ENV_FILE"
|
|
|
|
|
+ else
|
|
|
|
|
+ sed -i "s/^YANDEX_MAPS_API_KEY=.*/YANDEX_MAPS_API_KEY=${yandex_key}/" "$ENV_FILE"
|
|
|
|
|
+ fi
|
|
|
|
|
+ export YANDEX_MAPS_API_KEY="$yandex_key"
|
|
|
|
|
+ log_ok "YANDEX_MAPS_API_KEY сохранён"
|
|
|
|
|
+ else
|
|
|
|
|
+ log_warn "Ключ пропущен — карты не будут работать. Добавьте позже в $ENV_FILE"
|
|
|
|
|
+ fi
|
|
|
|
|
+ fi
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ prompt_for_yandex_key
|
|
|
|
|
+
|
|
|
|
|
+ # Интерактивный ввод CloudPayments (опционально)
|
|
|
|
|
+ prompt_for_cloudpayments() {
|
|
|
|
|
+ local public_id="${CLOUDPAYMENTS_PUBLIC_ID:-}"
|
|
|
|
|
+ local api_secret="${CLOUDPAYMENTS_API_SECRET:-}"
|
|
|
|
|
+ if [ -z "$public_id" ] || [ -z "$api_secret" ]; then
|
|
|
|
|
+ echo
|
|
|
|
|
+ log_info "CloudPayments (опционально, для платежей):"
|
|
|
|
|
+ echo -n "CLOUDPAYMENTS_PUBLIC_ID (Enter чтобы пропустить): "
|
|
|
|
|
+ read -r cp_public
|
|
|
|
|
+ if [ -n "$cp_public" ]; then
|
|
|
|
|
+ if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
|
|
|
+ sed -i '' "s/^CLOUDPAYMENTS_PUBLIC_ID=.*/CLOUDPAYMENTS_PUBLIC_ID=${cp_public}/" "$ENV_FILE"
|
|
|
|
|
+ else
|
|
|
|
|
+ sed -i "s/^CLOUDPAYMENTS_PUBLIC_ID=.*/CLOUDPAYMENTS_PUBLIC_ID=${cp_public}/" "$ENV_FILE"
|
|
|
|
|
+ fi
|
|
|
|
|
+ export CLOUDPAYMENTS_PUBLIC_ID="$cp_public"
|
|
|
|
|
+ fi
|
|
|
|
|
+ echo -n "CLOUDPAYMENTS_API_SECRET (Enter чтобы пропустить): "
|
|
|
|
|
+ read -r cp_secret
|
|
|
|
|
+ if [ -n "$cp_secret" ]; then
|
|
|
|
|
+ if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
|
|
|
+ sed -i '' "s/^CLOUDPAYMENTS_API_SECRET=.*/CLOUDPAYMENTS_API_SECRET=${cp_secret}/" "$ENV_FILE"
|
|
|
|
|
+ else
|
|
|
|
|
+ sed -i "s/^CLOUDPAYMENTS_API_SECRET=.*/CLOUDPAYMENTS_API_SECRET=${cp_secret}/" "$ENV_FILE"
|
|
|
|
|
+ fi
|
|
|
|
|
+ export CLOUDPAYMENTS_API_SECRET="$cp_secret"
|
|
|
|
|
+ fi
|
|
|
|
|
+ fi
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ prompt_for_cloudpayments
|
|
|
|
|
+
|
|
|
# Проверка обязательных переменных
|
|
# Проверка обязательных переменных
|
|
|
local required=("DB_PASSWORD" "REDIS_PASSWORD" "JWT_SECRET" "JWT_REFRESH_SECRET" "S3_SECRET_KEY" "YANDEX_MAPS_API_KEY")
|
|
local required=("DB_PASSWORD" "REDIS_PASSWORD" "JWT_SECRET" "JWT_REFRESH_SECRET" "S3_SECRET_KEY" "YANDEX_MAPS_API_KEY")
|
|
|
local missing=()
|
|
local missing=()
|