because I got bored of customising my CV for every job
at main 27 lines 952 B view raw
1const requireEnv = (key: string): string => { 2 const value = process.env[key]; 3 if (!value) { 4 throw new Error(`Missing required env var: ${key}`); 5 } 6 return value; 7}; 8 9export type WorkerConfig = typeof config; 10 11export const config = { 12 get databaseUrl() { 13 return requireEnv("DATABASE_URL"); 14 }, 15 queueSchema: process.env["QUEUE_SCHEMA"] ?? "queue", 16 queueName: process.env["QUEUE_NAME"] ?? "default", 17 pollIntervalMs: Number(process.env["POLL_INTERVAL_MS"] ?? "1000"), 18 pdfOutputDir: process.env["PDF_OUTPUT_DIR"] ?? "./pdf-output", 19 pdfTimeoutMs: Number(process.env["PDF_TIMEOUT_MS"] ?? "30000"), 20 heartbeatFilePath: 21 process.env["HEARTBEAT_FILE_PATH"] ?? "/tmp/worker-heartbeat", 22 heartbeatDbIntervalMs: Number(process.env["HEARTBEAT_DB_INTERVAL_MS"] ?? "0"), 23 chromiumArgs: (process.env["CHROMIUM_ARGS"] ?? "--no-sandbox,--disable-dev-shm-usage") 24 .split(",") 25 .map((s) => s.trim()) 26 .filter(Boolean), 27} as const;