238742bda4
Reutiliza cliente HTTP ORCID, reduce consultas DB al sincronizar works y añade SYNC_* en settings y scheduler (cron mensual o intervalo). Actualiza backend/.env, frontend/.env y .env.example para despliegue.
51 lines
1.4 KiB
Bash
51 lines
1.4 KiB
Bash
ENVIRONMENT=production
|
|
DEBUG=false
|
|
|
|
ORCID_CLIENT_ID=APP-XXXX
|
|
ORCID_CLIENT_SECRET=<secreto-fuerte>
|
|
ORCID_REDIRECT_URI=https://app.tudominio.com/callback
|
|
ORCID_OAUTH_STATE_ENABLED=true
|
|
|
|
# ── Desarrollo local (sandbox / ngrok) sin tocar este fichero en Git ──
|
|
# Crea `backend/.env.local` (gitignored) con ORCID_ENVIRONMENT=sandbox,
|
|
# ORCID_REDIRECT_URI=https://<tu-ngrok>/orcid2sword/callback, CORS, etc.
|
|
# Docker Compose carga `.env.local` si existe (ver docker-compose.yml).
|
|
|
|
API_KEY_NAME=X-API-Key
|
|
API_KEY_VALUE=<random-largo-48+>
|
|
|
|
DATABASE_URL=postgresql://<user>:<pass>@db:5432/orcid_db
|
|
REDIS_URL=redis://redis:6379/0
|
|
|
|
BASE_URL=https://api.tudominio.com/api
|
|
|
|
CORS_ALLOWED_ORIGINS=https://app.tudominio.com
|
|
TRUSTED_HOSTS=api.tudominio.com
|
|
|
|
JWT_SECRET=<random-largo-64+>
|
|
JWT_ALGORITHM=HS256
|
|
JWT_EXPIRES_MINUTES=720
|
|
JWT_ISSUER=orcid-sword-backend
|
|
JWT_AUDIENCE=orcid-sword-frontend
|
|
|
|
DOCS_ENABLED=false
|
|
|
|
# Rate limits (ajústalos por entorno)
|
|
RATE_LIMIT_DEFAULT=60/minute
|
|
RATE_LIMIT_AUTH=10/minute
|
|
RATE_LIMIT_SEARCH_ANON=5/minute
|
|
RATE_LIMIT_SEARCH_AUTH=30/minute
|
|
RATE_LIMIT_EXPORT=20/minute
|
|
RATE_LIMIT_SYNC=5/minute
|
|
|
|
MAX_ORCID_BATCH=25
|
|
MAX_PUB_IDS_BATCH=500
|
|
MAX_REQUEST_BODY_BYTES=1048576
|
|
|
|
# Autosincronización (APScheduler): mensual por defecto; interval_minutes para pruebas
|
|
SYNC_SCHEDULER_ENABLED=true
|
|
SYNC_SCHEDULE_MODE=monthly_cron
|
|
SYNC_CRON_DAY=1
|
|
SYNC_CRON_HOUR=3
|
|
# SYNC_SCHEDULE_MODE=interval_minutes
|
|
# SYNC_INTERVAL_MINUTES=2 |