24 lines
880 B
JavaScript
24 lines
880 B
JavaScript
import symlinkDir from 'symlink-dir';
|
|
import { existsSync } from 'fs';
|
|
import { mkdir, unlink, writeFile } from 'fs/promises';
|
|
|
|
export const setCurrent = async (site, ctx) => {
|
|
const managerPath = ctx?.managerPath || '../manager';
|
|
const frontendPath = ctx?.frontendPath || '../frontend';
|
|
if (!!site) {
|
|
await symlinkDir(`${managerPath}/sites/${site}`, `${frontendPath}/content`);
|
|
if (!existsSync(`${frontendPath}/dist`)) {
|
|
await mkdir(`${frontendPath}/dist`);
|
|
}
|
|
await symlinkDir(`${managerPath}/sites/${site}`, `${frontendPath}/dist/content`);
|
|
|
|
if (existsSync(`${managerPath}/sites/current.txt`)) {
|
|
await unlink(`${managerPath}/sites/current.txt`);
|
|
}
|
|
await writeFile(`${managerPath}/sites/current.txt`, site, { encoding: 'utf-8' });
|
|
|
|
console.log('done');
|
|
} else {
|
|
console.error('Parameter "site" was not provided!');
|
|
}
|
|
};
|