- перенесены каноны и VitePress-конфиги в projects/<slug> - добавлены корневой и проектные build.ts для сборки артефактов - добавлены shared-библиотеки сборки в projects/_shared/lib - обновлены CI, Dockerfile, package.json, gitignore и README - удалена сборка frontend-агента
21 lines
791 B
TypeScript
21 lines
791 B
TypeScript
import path from 'node:path';
|
|
import { fileURLToPath } from 'node:url';
|
|
|
|
import { prepareDocs } from '../_shared/lib/prepare-docs';
|
|
import { run } from '../_shared/lib/run';
|
|
import { writeZipFromDirectory } from '../_shared/lib/zip';
|
|
import config from './project.config';
|
|
|
|
const projectDir = path.dirname(fileURLToPath(import.meta.url));
|
|
const rootDir = path.resolve(projectDir, '../..');
|
|
const docsDir = path.join(projectDir, config.docsDir);
|
|
|
|
await prepareDocs(projectDir, config);
|
|
run('npx', ['vitepress', 'build', docsDir], rootDir);
|
|
|
|
if (config.archive) {
|
|
const zipPath = path.join(rootDir, 'public', config.slug, `${config.slug}.zip`);
|
|
writeZipFromDirectory(path.join(docsDir, 'content'), zipPath, config.slug);
|
|
console.log(`Собран ${path.relative(rootDir, zipPath)}`);
|
|
}
|