Tabellone, badge e brand sono ricodificati nel flusso _air via OverlayRelay; sync punteggio HTTP, volume condiviso rails/sidekiq, qualità 720p migliorata e badge CONNECTING in ripresa da pausa. Co-authored-by: Cursor <cursoragent@cursor.com>
32 lines
1.1 KiB
Bash
Executable File
32 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Garage replay storage su server produzione (/opt/matchlivetv/infra)
|
|
set -euo pipefail
|
|
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
|
cd "$ROOT"
|
|
|
|
export COMPOSE_FILE="docker-compose.prod.yml"
|
|
export ENV_FILE="${ROOT}/.env"
|
|
export CREDS_FILE="${ROOT}/garage/prod-credentials.env"
|
|
|
|
bash "${ROOT}/scripts/ensure_garage_prod_config.sh"
|
|
|
|
echo "Avvio Garage..."
|
|
docker compose -f docker-compose.prod.yml --env-file .env up -d garage
|
|
|
|
avail_gb="$(df -BG / 2>/dev/null | awk 'NR==2 {print $4}' | tr -d 'G')"
|
|
reserve="${GARAGE_RESERVE_GB:-20}"
|
|
cap_gb=$((avail_gb - reserve))
|
|
[ "$cap_gb" -lt 10 ] && cap_gb=10
|
|
export GARAGE_NODE_CAPACITY="${GARAGE_NODE_CAPACITY:-${cap_gb}G}"
|
|
echo "Capacità nodo Garage: ${GARAGE_NODE_CAPACITY} (disco ~${avail_gb}G, riserva ${reserve}G)"
|
|
|
|
bash "${ROOT}/scripts/setup_garage_replays.sh"
|
|
|
|
echo "Riavvio Rails e Sidekiq..."
|
|
docker compose -f docker-compose.prod.yml --env-file .env up -d rails sidekiq
|
|
|
|
echo "Verifica storage:"
|
|
docker compose -f docker-compose.prod.yml --env-file .env exec -T rails bundle exec rails runner \
|
|
'puts({local: MatchLiveTv.replay_storage_local?, backend: Recordings::Storage.new.backend_name}.inspect)'
|