From 2b9c84270f28283f7325b657f574fb7ee1125f33 Mon Sep 17 00:00:00 2001 From: Rizky Date: Wed, 26 Jun 2024 15:03:13 +0700 Subject: [PATCH] fix env --- bun.lockb | Bin 115798 -> 117833 bytes package.json | 7 ++++--- pkgs/api/_deploy.ts | 19 +++++++++---------- pkgs/index.ts | 5 +++-- pkgs/prod.ts | 3 ++- pkgs/utils/parse-env.ts | 4 ++-- pkgs/utils/prisma.ts | 4 ++-- 7 files changed, 22 insertions(+), 20 deletions(-) diff --git a/bun.lockb b/bun.lockb index 9ae83715f6cd52a857ec47eb09ee3553e0c73a6f..95a973b8ff7c7298d02cc67f8fec3af03b1258af 100755 GIT binary patch delta 22716 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 delta 21300 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 diff --git a/package.json b/package.json index bf519bb..27a6143 100644 --- a/package.json +++ b/package.json @@ -16,12 +16,13 @@ "bun-types": "latest" }, "peerDependencies": { - "typescript": "^5.0.0" + "typescript": "^5.5.2" }, "dependencies": { "brotli-wasm": "^2.0.1", + "dotenv": "^16.4.5", "exit-hook": "^4.0.0", - "firebase-admin": "^12.0.0", - "prisma": "^5.8.1" + "firebase-admin": "^12.2.0", + "prisma": "^5.16.0" } } \ No newline at end of file diff --git a/pkgs/api/_deploy.ts b/pkgs/api/_deploy.ts index ea791c0..a5a8bb5 100644 --- a/pkgs/api/_deploy.ts +++ b/pkgs/api/_deploy.ts @@ -5,7 +5,7 @@ import { apiContext } from "service-srv"; import { deploy } from "utils/deploy"; import { dir } from "utils/dir"; import { g } from "utils/global"; -import { parse } from "utils/parse-env"; +import { genEnv, parseEnv } from "utils/parse-env"; import { restartServer } from "utils/restart"; export const _ = { @@ -68,12 +68,11 @@ export const _ = { case "db-update": if (action.url) { g.dburl = action.url; - await Bun.write( - dir("app/db/.env"), - `\ -DATABASE_URL="${action.url}" -` - ); + const env = genEnv({ + ...parseEnv(await Bun.file(dir(".env")).text()), + DATABASE_URL: action.url, + }); + await Bun.write(dir(".env"), env); } return "ok"; case "db-gen": @@ -88,9 +87,9 @@ DATABASE_URL="${action.url}" break; case "db-pull": { - const env = await readAsync(dir("app/db/.env")); + const env = await readAsync(dir(".env")); if (env) { - const ENV = parse(env); + const ENV = parseEnv(env); if (typeof ENV.DATABASE_URL === "string") { const type = ENV.DATABASE_URL.split("://").shift(); if (type) { @@ -194,7 +193,7 @@ export const downloadFile = async ( _url.hostname = "127.0.0.1"; } g.log.info(`Downloading ${url} to ${filePath}`); - const res = await fetch(_url); + const res = await fetch(_url as any); if (res.body) { const file = Bun.file(filePath); diff --git a/pkgs/index.ts b/pkgs/index.ts index 9e95ac3..5f0817d 100644 --- a/pkgs/index.ts +++ b/pkgs/index.ts @@ -11,6 +11,7 @@ import { prepareAPITypes } from "./server/prep-api-ts"; import { config } from "./utils/config"; import { g } from "./utils/global"; import { createLogger } from "./utils/logger"; +import { genEnv, parseEnv } from "utils/parse-env"; g.mode = process.argv.includes("dev") ? "dev" : "prod"; g.datadir = g.mode === "prod" ? "../data" : ".data"; @@ -29,7 +30,8 @@ if (!(await existsAsync(dir("app/srv")))) { if (!process.env.PORT) { g.port = 3000; - await Bun.write(".env", `PORT=${g.port}`); + const env = genEnv({ ...parseEnv(".env"), PORT: g.port }); + await Bun.write(".env", env); } else { g.port = parseInt(process.env.PORT); } @@ -46,7 +48,6 @@ await config.init(); g.log.info(g.mode === "dev" ? "DEVELOPMENT" : "PRODUCTION"); - await deploy.init(); if (g.mode === "dev") { await startDevWatcher(); diff --git a/pkgs/prod.ts b/pkgs/prod.ts index 56839ea..62bc1cd 100644 --- a/pkgs/prod.ts +++ b/pkgs/prod.ts @@ -4,6 +4,7 @@ import exitHook from "exit-hook"; import { existsAsync } from "fs-jetpack"; import { dir } from "utils/dir"; import { checkPort, randomBetween } from "utils/ensure"; +import "dotenv/config"; let port = 0; @@ -35,7 +36,7 @@ const main = { console.log("Process Manager running at port:", port); -if (await existsAsync(dir("app/db/.env"))) { +if (process.env.DATABASE_URL) { if (!(await existsAsync(dir("node_modules/.prisma")))) { try { await $({ cwd: dir(`app/db`) })`bun install`; diff --git a/pkgs/utils/parse-env.ts b/pkgs/utils/parse-env.ts index a03ed2f..7f74341 100644 --- a/pkgs/utils/parse-env.ts +++ b/pkgs/utils/parse-env.ts @@ -20,7 +20,7 @@ function removeQuotes(str: string) { } /** Parse an envfile string. */ -export function parse(src: string): Data { +export function parseEnv(src: string): Data { const result: Data = {}; const lines = splitInLines(src); for (const line of lines) { @@ -35,7 +35,7 @@ export function parse(src: string): Data { } /** Turn an object into an envfile string. */ -export function stringify(obj: Input): string { +export function genEnv(obj: Input): string { let result = ""; for (const [key, value] of Object.entries(obj)) { if (key) { diff --git a/pkgs/utils/prisma.ts b/pkgs/utils/prisma.ts index bcfc9ac..c39bd90 100644 --- a/pkgs/utils/prisma.ts +++ b/pkgs/utils/prisma.ts @@ -4,12 +4,12 @@ import { $ } from "execa"; import { g } from "./global"; export const preparePrisma = async () => { - if ((await existsAsync(dir("app/db/.env"))) && !g.db) { + if (process.env.DATABASE_URL && !g.db) { try { if (g.mode !== "dev") { await $({ cwd: dir(`app/db`) })`bun prisma generate`; } - + const { PrismaClient } = await import("../../app/db/db"); g.db = new PrismaClient(); } catch (e) {