-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
67 lines (57 loc) · 3.87 KB
/
Copy path.env.example
File metadata and controls
67 lines (57 loc) · 3.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# ─── App ──────────────────────────────────────────────────────────────────────
NEXT_PUBLIC_APP_URL="http://localhost:3000"
# ─── Base de datos (PostgreSQL) ───────────────────────────────────────────────
# Supabase: usa el pooler para DATABASE_URL y la conexión directa para DIRECT_URL.
DATABASE_URL="postgresql://postgres:[PASS]@[HOST]:6543/postgres?pgbouncer=true&connection_limit=1"
DIRECT_URL="postgresql://postgres:[PASS]@[HOST]:5432/postgres"
# ─── Auth (Better Auth) ───────────────────────────────────────────────────────
BETTER_AUTH_SECRET="" # openssl rand -base64 32
BETTER_AUTH_URL="http://localhost:3000"
GOOGLE_CLIENT_ID="" # opcional; si pones uno, pon también el secret
GOOGLE_CLIENT_SECRET=""
# ─── Panel interno (/app/admin) ───────────────────────────────────────────────
# Correos con acceso al panel de métricas y triage, separados por coma.
# Sólo para nombrar al PRIMER admin sin entrar a SQL; lo durable es
# `user.role = 'admin'` en la base. La autorización siempre es server-side.
ADMIN_EMAILS=""
# ─── Ejecución de código ──────────────────────────────────────────────────────
# Hay UN proveedor y DOS perfiles de ejecución. El perfil lo decide el curso
# del recurso (`cpp17-wandbox` o `csharp-mono-6.12`), nunca el cliente.
# Si un perfil no está configurado, ese lenguaje queda deshabilitado con un
# error de entorno — jamás se compila con el compilador del otro.
#
# wandbox (default) · piston · piston-selfhosted · judge0-rapidapi · judge0-selfhosted
CODE_EXECUTOR_PROVIDER="wandbox"
# wandbox — API pública, sin llave. Único proveedor que soporta los dos
# perfiles sin configuración extra.
WANDBOX_URL="" # default https://wandbox.org
# Perfil cpp17-wandbox
WANDBOX_CPP_COMPILER="" # default gcc-13.2.0
WANDBOX_CPP_OPTIONS="" # default "-std=c++17 -O0 -Wall"
# Alias históricos del perfil de C++ (siguen funcionando; los específicos ganan)
WANDBOX_COMPILER=""
WANDBOX_COMPILER_OPTIONS=""
# Perfil csharp-mono-6.12
WANDBOX_CSHARP_COMPILER="" # default mono-6.12.0.199
WANDBOX_CSHARP_OPTIONS="" # vacío: el subconjunto del curso no necesita flags
# Perfil sql-sqlite3-wandbox — SIN default. Verifica el compiler SQLite/SQLite3
# estable (no *-head) contra https://wandbox.org/api/list.json y ponlo aquí.
# Sin esta variable, el perfil SQL queda registrado pero NO disponible para
# ejecutar (mismo patrón que JUDGE0_CSHARP_LANGUAGE_ID / PISTON_CSHARP_VERSION).
WANDBOX_SQL_COMPILER=""
WANDBOX_SQL_OPTIONS="" # vacío: el subconjunto SQL del curso no necesita flags
# piston / piston-selfhosted
PISTON_URL="" # obligatorio con piston-selfhosted (ej http://127.0.0.1:2000)
PISTON_CPP_VERSION=""
# Sin esto, C# NO está disponible en Piston. El endpoint público responde 401;
# configúralo sólo en una instancia propia o con whitelist.
PISTON_CSHARP_VERSION=""
# judge0-rapidapi / judge0-selfhosted
JUDGE0_RAPIDAPI_KEY=""
JUDGE0_RAPIDAPI_HOST="judge0-ce.p.rapidapi.com"
JUDGE0_SELFHOSTED_URL="" # ej http://123.45.67.89:2358
JUDGE0_AUTH_TOKEN=""
JUDGE0_CPP_LANGUAGE_ID="" # numérico; sólo si tu instancia usa otro id
# Los ids de Judge0 son específicos de cada instancia: NO hay default para C#.
# Verifícalo contra /languages de TU instancia antes de ponerlo.
JUDGE0_CSHARP_LANGUAGE_ID=""