fix(scripts): ladda .env i translate/publish-skripten (annars saknades DATABASE_URL)
De fristandiga skripten laste bara process.env och kunde inte hitta DATABASE_URL (till skillnad fran worker/seed som laddar .env). Lade till samma dotenv-sokning (.env / ../.env / ../../.env) sa de funkar med utan att man exporterar variabler manuellt. Verifierat: bada kor nu utan export och laser .env.
This commit is contained in:
@@ -10,9 +10,22 @@
|
||||
*
|
||||
* Kräver DATABASE_URL i miljön.
|
||||
*/
|
||||
import { config as loadDotenv } from "dotenv";
|
||||
import { existsSync } from "node:fs";
|
||||
import path from "node:path";
|
||||
import { and, eq, sql } from "drizzle-orm";
|
||||
import { createDatabase, schema } from "@app/database";
|
||||
|
||||
// Ladda .env (samma sökning som worker/seed) så DATABASE_URL finns även när
|
||||
// skriptet körs fristående via `pnpm exec tsx`.
|
||||
for (const candidate of [".env", "../.env", "../../.env"]) {
|
||||
const p = path.resolve(process.cwd(), candidate);
|
||||
if (existsSync(p)) {
|
||||
loadDotenv({ path: p });
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
async function main() {
|
||||
if (!process.env.DATABASE_URL) throw new Error("Sätt DATABASE_URL.");
|
||||
const arg = (process.argv[2] ?? "all").toLowerCase();
|
||||
|
||||
@@ -14,12 +14,25 @@
|
||||
*
|
||||
* Kräver DATABASE_URL och REDIS_URL i miljön (samma som API/worker använder).
|
||||
*/
|
||||
import { config as loadDotenv } from "dotenv";
|
||||
import { existsSync } from "node:fs";
|
||||
import path from "node:path";
|
||||
import IORedis from "ioredis";
|
||||
import { Queue } from "bullmq";
|
||||
import { eq } from "drizzle-orm";
|
||||
import { createDatabase, schema } from "@app/database";
|
||||
import { JOB_QUEUE_NAME } from "@app/shared-types";
|
||||
|
||||
// Ladda .env (samma sökning som worker/seed) så DATABASE_URL/REDIS_URL finns
|
||||
// även när skriptet körs fristående via `pnpm exec tsx`.
|
||||
for (const candidate of [".env", "../.env", "../../.env"]) {
|
||||
const p = path.resolve(process.cwd(), candidate);
|
||||
if (existsSync(p)) {
|
||||
loadDotenv({ path: p });
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
const LANGS = ["en", "da", "de", "es", "fi", "fr", "it", "nb", "nl", "pl", "pt"];
|
||||
|
||||
async function main() {
|
||||
|
||||
Reference in New Issue
Block a user