Pipeline registrazione/upload con storage S3, archivio web e app, proxy replay per il browser, OAuth YouTube sulla pagina club (Premium Full) e footer legale. Co-authored-by: Cursor <cursoragent@cursor.com>
50 lines
2.4 KiB
Plaintext
50 lines
2.4 KiB
Plaintext
POSTGRES_PASSWORD=matchlivetv_dev
|
|
SECRET_KEY_BASE=change_me_to_a_long_random_string_in_production
|
|
MEDIAMTX_WEBHOOK_SECRET=mediamtx_webhook_dev_secret
|
|
JWT_SECRET=matchlivetv_jwt_dev_secret_change_in_prod
|
|
YOUTUBE_CLIENT_ID=
|
|
YOUTUBE_CLIENT_SECRET=
|
|
YOUTUBE_REDIRECT_URI=http://localhost:3000/api/v1/youtube/callback
|
|
# Refresh token canale Match Live TV (Premium Light) — vedi docs/YOUTUBE_SETUP.md
|
|
YOUTUBE_PLATFORM_REFRESH_TOKEN=
|
|
YOUTUBE_MOCK_STREAM_KEY=mock-stream-key
|
|
|
|
PRIVACY_CONTROLLER_NAME=Emiliano Frascaro
|
|
PRIVACY_CONTROLLER_ADDRESS=Via Guido De Ruggiero, 89 - 20142 - Milano (MI)
|
|
PRIVACY_CONTACT_EMAIL=privacy@matchlive.it
|
|
MAILER_FROM=Match Live TV <noreply@matchlive.it>
|
|
PASSWORD_RESET_EXPIRY_HOURS=2
|
|
|
|
# Stripe (test: sk_test_... / price_... da Dashboard modalità Test)
|
|
STRIPE_SECRET_KEY=
|
|
STRIPE_WEBHOOK_SECRET=
|
|
# Un price per prodotto e intervallo (Dashboard → Prodotto → Prezzi)
|
|
STRIPE_PREMIUM_LIGHT_MONTHLY_PRICE_ID=
|
|
STRIPE_PREMIUM_LIGHT_YEARLY_PRICE_ID=
|
|
STRIPE_PREMIUM_FULL_MONTHLY_PRICE_ID=
|
|
STRIPE_PREMIUM_FULL_YEARLY_PRICE_ID=
|
|
# Legacy (equivale a YEARLY se le righe sopra sono vuote)
|
|
STRIPE_PREMIUM_LIGHT_PRICE_ID=
|
|
STRIPE_PREMIUM_FULL_PRICE_ID=
|
|
|
|
# --- Replay storage (dopo ogni diretta Premium) ---
|
|
# Dev locale con Docker: Garage parte con `docker compose up` (servizio garage).
|
|
# Bootstrap una tantum: bash infra/scripts/setup_garage_replays.sh → aggiorna .env con le chiavi.
|
|
# MODALITÀ A — solo filesystem: lascia REPLAY_STORAGE_ENDPOINT vuoto (volume /recordings/replays/).
|
|
# MODALITÀ B — Garage/S3: compila tutte le righe sotto (endpoint rete Docker: http://garage:3900).
|
|
REPLAY_STORAGE_ENDPOINT=http://garage:3900
|
|
REPLAY_STORAGE_BUCKET=matchlivetv-replays
|
|
REPLAY_STORAGE_REGION=garage
|
|
# Credenziali S3: NON le inventi a mano. Le genera Garage con lo script di bootstrap:
|
|
# cd infra && bash scripts/setup_garage_replays.sh
|
|
# Lo script crea la chiave "replay-uploader" e scrive Key ID + Secret in infra/.env (non in questo file).
|
|
# ACCESS_KEY_ID = "Key ID" mostrato da Garage (es. GK6619e25d53883a7bc3f75755)
|
|
# SECRET_ACCESS_KEY = "Secret key" mostrata UNA SOLA VOLTA alla creazione della chiave
|
|
REPLAY_STORAGE_ACCESS_KEY_ID=
|
|
REPLAY_STORAGE_SECRET_ACCESS_KEY=
|
|
# true = obbligatorio per Garage/MinIO (path-style). Non cambiare se usi Garage.
|
|
REPLAY_STORAGE_FORCE_PATH_STYLE=true
|
|
# Opzionale: durata link firmati per play/download (secondi)
|
|
# REPLAY_PRESIGNED_URL_TTL_SECONDS=7200
|
|
# REPLAY_DOWNLOAD_URL_TTL_SECONDS=900
|