Build deployed blogs from site packages
Some checks are pending
Build / build (push) Waiting to run

This commit is contained in:
Neeldhara Misra 2026-06-25 03:58:11 +05:30
parent 8312dc6d8a
commit 21b857b457
3 changed files with 37 additions and 3 deletions

View file

@ -6,7 +6,7 @@ COPY package.json package-lock.json ./
RUN npm ci
COPY . .
RUN npm run build:legacy
RUN npm run build
FROM nginx:1.27-alpine AS runtime

View file

@ -12,8 +12,8 @@
"dev:poetry": "npm run dev --prefix sites/poetry",
"dev:reviews": "npm run dev --prefix sites/reviews",
"dev:art": "npm run dev --prefix sites/art",
"build": "npm run build:sites",
"build:sites": "for site in research vibes puzzles reflections poetry reviews art; do npm run build --prefix sites/$site; done",
"build": "node scripts/build-site-packages.mjs",
"build:sites": "node scripts/build-site-packages.mjs",
"build:legacy": "node scripts/build-all-sites.mjs",
"preview": "npm run preview --prefix sites/research",
"astro": "astro",

View file

@ -0,0 +1,34 @@
import { cpSync, mkdirSync, rmSync } from "node:fs";
import { join } from "node:path";
import { spawnSync } from "node:child_process";
const sites = [
"research",
"vibes",
"puzzles",
"reflections",
"poetry",
"reviews",
"art",
];
const rootDist = "dist";
rmSync(rootDist, { force: true, recursive: true });
mkdirSync(rootDist, { recursive: true });
for (const site of sites) {
console.log(`\nBuilding ${site} -> ${rootDist}/${site}`);
const result = spawnSync("npm", ["run", "build", "--prefix", `sites/${site}`], {
stdio: "inherit",
});
if (result.status !== 0) {
process.exit(result.status ?? 1);
}
cpSync(join("sites", site, "dist"), join(rootDist, site), {
recursive: true,
});
}