trigger rebuild

This commit is contained in:
GoHorse Deploy 2026-02-07 19:48:28 +00:00
parent 7b79bad985
commit e51a16f622
3 changed files with 20 additions and 48 deletions

View file

@ -1,46 +1,18 @@
import { NextResponse } from 'next/server'; import { NextResponse } from 'next/server';
export const runtime = 'edge'; export const runtime = 'nodejs';
/** export async function GET() {
* Runtime Configuration API const config = {
* apiUrl: process.env.API_URL || 'https://api.rede5.com.br/',
* This endpoint returns environment variables that are read at RUNTIME, backofficeUrl: process.env.BACKOFFICE_URL || 'https://b-local.gohorsejobs.com',
* not build time. This allows changing configuration without rebuilding. seederApiUrl: process.env.SEEDER_API_URL || 'http://localhost:3002',
* scraperApiUrl: process.env.SCRAPER_API_URL || 'http://localhost:3003',
* IMPORTANT: Use env vars WITHOUT the NEXT_PUBLIC_ prefix here! };
* - NEXT_PUBLIC_* = baked in at build time (bad for runtime config)
* - Regular env vars = read at runtime (good!) return NextResponse.json(config, {
* headers: {
* In your .env or container config, set: 'Cache-Control': 'public, max-age=300, s-maxage=300',
* API_URL=https://api.example.com },
* BACKOFFICE_URL=https://backoffice.example.com });
* (etc.) }
*
* The NEXT_PUBLIC_* versions are only used as fallbacks for local dev.
*/
export async function GET() {
// Priority: Runtime env vars > Build-time NEXT_PUBLIC_* > Defaults
const config = {
apiUrl: process.env.API_URL
|| process.env.NEXT_PUBLIC_API_URL
|| 'https://api.rede5.com.br/',
backofficeUrl: process.env.BACKOFFICE_URL
|| process.env.NEXT_PUBLIC_BACKOFFICE_URL
|| 'http://localhost:3001',
seederApiUrl: process.env.SEEDER_API_URL
|| process.env.NEXT_PUBLIC_SEEDER_API_URL
|| 'http://localhost:3002',
scraperApiUrl: process.env.SCRAPER_API_URL
|| process.env.NEXT_PUBLIC_SCRAPER_API_URL
|| 'http://localhost:3003',
};
return NextResponse.json(config, {
headers: {
// Cache for 5 minutes to avoid too many requests
'Cache-Control': 'public, max-age=300, s-maxage=300',
},
});
}

View file

@ -11,7 +11,7 @@ export interface RuntimeConfig {
const defaultConfig: RuntimeConfig = { const defaultConfig: RuntimeConfig = {
apiUrl: process.env.NEXT_PUBLIC_API_URL || 'https://api.rede5.com.br/', apiUrl: process.env.NEXT_PUBLIC_API_URL || 'https://api.rede5.com.br/',
backofficeUrl: process.env.NEXT_PUBLIC_BACKOFFICE_URL || 'http://localhost:3001', backofficeUrl: process.env.NEXT_PUBLIC_BACKOFFICE_URL || 'https://b-local.gohorsejobs.com',
seederApiUrl: process.env.NEXT_PUBLIC_SEEDER_API_URL || 'http://localhost:3002', seederApiUrl: process.env.NEXT_PUBLIC_SEEDER_API_URL || 'http://localhost:3002',
scraperApiUrl: process.env.NEXT_PUBLIC_SCRAPER_API_URL || 'http://localhost:3003', scraperApiUrl: process.env.NEXT_PUBLIC_SCRAPER_API_URL || 'http://localhost:3003',
}; };

View file

@ -25,7 +25,7 @@ export interface RuntimeConfig {
// Default values (fallback to build-time env or hardcoded defaults) // Default values (fallback to build-time env or hardcoded defaults)
const defaultConfig: RuntimeConfig = { const defaultConfig: RuntimeConfig = {
apiUrl: process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8521', apiUrl: process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8521',
backofficeUrl: process.env.NEXT_PUBLIC_BACKOFFICE_URL || 'http://localhost:3001', backofficeUrl: process.env.NEXT_PUBLIC_BACKOFFICE_URL || 'https://b-local.gohorsejobs.com',
seederApiUrl: process.env.NEXT_PUBLIC_SEEDER_API_URL || 'http://localhost:3002', seederApiUrl: process.env.NEXT_PUBLIC_SEEDER_API_URL || 'http://localhost:3002',
scraperApiUrl: process.env.NEXT_PUBLIC_SCRAPER_API_URL || 'http://localhost:3003', scraperApiUrl: process.env.NEXT_PUBLIC_SCRAPER_API_URL || 'http://localhost:3003',
}; };