diff --git a/Dockerfile b/Dockerfile index 829dbf8..202e335 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,6 +7,7 @@ RUN bun install --frozen-lockfile COPY . . ENV NODE_ENV=prod +ENV DOCKER=1 RUN bun bundle FROM oven/bun diff --git a/scripts/build.ts b/scripts/build.ts index 949a248..98175b6 100644 --- a/scripts/build.ts +++ b/scripts/build.ts @@ -21,6 +21,11 @@ const files = [ eventFiles.map(f => `src/events/${f}`) ].flat() +const banner = [ + "process.env.BUILD = 'true'", + process.env.DOCKER === "1" ? "process.env.DOCKER = '1'" : null +].filter(v => typeof v === "string").join("\n") + await Bun.build({ entrypoints: ["src/index.ts", ...files], outdir: "dist", @@ -32,5 +37,5 @@ await Bun.build({ asset: "asset/[name]-[hash].[ext]" }, root: "src", - banner: "process.env.BUILD = 'true'" + banner }) diff --git a/src/enviroment.d.ts b/src/enviroment.d.ts index b138f7e..610fba6 100644 --- a/src/enviroment.d.ts +++ b/src/enviroment.d.ts @@ -3,6 +3,8 @@ declare global { interface ProcessEnv { NODE_ENV?: "dev" | "prod" TYPESCRIPT?: "true" + BUILD?: "true" + DOCKER?: "1" } } } diff --git a/src/typings/General.ts b/src/typings/General.ts index 5889d74..049e76d 100644 --- a/src/typings/General.ts +++ b/src/typings/General.ts @@ -1,4 +1,4 @@ export type LoadEventsOptions = { ft: "ts" | "js" - dir: "src" | "dist" + dir: "src" | "dist" | "" } diff --git a/src/utils/Illegitimate.ts b/src/utils/Illegitimate.ts index 2975114..20b875b 100644 --- a/src/utils/Illegitimate.ts +++ b/src/utils/Illegitimate.ts @@ -8,7 +8,7 @@ const client = new Client() const redis = new RedisClient(env.prod.REDISURI) const ft = process.env.BUILD !== "true" ? "ts" : "js" -const dir = process.env.BUILD !== "true" ? "src" : "dist" +const dir = process.env.DOCKER !== "1" ? process.env.BUILD !== "true" ? "src" : "dist" : "" class Illegitimate { async start() {