Изменение скрипта установки
This commit is contained in:
parent
4fadd70588
commit
1bc3a63d93
72
f7recording.sh
Normal file
72
f7recording.sh
Normal file
|
|
@ -0,0 +1,72 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# Установка F7_recording. Запускается на сервере записи.
|
||||||
|
# Использование: ./f7recording.sh /path/to/f7cloud-install.env
|
||||||
|
|
||||||
|
set -e
|
||||||
|
ROLE="f7recording"
|
||||||
|
ENV_FILE="${1:-/tmp/f7cloud-install.env}"
|
||||||
|
ERROR_LOG="/tmp/install-error-${ROLE}.log"
|
||||||
|
|
||||||
|
log_error() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] ERROR: $*" >> "$ERROR_LOG"; echo "ERROR: $*" >&2; }
|
||||||
|
log_warn() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] WARN: $*" >> "$ERROR_LOG"; echo "WARN: $*" >&2; }
|
||||||
|
|
||||||
|
if [ ! -f "$ENV_FILE" ]; then
|
||||||
|
log_error "Файл конфигурации не найден: $ENV_FILE"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# shellcheck source=/dev/null
|
||||||
|
set -a && source "$ENV_FILE" && set +a
|
||||||
|
|
||||||
|
> "$ERROR_LOG"
|
||||||
|
echo "=== Лог установки F7_recording ===" >> "$ERROR_LOG"
|
||||||
|
echo "Начало: $(date '+%Y-%m-%d %H:%M:%S')" >> "$ERROR_LOG"
|
||||||
|
|
||||||
|
if ! command -v git >/dev/null 2>&1; then
|
||||||
|
echo "Установка git..."
|
||||||
|
apt-get update -qq && apt-get install -y git || { log_error "Не удалось установить git"; exit 1; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -rf /tmp/F7_recording
|
||||||
|
echo "Клонирование репозитория F7_recording..."
|
||||||
|
if ! (cd /tmp && git clone https://git.f7cloud.ru/root/F7_recording.git); then
|
||||||
|
log_error "Не удалось клонировать репозиторий F7_recording"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
if ! [ -d /tmp/F7_recording ]; then
|
||||||
|
log_error "Директория /tmp/F7_recording не существует после клонирования"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
R=/tmp/F7_recording
|
||||||
|
HPB_URL="https://${HPB_DOMAIN}"
|
||||||
|
HPB_SECRET="$HPB_INTERNAL_SECRET"
|
||||||
|
F7_URL="https://${DOMAIN}"
|
||||||
|
F7_SECRET="$HPB_BACKEND_SECRET"
|
||||||
|
|
||||||
|
echo "Установка зависимостей..."
|
||||||
|
apt-get update -qq
|
||||||
|
DEBIAN_FRONTEND=noninteractive apt-get install -y python3 python3-pip python3-venv xvfb ffmpeg 2>/dev/null || true
|
||||||
|
apt-get install -y firefox-esr 2>/dev/null || apt-get install -y firefox 2>/dev/null || true
|
||||||
|
|
||||||
|
mkdir -p /etc/f7cloud-talk-recording
|
||||||
|
cat > /etc/f7cloud-talk-recording/server.conf << INNER
|
||||||
|
[backend]
|
||||||
|
secret = $HPB_SECRET
|
||||||
|
|
||||||
|
[my-backend]
|
||||||
|
url = $HPB_URL
|
||||||
|
secret = $F7_SECRET
|
||||||
|
INNER
|
||||||
|
|
||||||
|
(cd "$R" && python3 -m venv /opt/f7cloud-recording-venv 2>/dev/null) || true
|
||||||
|
(cd "$R" && /opt/f7cloud-recording-venv/bin/pip install -e . 2>/dev/null) || (cd "$R" && pip3 install -e . 2>/dev/null) || true
|
||||||
|
|
||||||
|
find "$R" -maxdepth 2 -name '*.service' -exec cp {} /etc/systemd/system/ \;
|
||||||
|
systemctl daemon-reload 2>/dev/null || true
|
||||||
|
systemctl enable f7cloud-talk-recording 2>/dev/null || true
|
||||||
|
systemctl start f7cloud-talk-recording 2>/dev/null || true
|
||||||
|
|
||||||
|
echo "Конец: $(date '+%Y-%m-%d %H:%M:%S')" >> "$ERROR_LOG"
|
||||||
|
echo "F7_recording установлен. Лог ошибок: $ERROR_LOG"
|
||||||
|
exit 0
|
||||||
Loading…
Reference in New Issue
Block a user