From ff042ce65ef4178e1eb82c208c3b9dd11418475b Mon Sep 17 00:00:00 2001 From: md-dev970 Date: Sun, 19 Apr 2026 23:10:47 +0100 Subject: [PATCH] chore: Add copy-build-assets script --- apps/api/scripts/copy-build-assets.mjs | 35 ++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 apps/api/scripts/copy-build-assets.mjs diff --git a/apps/api/scripts/copy-build-assets.mjs b/apps/api/scripts/copy-build-assets.mjs new file mode 100644 index 0000000..8eb2cdd --- /dev/null +++ b/apps/api/scripts/copy-build-assets.mjs @@ -0,0 +1,35 @@ +import fs from "node:fs/promises"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); +const projectRoot = path.resolve(__dirname, ".."); + +const assetCopies = [ + { + source: path.join(projectRoot, "src", "db", "migrations"), + target: path.join(projectRoot, "dist", "db", "migrations"), + }, +]; + +const copyDirectory = async (source, target) => { + await fs.mkdir(target, { recursive: true }); + const entries = await fs.readdir(source, { withFileTypes: true }); + + for (const entry of entries) { + const sourcePath = path.join(source, entry.name); + const targetPath = path.join(target, entry.name); + + if (entry.isDirectory()) { + await copyDirectory(sourcePath, targetPath); + continue; + } + + await fs.copyFile(sourcePath, targetPath); + } +}; + +for (const asset of assetCopies) { + await copyDirectory(asset.source, asset.target); +}