Files
blog-nextjs/scripts/sync-assets.mjs
2025-11-19 17:31:18 +08:00

28 lines
833 B
JavaScript

import { cp, mkdir, rm, stat } from 'node:fs/promises';
import path from 'node:path';
async function syncAssets() {
const root = process.cwd();
const sourceDir = path.join(root, 'content', 'assets');
const targetDir = path.join(root, 'public', 'assets');
await rm(targetDir, { recursive: true, force: true });
await mkdir(targetDir, { recursive: true });
try {
await stat(sourceDir);
} catch {
// Nothing to copy yet; leave the empty directory in place.
console.info('sync-assets: no content/assets directory found yet.');
return;
}
await cp(sourceDir, targetDir, { recursive: true, force: true });
console.info('sync-assets: copied content/assets → public/assets.');
}
syncAssets().catch((error) => {
console.error('sync-assets: failed to mirror assets.', error);
process.exit(1);
});