22 lines
828 B
JavaScript
Executable File
22 lines
828 B
JavaScript
Executable File
import fs from 'node:fs/promises';
|
|
import path from 'node:path';
|
|
|
|
const projectRoot = process.cwd();
|
|
const packageJsonPath = path.join(projectRoot, 'package.json');
|
|
const distDirectoryPath = path.join(projectRoot, 'dist');
|
|
const buildInfoPath = path.join(distDirectoryPath, 'build-info.json');
|
|
|
|
const packageJson = JSON.parse(await fs.readFile(packageJsonPath, 'utf8'));
|
|
const builtAt = new Date().toISOString();
|
|
|
|
const buildInfo = {
|
|
version: typeof packageJson.version === 'string' ? packageJson.version : '0.0.0',
|
|
buildId: `${typeof packageJson.version === 'string' ? packageJson.version : '0.0.0'}@${builtAt}`,
|
|
builtAt,
|
|
};
|
|
|
|
await fs.mkdir(distDirectoryPath, { recursive: true });
|
|
await fs.writeFile(buildInfoPath, JSON.stringify(buildInfo, null, 2));
|
|
|
|
console.log(`work-server build info written to ${buildInfoPath}`);
|